trs

package
v0.31.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 1, 2025 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArrayNode added in v0.22.2

type ArrayNode = nodes.Struct[ArrayNodeData]

type ArrayNodeData added in v0.22.2

type ArrayNodeData struct {
	Position nodes.Output[[]vector3.Float64]
	Scale    nodes.Output[[]vector3.Float64]
	Rotation nodes.Output[[]quaternion.Quaternion]
}

func (ArrayNodeData) Out added in v0.23.0

func (tnd ArrayNodeData) Out() nodes.StructOutput[[]TRS]

type FilterPositionNode added in v0.27.0

type FilterPositionNode struct {
	Input nodes.Output[[]TRS]
	MinX  nodes.Output[float64]
	MinY  nodes.Output[float64]
	MinZ  nodes.Output[float64]
	MaxX  nodes.Output[float64]
	MaxY  nodes.Output[float64]
	MaxZ  nodes.Output[float64]
}

func (FilterPositionNode) Filter added in v0.27.0

func (tnd FilterPositionNode) Filter() ([]TRS, []TRS)

func (FilterPositionNode) Kept added in v0.27.0

func (tnd FilterPositionNode) Kept() nodes.StructOutput[[]TRS]

func (FilterPositionNode) Removed added in v0.27.0

func (tnd FilterPositionNode) Removed() nodes.StructOutput[[]TRS]

type FilterScaleNode added in v0.27.0

type FilterScaleNode struct {
	Input nodes.Output[[]TRS]
	MinX  nodes.Output[float64]
	MinY  nodes.Output[float64]
	MinZ  nodes.Output[float64]
	MaxX  nodes.Output[float64]
	MaxY  nodes.Output[float64]
	MaxZ  nodes.Output[float64]
}

func (FilterScaleNode) Filter added in v0.27.0

func (tnd FilterScaleNode) Filter() ([]TRS, []TRS)

func (FilterScaleNode) Kept added in v0.27.0

func (tnd FilterScaleNode) Kept() nodes.StructOutput[[]TRS]

func (FilterScaleNode) Removed added in v0.27.0

func (tnd FilterScaleNode) Removed() nodes.StructOutput[[]TRS]

type MultiplyArrayNode added in v0.23.0

type MultiplyArrayNode = nodes.Struct[MultiplyArrayNodeData]

type MultiplyArrayNodeData added in v0.23.0

type MultiplyArrayNodeData struct {
	A nodes.Output[[]TRS]
	B nodes.Output[[]TRS]
}

func (MultiplyArrayNodeData) Out added in v0.23.0

type MultiplyNode added in v0.23.0

type MultiplyNode = nodes.Struct[MultiplyNodeData]

type MultiplyNodeData added in v0.23.0

type MultiplyNodeData struct {
	A nodes.Output[TRS]
	B nodes.Output[TRS]
}

func (MultiplyNodeData) Out added in v0.23.0

type MultiplyToArrayNode added in v0.27.0

type MultiplyToArrayNode = nodes.Struct[MultiplyToArrayNodeData]

type MultiplyToArrayNodeData added in v0.27.0

type MultiplyToArrayNodeData struct {
	Left  nodes.Output[TRS]
	Array nodes.Output[[]TRS]
	Right nodes.Output[TRS]
}

func (MultiplyToArrayNodeData) Description added in v0.27.0

func (n MultiplyToArrayNodeData) Description() string

func (MultiplyToArrayNodeData) Out added in v0.27.0

type NewNode added in v0.22.2

type NewNode = nodes.Struct[NewNodeData]

type NewNodeData added in v0.22.2

type NewNodeData struct {
	Position nodes.Output[vector3.Float64]
	Rotation nodes.Output[quaternion.Quaternion]
	Scale    nodes.Output[vector3.Float64]
}

func (NewNodeData) Out added in v0.23.0

func (tnd NewNodeData) Out() nodes.StructOutput[TRS]

type RandomizeArrayNode added in v0.26.0

type RandomizeArrayNode = nodes.Struct[RandomizeArrayNodeData]

type RandomizeArrayNodeData added in v0.26.0

type RandomizeArrayNodeData struct {
	TranslationMinimum nodes.Output[vector3.Float64]
	TranslationMaximum nodes.Output[vector3.Float64]
	ScaleMinimum       nodes.Output[vector3.Float64]
	ScaleMaximum       nodes.Output[vector3.Float64]
	RotationMinimum    nodes.Output[vector3.Float64]
	RotationMaximum    nodes.Output[vector3.Float64]
	Array              nodes.Output[[]TRS]
}

func (RandomizeArrayNodeData) Out added in v0.26.0

type RotateDirectionNode added in v0.23.0

type RotateDirectionNode = nodes.Struct[RotateDirectionNodeData]

type RotateDirectionNodeData added in v0.23.0

type RotateDirectionNodeData struct {
	TRS       nodes.Output[TRS]
	Direction nodes.Output[vector3.Float64]
}

func (RotateDirectionNodeData) Out added in v0.23.0

type RotateDirectionsNode added in v0.23.0

type RotateDirectionsNode = nodes.Struct[RotateDirectionNodeData]

type RotateDirectionsNodeData added in v0.23.0

type RotateDirectionsNodeData struct {
	TRS       nodes.Output[[]TRS]
	Direction nodes.Output[[]vector3.Float64]
}

func (RotateDirectionsNodeData) Out added in v0.23.0

type SelectArrayNode added in v0.23.0

type SelectArrayNode = nodes.Struct[SelectArrayNodeData]

type SelectArrayNodeData added in v0.23.0

type SelectArrayNodeData struct {
	TRS nodes.Output[[]TRS]
}

func (SelectArrayNodeData) Position added in v0.23.0

func (SelectArrayNodeData) Rotation added in v0.23.0

func (SelectArrayNodeData) Scale added in v0.23.0

type SelectNode added in v0.23.0

type SelectNode = nodes.Struct[SelectNodeData]

type SelectNodeData added in v0.23.0

type SelectNodeData struct {
	TRS nodes.Output[TRS]
}

func (SelectNodeData) Position added in v0.23.0

func (SelectNodeData) Rotation added in v0.23.0

func (SelectNodeData) Scale added in v0.23.0

type TRS

type TRS struct {
	// contains filtered or unexported fields
}

func FromMatrix added in v0.22.2

func FromMatrix(m mat.Matrix4x4) TRS

func Identity added in v0.22.2

func Identity() TRS

func New

func New(position vector3.Float64, rotation quaternion.Quaternion, scale vector3.Float64) TRS

Create a new TRS

func Position

func Position(position vector3.Float64) TRS

Create a new TRS with a specified position, with a scale of (1, 1, 1) and a identity rotation

func Rotation

func Rotation(rotation quaternion.Quaternion) TRS

Create a new TRS with a specified rotation, a position of (0, 0, 0) and a scale of (1, 1, 1)

func Scale

func Scale(scale vector3.Float64) TRS

Create a new TRS with a specified scale, with a position of (0, 0, 0) and a identity rotation

func (TRS) LookAt added in v0.27.0

func (trs TRS) LookAt(positionToLookAt vector3.Float64) TRS

Look at returns a new TRS with it's rotation modified to be looking at the position provided

func (TRS) Matrix added in v0.22.2

func (trs TRS) Matrix() mat.Matrix4x4

func (TRS) Multiply added in v0.22.1

func (trs TRS) Multiply(other TRS) TRS

func (TRS) Position

func (trs TRS) Position() vector3.Float64

The position of the TRS

func (TRS) RotateDirection added in v0.23.0

func (trs TRS) RotateDirection(in vector3.Float64) vector3.Float64

func (TRS) Rotation

func (trs TRS) Rotation() quaternion.Quaternion

The rotation of the TRS

func (TRS) Scale

func (trs TRS) Scale() vector3.Float64

The scale of the TRS

func (TRS) SetRotation added in v0.25.0

func (trs TRS) SetRotation(in quaternion.Quaternion) TRS

func (TRS) SetScale added in v0.25.0

func (trs TRS) SetScale(in vector3.Float64) TRS

func (TRS) SetTranslation added in v0.25.0

func (trs TRS) SetTranslation(in vector3.Float64) TRS

func (TRS) Transform

func (trs TRS) Transform(in vector3.Float64) vector3.Float64

Transform a point by the TRS

func (TRS) TransformArray

func (trs TRS) TransformArray(in []vector3.Float64) []vector3.Float64

Transform an array of points by the TRS

func (TRS) TransformInPlace

func (trs TRS) TransformInPlace(in []vector3.Float64)

Transform an array of points by the TRS and store those changes in the array passed in

func (TRS) Translate

func (trs TRS) Translate(in vector3.Float64) TRS

Create a new TRS with the position translated by "in"

func (TRS) WithinDelta added in v0.26.0

func (trs TRS) WithinDelta(in TRS, delta float64) error

Checks if each of the components of this TRS is within delta of TRS passed in. If they aren't, an error is returned describing which component is out of range

type TransformArrayNode added in v0.26.0

type TransformArrayNode = nodes.Struct[TransformArrayNodeData]

type TransformArrayNodeData added in v0.26.0

type TransformArrayNodeData struct {
	Transform nodes.Output[TRS]
	Array     nodes.Output[[]TRS]
}

func (TransformArrayNodeData) Out added in v0.26.0

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL