|
3D Part > 3D Container 1 "Rotation" (Entity Type "Extended Object") |
www.CAD6.com |
|
The 3D container "Rotation" is used to store 3D information in a 3D Part.
Data Block SequenceGeneral: Data Block 1101( 1, Resolution ) Data Block 1000( Matrix ) Data Block 110( Comment ) Specific: Data Block 001( Start ) Data Block 002( End ) Data Block 1001( Rotation ) Data Block 1001( Tilt ) Data Block 1120( SourceType, Mode, Steps, Rotations ) Data Block 1121( Angle, OffsetV, OffsetH )
These data blocks are followed by a sequence of data blocks for one outline identical to those stored in an object of type "Curve", see Object 12 "Curve", object of type "Surface", see Object 13 "Surface", or object of type "Marking", see Object 41 "Marking" (based on SourceType). This is the data that will be rotated aound the rotation axis.
ParametersResolution [__int32] Relative resolution of this element. Possible values are:
Matrix [MKI_3D_MATRIX] 3×4 elements of a 3D matrix. Comment [MKI_COMMENTSHORT] Comment on the 3D container. Start [MKI_POINT] 2D start point of the rotation axis. End [MKI_POINT] 2D end point of the rotation axis. Rotation [MKI_3D_VECTOR] Rotation around the X-, Y- and Z-axis in [rad]. The rotation around the Y-axis is inverted compared to a standard right-hand system. Tilt [MKI_3D_VECTOR] Tilting of the outline towards the X-, Y- and Z-axes in [rad]. The tilting towards the Y-axis is inverted compared to a standard right-hand system. SourceType [__int32] Object type of the source data. Possible values are: MKI_OBJ_CURVE The data to be rotated is a curve. MKI_OBJ_SURFACE The data to be rotated is a surface. MKI_OBJ_MARK The data to be rotated is a marking (resulting in an "edge"). Mode [__int32] A bit-wise OR combination of options. It can be any combination of the following values: 0x00000000 No special mode. 0x00000001 Close the bottom of the extruded object. 0x00000002 Close the top of the extruded object. 0x00000004 Display depth information. Steps [__int32] Resolution in steps per rotation (0 = default). Rotations [__int32] Number of complete rotations. Angle [double] Angle in [rad] in addition to the complete rotations. OffsetV [double] Vertical offset per rotation in [mm] (perpendicular to rotation plane). OffsetH [double] Horizontal offset per rotation in [mm] (perpendicular to rotation axis).
Interface Command SequenceMKI_ObjectOpen, Type = MKI_OBJ_CONTAINER MKI_ExtAddInt32, Type = 1101, ElemCount = 2 MKI_ExtAddDouble, Type = 1000, ElemCount = 12 MKI_ExtAddText, Type = 110, Size = 256, StaticLength = true MKI_ExtAddPoint, Type = MKI_DB_POINT_START MKI_ExtAddPoint, Type = MKI_DB_POINT_END MKI_ExtAddDouble, Type = 1001, ElemCount = 3 MKI_ExtAddDouble, Type = 1001, ElemCount = 3 MKI_ExtAddInt32, Type = 1120, ElemCount = 4 MKI_ExtAddDouble, Type = 1121, ElemCount = 3
Use code like the following to parse the data blocks of this entity in memory:
MKI_BLOCK_ENUM b1101( f_pObj ), b1000( f_pObj ), b110( f_pObj ), b001( f_pObj ), b002( f_pObj ), b1001( f_pObj ), b1002( f_pObj ), b1120( f_pObj ), b1121( f_pObj ); b1000.SetNext( b1101 ); b110.SetNext( b1000 ); b001.SetNext( b110 ); b002.SetNext( b001 ); b1001.SetNext( b002 ); b1002.SetNext( b1001 ); b1120.SetNext( b1002 ); b1121.SetNext( b1120 );
__int32 nContainerType = b1101.Int32(0); __int32 nResolution = b1101.Int32(1);
...
|
CAD6interface 2026.1 - Copyright 2026 Malz++Kassner® GmbH