artifact

package
v0.20.0 Latest Latest
Warning

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

Go to latest
Published: Jan 12, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewBinaryNode

func NewBinaryNode(bytesNode nodes.NodeOutput[[]byte]) nodes.NodeOutput[Artifact]

func NewIONode

func NewIONode(readerNode nodes.NodeOutput[io.Reader]) nodes.NodeOutput[Artifact]

func NewImageNode

func NewImageNode(imageNode nodes.NodeOutput[image.Image]) nodes.NodeOutput[Artifact]

func NewSplatNode

func NewSplatNode(meshNode nodes.NodeOutput[modeling.Mesh]) nodes.NodeOutput[Artifact]

func NewSplatPlyNode added in v0.19.0

func NewSplatPlyNode(meshNode nodes.NodeOutput[modeling.Mesh]) nodes.NodeOutput[Artifact]

func NewTextNode

func NewTextNode(textNode nodes.NodeOutput[string]) nodes.NodeOutput[Artifact]

func Nodes added in v0.20.0

func Nodes() *refutil.TypeFactory

Types

type Artifact added in v0.20.0

type Artifact interface {
	Write(io.Writer) error
	Mime() string
}

type Binary

type Binary struct {
	Data []byte
}

func (Binary) Mime

func (Binary) Mime() string

func (Binary) Write

func (ba Binary) Write(w io.Writer) error

type BinaryNode

type BinaryNode = nodes.Struct[Artifact, BinaryNodeData]

type BinaryNodeData

type BinaryNodeData struct {
	In nodes.NodeOutput[[]byte]
}

func (BinaryNodeData) Process

func (pn BinaryNodeData) Process() (Artifact, error)

type Gltf

type Gltf struct {
	Scene gltf.PolyformScene
}

func (Gltf) Mime

func (Gltf) Mime() string

func (Gltf) Write

func (ga Gltf) Write(w io.Writer) error

type GltfArtifact added in v0.20.0

type GltfArtifact = nodes.Struct[Artifact, GltfArtifactData]

type GltfArtifactData added in v0.20.0

type GltfArtifactData struct {
	Models []nodes.NodeOutput[gltf.PolyformModel]
}

func (GltfArtifactData) Process added in v0.20.0

func (gad GltfArtifactData) Process() (Artifact, error)

type GltfMaterialAnisotropyExtensionNode added in v0.20.0

type GltfMaterialAnisotropyExtensionNode = nodes.Struct[gltf.PolyformAnisotropy, GltfMaterialAnisotropyExtensionNodeData]

type GltfMaterialAnisotropyExtensionNodeData added in v0.20.0

type GltfMaterialAnisotropyExtensionNodeData struct {
	AnisotropyStrength nodes.NodeOutput[float64]
	AnisotropyRotation nodes.NodeOutput[float64]
}

func (GltfMaterialAnisotropyExtensionNodeData) Process added in v0.20.0

type GltfMaterialClearcoatExtensionNode added in v0.20.0

type GltfMaterialClearcoatExtensionNode = nodes.Struct[gltf.PolyformClearcoat, GltfMaterialClearcoatExtensionNodeData]

type GltfMaterialClearcoatExtensionNodeData added in v0.20.0

type GltfMaterialClearcoatExtensionNodeData struct {
	ClearcoatFactor          nodes.NodeOutput[float64]
	ClearcoatRoughnessFactor nodes.NodeOutput[float64]
}

func (GltfMaterialClearcoatExtensionNodeData) Process added in v0.20.0

type GltfMaterialNode added in v0.20.0

type GltfMaterialNodeData added in v0.20.0

type GltfMaterialNodeData struct {
	Color                    nodes.NodeOutput[coloring.WebColor]
	ColorTexture             nodes.NodeOutput[string]
	MetallicFactor           nodes.NodeOutput[float64]
	RoughnessFactor          nodes.NodeOutput[float64]
	MetallicRoughnessTexture nodes.NodeOutput[string]
	EmissiveFactor           nodes.NodeOutput[coloring.WebColor]

	// Extensions
	IndexOfRefraction nodes.NodeOutput[float64]
	Transmission      nodes.NodeOutput[gltf.PolyformTransmission]
	Volume            nodes.NodeOutput[gltf.PolyformVolume]
	Anisotropy        nodes.NodeOutput[gltf.PolyformAnisotropy]
	Clearcoat         nodes.NodeOutput[gltf.PolyformClearcoat]
	EmissiveStrength  nodes.NodeOutput[float64]
}

func (GltfMaterialNodeData) Process added in v0.20.0

func (gmnd GltfMaterialNodeData) Process() (gltf.PolyformMaterial, error)

type GltfMaterialTransmissionExtensionNode added in v0.20.0

type GltfMaterialTransmissionExtensionNode = nodes.Struct[gltf.PolyformTransmission, GltfMaterialTransmissionExtensionNodeData]

type GltfMaterialTransmissionExtensionNodeData added in v0.20.0

type GltfMaterialTransmissionExtensionNodeData struct {
	TransmissionFactor nodes.NodeOutput[float64]
}

func (GltfMaterialTransmissionExtensionNodeData) Process added in v0.20.0

type GltfMaterialVolumeExtensionNode added in v0.20.0

type GltfMaterialVolumeExtensionNode = nodes.Struct[gltf.PolyformVolume, GltfMaterialVolumeExtensionNodeData]

type GltfMaterialVolumeExtensionNodeData added in v0.20.0

type GltfMaterialVolumeExtensionNodeData struct {
	ThicknessFactor     nodes.NodeOutput[float64]
	AttenuationDistance nodes.NodeOutput[float64]
	AttenuationColor    nodes.NodeOutput[coloring.WebColor]
}

func (GltfMaterialVolumeExtensionNodeData) Process added in v0.20.0

type GltfModel added in v0.20.0

type GltfModelNodeData added in v0.20.0

type GltfModelNodeData struct {
	Mesh     nodes.NodeOutput[modeling.Mesh]
	Material nodes.NodeOutput[gltf.PolyformMaterial]
}

func (GltfModelNodeData) Process added in v0.20.0

func (gmnd GltfModelNodeData) Process() (gltf.PolyformModel, error)

type IO

type IO struct {
	Reader io.Reader
}

func (IO) Mime

func (IO) Mime() string

func (IO) Write

func (ga IO) Write(w io.Writer) error

type IONode

type IONode = nodes.Struct[Artifact, IONodeData]

type IONodeData

type IONodeData struct {
	In nodes.NodeOutput[io.Reader]
}

func (IONodeData) Process

func (pn IONodeData) Process() (Artifact, error)

type Image

type Image struct {
	Image image.Image
}

func (Image) Mime

func (im Image) Mime() string

func (Image) Write

func (ia Image) Write(w io.Writer) error

type ImageNode

type ImageNode = nodes.Struct[Artifact, ImageNodeData]

type ImageNodeData

type ImageNodeData struct {
	In nodes.NodeOutput[image.Image]
}

func (ImageNodeData) Process

func (pn ImageNodeData) Process() (Artifact, error)

type Splat

type Splat struct {
	Mesh modeling.Mesh
}

func (Splat) Mime

func (Splat) Mime() string

func (Splat) Write

func (sa Splat) Write(w io.Writer) error

type SplatNode

type SplatNode = nodes.Struct[Artifact, SplatNodeData]

type SplatNodeData

type SplatNodeData struct {
	In nodes.NodeOutput[modeling.Mesh]
}

func (SplatNodeData) Process

func (pn SplatNodeData) Process() (Artifact, error)

type SplatPly added in v0.19.0

type SplatPly struct {
	Mesh modeling.Mesh
}

func (SplatPly) Mime added in v0.19.0

func (SplatPly) Mime() string

func (SplatPly) Write added in v0.19.0

func (sa SplatPly) Write(w io.Writer) error

type SplatPlyNode added in v0.19.0

type SplatPlyNode = nodes.Struct[Artifact, SplatPlyNodeData]

type SplatPlyNodeData added in v0.19.0

type SplatPlyNodeData struct {
	In nodes.NodeOutput[modeling.Mesh]
}

func (SplatPlyNodeData) Process added in v0.19.0

func (pn SplatPlyNodeData) Process() (Artifact, error)

type Text

type Text struct {
	Data string
}

func (Text) Mime

func (Text) Mime() string

func (Text) Write

func (ta Text) Write(w io.Writer) error

type TextNode

type TextNode = nodes.Struct[Artifact, TextNodeData]

type TextNodeData

type TextNodeData struct {
	In nodes.NodeOutput[string]
}

func (TextNodeData) Process

func (tand TextNodeData) Process() (Artifact, error)

Jump to

Keyboard shortcuts

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