Export Mesh in Local Coordinate System

Member Posts: 3
First Comment Photogenic
**

Hello

In mechanical scripting, is there a simple method to get mesh coordinates in a local coordinate system (cartesian).
Do I have to program the transformation myself or can I use some already programmed methods ?
I found something with 4x4 matrix, but I'm too old for that ...

Thanks

Welcome!

It looks like you're new here. Sign in or register to get started.

Comments

  • Member Posts: 3
    First Comment Photogenic
    **

    Oups sorry

    It was quite easy to do with csys.matrix...
    Just surprised there is no method to do this natively

    bye

  • Member, Employee Posts: 385
    25 Answers 100 Comments Second Anniversary 25 Likes
    ✭✭✭✭

    FYI you can use some DPF operators to rotate data to a given CS (matrix).

    import mech_dpf
    import Ans.DataProcessing as dpf

    def RotationMatrixFieldFromCS(CsName):
    """

    1. """
    2. CS = ExtAPI.DataModel.GetObjectsByName(CsName)[0]
    3. CsMatrix = list(CS.Matrix)
    4. TransformMatrix = [CsMatrix[i] for i in [0,3,6,1,4,7,2,5,8]]
    5. rot_mat_f = dpf.FieldsFactory.CreateScalarField(1)
    6. rot_mat_f.Data = TransformMatrix
    7. return rot_mat_f

    def RotationOperatorFromCs(CsName, FieldsContainer):
    """
    """
    rot_mat_f=RotationMatrixFieldFromCS(CsName)
    RotateOp = dpf.operators.geo.rotate_fc() # operator instantiation
    RotateOp.inputs.fields_container.Connect(FieldsContainer)
    RotateOp.inputs.coordinate_system.Connect(rot_mat_f)
    return RotateOp

    def AlignFieldToCs(CsName, FieldsContainer):
    """
    Take a field and align it to a local CS in Mechanical by its Name
    """
    RotateOp=RotationOperatorFromCs(CsName, FieldsContainer)
    RotField=RotateOp.outputs.fields_container.GetData()
    return RotField

    def ObjByName(Name):
    return ExtAPI.DataModel.GetObjectsByName(Name)[0]

  • Member Posts: 3
    First Comment Photogenic
    **

    Thanks Mike for this method.
    I'm not familiar with DPF, but I'll try to learn how to use it.

Welcome!

It looks like you're new here. Sign in or register to get started.