remove parts.go because it was over complicating things lol
This commit is contained in:
parent
891d2df875
commit
5e6d93a9b3
|
@ -1,59 +0,0 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"github.com/deadsy/sdfx/sdf"
|
||||
v2 "github.com/deadsy/sdfx/vec/v2"
|
||||
v3 "github.com/deadsy/sdfx/vec/v3"
|
||||
)
|
||||
|
||||
type Part struct {
|
||||
SDF2 sdf.SDF2
|
||||
SDF3 sdf.SDF3
|
||||
}
|
||||
|
||||
type Parts map[string]Part
|
||||
|
||||
func (p Parts) add(p2 Parts) {
|
||||
for k, v := range p2 {
|
||||
p[k] = v
|
||||
}
|
||||
}
|
||||
|
||||
func add2DPlane(name string, plane sdf.SDF2, height float64) map[string]Part {
|
||||
p := make(map[string]Part)
|
||||
p[name] = Part{SDF2: plane, SDF3: sdf.Extrude3D(plane, height)}
|
||||
return p
|
||||
}
|
||||
|
||||
func add3DModel(name string, model sdf.SDF3) map[string]Part {
|
||||
p := make(map[string]Part)
|
||||
p[name] = Part{SDF2: sdf.Slice2D(model, v3.Vec{X: 0, Y: 0, Z: 0}, v3.Vec{X: 0, Y: 0, Z: 0}), SDF3: model}
|
||||
return p
|
||||
}
|
||||
|
||||
func split2DPlane(name string, plane sdf.SDF2, height float64) map[string]Part {
|
||||
planes := make(map[string]Part)
|
||||
|
||||
rPlane := sdf.Cut2D(plane, v2.Vec{X: 0, Y: 0}, v2.Vec{X: 0, Y: 1})
|
||||
planes[name+" "+"right"] = Part{SDF2: rPlane, SDF3: sdf.Extrude3D(rPlane, height)}
|
||||
|
||||
lPlane := sdf.Transform2D(sdf.Cut2D(sdf.Transform2D(plane, sdf.MirrorY()), v2.Vec{X: 0, Y: 0}, v2.Vec{X: 0, Y: 1}), sdf.MirrorY())
|
||||
planes[name+" "+"left"] = Part{SDF2: lPlane, SDF3: sdf.Extrude3D(lPlane, height)}
|
||||
|
||||
return planes
|
||||
}
|
||||
|
||||
func split3DModel(name string, model sdf.SDF3) map[string]Part {
|
||||
models := make(map[string]Part)
|
||||
plane := sdf.Slice2D(model, v3.Vec{X: 0, Y: 0, Z: 0}, v3.Vec{X: 0, Y: 0, Z: 0})
|
||||
|
||||
rPlane := sdf.Cut2D(plane, v2.Vec{X: 0, Y: 0}, v2.Vec{X: 0, Y: 1})
|
||||
rModel := sdf.Cut3D(model, v3.Vec{X: 0, Y: 0, Z: 0}, v3.Vec{X: 0, Y: 1, Z: 0})
|
||||
models[name+" "+"right"] = Part{SDF2: rPlane, SDF3: rModel}
|
||||
|
||||
lPlane := sdf.Transform2D(sdf.Cut2D(sdf.Transform2D(plane, sdf.MirrorY()), v2.Vec{X: 0, Y: 0}, v2.Vec{X: 0, Y: 1}), sdf.MirrorY())
|
||||
lModel := sdf.Transform3D(sdf.Cut3D(sdf.Transform3D(model, sdf.MirrorXY()), v3.Vec{X: 0, Y: 0, Z: 0}, v3.Vec{X: 0, Y: 1, Z: 0}), sdf.MirrorXY())
|
||||
models[name+" "+"left"] = Part{SDF2: lPlane, SDF3: lModel}
|
||||
|
||||
return models
|
||||
}
|
Loading…
Reference in New Issue