Documentation
¶
Index ¶
- func Box(position, bounds vector3.Float64) sample.Vec3ToFloat
- func Intersect(fields ...sample.Vec3ToFloat) sample.Vec3ToFloat
- func Line(start, end vector3.Float64, radius float64) sample.Vec3ToFloat
- func MirrorX(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MirrorXY(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MirrorXYZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MirrorXZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MirrorY(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MirrorYZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MirrorZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
- func MultipointLine(points []vector3.Float64, radius float64) sample.Vec3ToFloat
- func Plane(position, normal vector3.Float64, height float64) sample.Vec3ToFloat
- func RoundedBox(position, bounds vector3.Float64, roundness float64) sample.Vec3ToFloat
- func RoundedCone(a, b vector3.Float64, r1, r2 float64) sample.Vec3ToFloat
- func RoundedCylinder(pos vector3.Float64, radius, topHeight, bodyHeight float64) sample.Vec3ToFloat
- func Sphere(position vector3.Float64, radius float64) sample.Vec3ToFloat
- func Subtract(base, subtraction sample.Vec3ToFloat) sample.Vec3ToFloat
- func Transform(field sample.Vec3ToFloat, transformation trs.TRS) sample.Vec3ToFloat
- func Translate(field sample.Vec3ToFloat, translation vector3.Float64) sample.Vec3ToFloat
- func Union(fields ...sample.Vec3ToFloat) sample.Vec3ToFloat
- func VarryingThicknessLine(linePoints []LinePoint) sample.Vec3ToFloat
- type CubeNode
- type IntersectionNode
- type LineNode
- type LinePoint
- type LinesNode
- type MirrorNode
- func (n MirrorNode) X(out *nodes.StructOutput[sample.Vec3ToFloat])
- func (n MirrorNode) XY(out *nodes.StructOutput[sample.Vec3ToFloat])
- func (n MirrorNode) XYZ(out *nodes.StructOutput[sample.Vec3ToFloat])
- func (n MirrorNode) XZ(out *nodes.StructOutput[sample.Vec3ToFloat])
- func (n MirrorNode) Y(out *nodes.StructOutput[sample.Vec3ToFloat])
- func (n MirrorNode) YZ(out *nodes.StructOutput[sample.Vec3ToFloat])
- func (n MirrorNode) Z(out *nodes.StructOutput[sample.Vec3ToFloat])
- type PlaneNode
- type RoundCubeNode
- type RoundedConeNode
- type RoundedCylinderNode
- type SphereNode
- type SubtractionNode
- type TransformNode
- type TranslateNode
- type UnionNode
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Intersect ¶
func Intersect(fields ...sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorX ¶ added in v0.35.0
func MirrorX(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorXY ¶ added in v0.35.0
func MirrorXY(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorXYZ ¶ added in v0.35.0
func MirrorXYZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorXZ ¶ added in v0.35.0
func MirrorXZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorY ¶ added in v0.35.0
func MirrorY(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorYZ ¶ added in v0.35.0
func MirrorYZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MirrorZ ¶ added in v0.35.0
func MirrorZ(f sample.Vec3ToFloat) sample.Vec3ToFloat
func MultipointLine ¶ added in v0.35.0
func MultipointLine(points []vector3.Float64, radius float64) sample.Vec3ToFloat
func Plane ¶ added in v0.9.0
func Plane(position, normal vector3.Float64, height float64) sample.Vec3ToFloat
func RoundedBox ¶ added in v0.9.0
func RoundedBox(position, bounds vector3.Float64, roundness float64) sample.Vec3ToFloat
func RoundedCone ¶ added in v0.9.0
func RoundedCone(a, b vector3.Float64, r1, r2 float64) sample.Vec3ToFloat
https://iquilezles.org/articles/distfunctions/ https://www.shadertoy.com/view/tdXGWr Round Cone - exact
func RoundedCylinder ¶ added in v0.9.0
func RoundedCylinder(pos vector3.Float64, radius, topHeight, bodyHeight float64) sample.Vec3ToFloat
func Subtract ¶ added in v0.9.0
func Subtract(base, subtraction sample.Vec3ToFloat) sample.Vec3ToFloat
func Transform ¶ added in v0.35.0
func Transform(field sample.Vec3ToFloat, transformation trs.TRS) sample.Vec3ToFloat
func Translate ¶
func Translate(field sample.Vec3ToFloat, translation vector3.Float64) sample.Vec3ToFloat
func Union ¶
func Union(fields ...sample.Vec3ToFloat) sample.Vec3ToFloat
func VarryingThicknessLine ¶ added in v0.9.0
func VarryingThicknessLine(linePoints []LinePoint) sample.Vec3ToFloat
Types ¶
type CubeNode ¶ added in v0.35.0
func (CubeNode) Field ¶ added in v0.35.0
func (cn CubeNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type IntersectionNode ¶ added in v0.35.0
type IntersectionNode struct {
Fields []nodes.Output[sample.Vec3ToFloat]
}
func (IntersectionNode) Intersection ¶ added in v0.35.0
func (n IntersectionNode) Intersection(out *nodes.StructOutput[sample.Vec3ToFloat])
type LineNode ¶ added in v0.35.0
type LineNode struct {
Start nodes.Output[vector3.Float64]
End nodes.Output[vector3.Float64]
Radius nodes.Output[float64]
}
func (LineNode) Field ¶ added in v0.35.0
func (cn LineNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type LinesNode ¶ added in v0.35.0
func (LinesNode) Field ¶ added in v0.35.0
func (cn LinesNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type MirrorNode ¶ added in v0.35.0
type MirrorNode struct {
Field nodes.Output[sample.Vec3ToFloat]
}
func (MirrorNode) X ¶ added in v0.35.0
func (n MirrorNode) X(out *nodes.StructOutput[sample.Vec3ToFloat])
func (MirrorNode) XY ¶ added in v0.35.0
func (n MirrorNode) XY(out *nodes.StructOutput[sample.Vec3ToFloat])
func (MirrorNode) XYZ ¶ added in v0.35.0
func (n MirrorNode) XYZ(out *nodes.StructOutput[sample.Vec3ToFloat])
func (MirrorNode) XZ ¶ added in v0.35.0
func (n MirrorNode) XZ(out *nodes.StructOutput[sample.Vec3ToFloat])
func (MirrorNode) Y ¶ added in v0.35.0
func (n MirrorNode) Y(out *nodes.StructOutput[sample.Vec3ToFloat])
func (MirrorNode) YZ ¶ added in v0.35.0
func (n MirrorNode) YZ(out *nodes.StructOutput[sample.Vec3ToFloat])
func (MirrorNode) Z ¶ added in v0.35.0
func (n MirrorNode) Z(out *nodes.StructOutput[sample.Vec3ToFloat])
type PlaneNode ¶ added in v0.35.0
type PlaneNode struct {
Position nodes.Output[vector3.Float64]
Normal nodes.Output[vector3.Float64]
Height nodes.Output[float64]
}
func (PlaneNode) Field ¶ added in v0.35.0
func (cn PlaneNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type RoundCubeNode ¶ added in v0.35.0
type RoundCubeNode struct {
Position nodes.Output[vector3.Float64]
Size nodes.Output[vector3.Float64]
Roundness nodes.Output[float64]
}
func (RoundCubeNode) Field ¶ added in v0.35.0
func (cn RoundCubeNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type RoundedConeNode ¶ added in v0.35.0
type RoundedConeNode struct {
A nodes.Output[vector3.Float64]
B nodes.Output[vector3.Float64]
Radius1 nodes.Output[float64]
Radius2 nodes.Output[float64]
}
func (RoundedConeNode) Field ¶ added in v0.35.0
func (cn RoundedConeNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type RoundedCylinderNode ¶ added in v0.35.0
type RoundedCylinderNode struct {
Position nodes.Output[vector3.Float64]
Radius nodes.Output[float64]
TopHeight nodes.Output[float64]
BodyHeight nodes.Output[float64]
}
func (RoundedCylinderNode) Field ¶ added in v0.35.0
func (cn RoundedCylinderNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type SphereNode ¶ added in v0.35.0
func (SphereNode) Field ¶ added in v0.35.0
func (cn SphereNode) Field(out *nodes.StructOutput[sample.Vec3ToFloat])
type SubtractionNode ¶ added in v0.35.0
type SubtractionNode struct {
A nodes.Output[sample.Vec3ToFloat]
B nodes.Output[sample.Vec3ToFloat]
}
func (SubtractionNode) Subtract ¶ added in v0.35.0
func (n SubtractionNode) Subtract(out *nodes.StructOutput[sample.Vec3ToFloat])
type TransformNode ¶ added in v0.35.0
type TransformNode struct {
Transform nodes.Output[trs.TRS]
Field nodes.Output[sample.Vec3ToFloat]
}
func (TransformNode) Result ¶ added in v0.35.0
func (cn TransformNode) Result(out *nodes.StructOutput[sample.Vec3ToFloat])
type TranslateNode ¶ added in v0.35.0
type TranslateNode struct {
Position nodes.Output[vector3.Float64]
Field nodes.Output[sample.Vec3ToFloat]
}
func (TranslateNode) Result ¶ added in v0.35.0
func (cn TranslateNode) Result(out *nodes.StructOutput[sample.Vec3ToFloat])
type UnionNode ¶ added in v0.35.0
type UnionNode struct {
Fields []nodes.Output[sample.Vec3ToFloat]
}
func (UnionNode) Union ¶ added in v0.35.0
func (n UnionNode) Union(out *nodes.StructOutput[sample.Vec3ToFloat])
Click to show internal directories.
Click to hide internal directories.