Class TMatrixTransformNode_1

DescriptionHierarchyFieldsMethodsProperties

Unit

Declaration

type TMatrixTransformNode_1 = class(TAbstractTransformationNode_1)

Description

VRML 1.0 MatrixTransform node.

Hierarchy

Overview

Methods

Public procedure CreateNode; override;
Public class function ClassNodeTypeName: string; override;
Public procedure Transformation(out Matrix, InvertedMatrix: TMatrix4Single); override;
Public function TransformScale: Single; override;
Public class function ForVRMLVersion(const Version: TX3DVersion): boolean; override;

Properties

Public property FdMatrix: TSFMatrix read FFdMatrix;

Description

Methods

Public procedure CreateNode; override;
 
Public class function ClassNodeTypeName: string; override;
 
Public procedure Transformation(out Matrix, InvertedMatrix: TMatrix4Single); override;

Returns simply FdMatrix as transformation. Inverse is also calculated (if matrix is invertible at all, otherwise identity is returned).

Public function TransformScale: Single; override;

Return average scale for this FdMatrix.

Note that this doesn't correctly extract scale from FdMatrix, as that is too difficcult. Insted it does simple extraction, which will work for identity, translation and scaling matrices (but e.g. will fail miserably (generate nonsense results) when looking at some rotation matrices).

Ultimately, this is the reason why VRML 2.0 removed this node from specification: extracting some features from arbitrary given 4x4 matrix is very difficult.

Public class function ForVRMLVersion(const Version: TX3DVersion): boolean; override;
 

Properties

Public property FdMatrix: TSFMatrix read FFdMatrix;
 

Generated by PasDoc 0.13.0 on 2014-08-30 12:10:52