Struct kgltf::Node [−][src]
A node in the node hierarchy. When the node contains skin
, all mesh.primitives
must contain JOINTS_0
and WEIGHTS_0
attributes. A node can have either a matrix
or any combination of translation
/rotation
/scale
(TRS) properties. TRS properties are converted to matrices and postmultiplied in the T * R * S
order to compose the transformation matrix; first the scale is applied to the vertices, then the rotation, and then the translation. If none are provided, the transform is the identity. When a node is targeted for animation (referenced by an animation.channel.target), only TRS properties may be present; matrix
will not be present.
Fields
camera: Option<usize>
The index of the camera referenced by this node.
children: Vec<usize>
The indices of this node’s children.
skin: Option<usize>
The index of the skin referenced by this node.
matrix: Option<[f32; 16]>
A floating-point 4x4 transformation matrix stored in column-major order.
mesh: Option<usize>
The index of the mesh in this node.
rotation: Option<[f32; 4]>
The node’s unit quaternion rotation in the order (x, y, z, w), where w is the scalar.
scale: Option<[f32; 3]>
The node’s non-uniform scale, given as the scaling factors along the x, y, and z axes.
translation: Option<[f32; 3]>
The node’s translation along the x, y, and z axes.
weights: Vec<f32>
The weights of the instantiated Morph Target. Number of elements must match number of Morph Targets of used mesh.
name: Option<String>
The user-defined name of this object.
extensions: Option<Extension>
Dictionary object with extension-specific objects.
Trait Implementations
impl Clone for Node
[src]
impl Debug for Node
[src]
impl<'a> Deserialize<'a> for Node
[src]
fn deserialize<D: Deserializer<'a>>(deserializer: &mut D) -> Option<Self>
[src]
impl Serialize for Node
[src]
fn serialize<S: Serializer>(&self, serializer: &mut S)
[src]
Auto Trait Implementations
impl RefUnwindSafe for Node
impl Send for Node
impl Sync for Node
impl Unpin for Node
impl UnwindSafe for Node
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<'a, T> FromJson<'a> for T where
T: Deserialize<'a>,
[src]
T: Deserialize<'a>,
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToJson for T where
T: Serialize,
[src]
T: Serialize,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,