Synopsis

PDX_MSGT sgdx_CrTrOpToGDXMatrix(long option, MDA_PTR crtrop_ptr, GDX_MATRIX gdx_matrix, PDX_BOOL *is_ident_flg)

Purpose

Convert a STEP CARTESIAN_TRANSFORMATION_OPERATOR entity to a GDX Matrix.

Description

This function will evaluate the db_ptr to determine if it is a 2D or 3D and handle accordingly. The vectors P will be calculated and placed into the matrix where they are in column order with P1 being the first column, P2 being the second, P3, the third and the location point being the fourth column. The vectors are unitized.

If the resulting matrix (rotation portion only!) is identity, is_ident_flg is set to PDX_TRUE (and gdx_matrix will contain the identity matrix).

Input

option

Options (not used)

crtrop_ptr

The database pointer of the CARTESIAN_TRANSFORMATION_OPERATOR (2d or 3d)

Output

gdx_matrix

The GDX matrix (x,y,z translation always 0.0, 0.0, 0.0)

is_ident_flg

PDX_TRUE

The GDX Matrix is identity

PDX_FALSE

The GDX Matrix is not identity

Return

      SGDX_NOERR
      Low level error return
      .fi