DynamoVisualProgramming.DynamoServices by Autodesk

<PackageReference Include="DynamoVisualProgramming.DynamoServices" Version="3.3.0-beta5140" />

 ITransformable

public interface ITransformable
An interface that defines items which have a transform property, which is a 4x4 matrix.
bool RequiresCustomTransform { get; set; }

A flag indicating whether the render package has had its Transform property set explicitly.

double[] Transform { get; }

A 4x4 matrix that is used to transform all geometry in the render packaage.

void SetTransform(double m11, double m12, double m13, double m14, double m21, double m22, double m23, double m24, double m31, double m32, double m33, double m34, double m41, double m42, double m43, double m44)

Set the transform using a series of doubles. The resulting transform is applied to all geometry in the renderPackage. Following conventional matrix notation, m11 is the value of the first row and first column, and m12 is the value of the first row and second column. NOTE: This method should set the matrix exactly as described by the caller.

void SetTransform(double[] matrix)

Set the transform as a double array, this transform is applied to all geometry in the renderPackage. This matrix should be laid out as follows in row vector order: [Xx,Xy,Xz, 0, Yx, Yy, Yz, 0, Zx, Zy, Zz, 0, offsetX, offsetY, offsetZ, W] NOTE: This method should transform the matrix from row vector order to whatever form is needed by the implementation. When converting from ProtoGeometry CoordinateSystem form to input matrix, set the first row to the X axis of the CS, the second row to the Y axis of the CS, the third row to the Z axis of the CS, and the last row to the CS origin, where W = 1.