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 Sequence

General:

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.

 

Parameters

Resolution

[__int32] Relative resolution of this element. Possible values are:

0Default × 0.35
1Default × 0.5
2Default × 0.71
3Default
4Default × 1.41
5Default × 2
6Default × 2.82

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 Sequence

MKI_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

MKI_ExtDataAddOpenObject

 

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