API Reference

Detailed and full API reference helps you master Tekla development

This is the most recent version of Tekla Open API.
For older versions, please visit Tekla Warehouse.

TransformationPlane Class

The TransformationPlane class describes a transformation from global model coordinates to local and back to global.
Inheritance Hierarchy
SystemObject
  Tekla.Structures.ModelTransformationPlane

Namespace:  Tekla.Structures.Model
Assembly:  Tekla.Structures.Model (in Tekla.Structures.Model.dll) Version: 2023.0.1
Syntax
[SerializableAttribute]
public sealed class TransformationPlane

The TransformationPlane type exposes the following members.

Constructors
  NameDescription
Public methodTransformationPlane
Creates a new identity transformation using the global coordinate system.
Public methodTransformationPlane(CoordinateSystem)
Creates a new transformation plane defined by the given coordinate system.
Public methodTransformationPlane(Point, Vector, Vector)
Creates a new transformation plane defined by the given origin and two vectors.
Top
Properties
  NameDescription
Public propertyTransformationMatrixToGlobal
Gives a transformation matrix for converting local points in the transformation plane to global coordinates.
Public propertyTransformationMatrixToLocal
Gives a transformation matrix for converting points in the global plane to local coordinates in the transformation plane.
Top
Methods
  NameDescription
Public methodToString
Returns a string representation of the matrices that transform to local and global coordinates.
(Overrides ObjectToString.)
Top
Examples
The following example shows how to use transformation planes for transforming points:
using Tekla.Structures.Model;
using Tekla.Structures.Geometry3d;

public class Example
{
       public void Example1()
       {
           Model myModel = new Model();
           WorkPlaneHandler myWorkPlaneHandler = myModel.GetWorkPlaneHandler();
           Beam myBeam = new Beam();
           Point Point1 = new Point(1000, 1000, 1000);
           Point Point2 = new Point(2000, 3000, 1000);
           myBeam.Profile.ProfileString = "400X400";
           myBeam.Insert(); 
           myModel.CommitChanges(); 

           TransformationPlane currentPlane = myWorkPlaneHandler.GetCurrentTransformationPlane();
           TransformationPlane beamPlane = new TransformationPlane(myBeam.GetCoordinateSystem());
           Point lPoint1 = beamPlane.TransformationMatrixToLocal.Transform(currentPlane.TransformationMatrixToGlobal.Transform(Point1));
           Point lPoint2 = beamPlane.TransformationMatrixToLocal.Transform(currentPlane.TransformationMatrixToGlobal.Transform(Point2));
       }
}
See Also
Was this helpful?
The feedback you give here is not visible to other users. We use your comments to improve the content.