3D Part > 3D Container 0 "Extrusion" (Entity Type "Extended Object")

www.CAD6.com

The 3D container "Extrusion" is used to store 3D information in a 3D Part.

 

Data Block Sequence

General:

Data Block 1101( 0, Resolution )

Data Block 1000( Matrix )

Data Block 110( Comment )

Specific:

Data Block 000( Point )

Data Block 1001( Rotation )

Data Block 1001( Extrusion )

Data Block 1110( SourceType, Mode )

 

These data blocks are followed by a sequence of data blocks identical to those stored in an object of type "Curve", see Object 12 "Curve", or 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 extruded along the extrusion vector.

 

Every outline may have one optional additional data block:

Data Block 1111( MinZ, MaxZ )

 

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.

Point

[MKI_POINT] 2D reference point of the extrusion.

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.

Extrusion

[MKI_3D_VECTOR] Extrusion vector.

SourceType

[__int32] Object type of the source data. Possible values are:

MKI_OBJ_CURVE

The data to be extruded is a curve.

MKI_OBJ_SURFACE

The data to be extruded is a surface.

MKI_OBJ_MARK

The data to be extruded 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.

 

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_ANY

MKI_ExtAddDouble, Type = 1001, ElemCount = 3

MKI_ExtAddDouble, Type = 1001, ElemCount = 3

MKI_ExtAddInt32, Type = 1110, ElemCount = 2

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 ),

               b000( f_pObj ),

               b1001( f_pObj ),

               b1002( f_pObj ),

               b1110( f_pObj );

b1000.SetNext( b1101 );

b110.SetNext( b1000 );

b000.SetNext( b110 );

b1001.SetNext( b000 );

b1002.SetNext( b1001 );

b1110.SetNext( b1002 );

 

__int32 nContainerType = b1101.Int32(0);

__int32 nResolution = b1101.Int32(1);

 

...

 

CAD6interface 2026.1 - Copyright 2026 Malz++Kassner® GmbH