Modules

 Position definition
 
 Notes
 
 Dimension
 
 Tolerance
 
 Symbols
 
 Welding
 

Data Structures

struct  A3DMarkupDefinitionData
 Structure defining common data to all markup with definition. More...
 
struct  A3DMDTextPropertiesData
 Markup text properties data structure. More...
 

Enumerations

enum  EA3DMDMarkupDisplayType {
  KEA3DMDDisplayType_Unknown = -1,
  KEA3DMDDisplayType_Unspecified = 0,
  KEA3DMDDisplayType_FlatToScreen = 1,
  KEA3DMDDisplayType_FlatToSurface = 2
}
 
enum  EA3DMDTextPropertiesFormat {
  KEA3DMDTextPropertiesFormatNormal = 0,
  KEA3DMDTextPropertiesFormatUnderLine = 1,
  KEA3DMDTextPropertiesFormatOverLine = 2,
  KEA3DMDTextPropertiesFormatExposant = 3,
  KEA3DMDTextPropertiesFormatindice = 4
}
 Enumerator that describes the format text. More...
 
enum  EA3DMDTextPropertiesJustification {
  KEA3DMDTextPropertiesJustificationLeft = 0,
  KEA3DMDTextPropertiesJustificationCenter = 1,
  KEA3DMDTextPropertiesJustificationRight = 2
}
 Enumerator that justifies the text. More...
 
enum  EA3DMDTextPropertiesScore {
  KEA3DMDTextPropertiesScoreNone = 0,
  KEA3DMDTextPropertiesUnderScored = 1,
  KEA3DMDTextPropertiesScored = 2,
  KEA3DMDTextPropertiesOverScored = 3
}
 Enumerator that describes the score type applied on text. More...
 

Functions

A3DStatus A3DMarkupDefinitionGet (const A3DMarkupDefinition *pMarkupDefinition, A3DMarkupDefinitionData *pData)
 Populates the A3DMarkupDefinitionData structure. More...
 
A3DStatus A3DMarkupPositionIsScreenLocation (const A3DMarkupDefinition *pMarkupDefinition, A3DBool *pIsScreenLocation, A3DMDPosition2DData *pPosition, A3DVector2dData *pOffsetAnchorPoint)
 Test if the position of the markup is a screen position, and return the position and the offset of the anchor point. More...
 
A3DStatus A3DMDTextPropertiesGet (const A3DMDTextProperties *pTextProperties, A3DMDTextPropertiesData *pData)
 Populates the A3DMDTextPropertiesData structure. More...
 

Detailed Description

Version
4.0

The A3DMkpAnnotationItemData structure references an A3DMkpMarkup. This markup contains tessellation, leaders, and linked item information that is available by using the function A3DMkpMarkupGet. In addition this markup can contain also definition and specific data. Those data are stored in common structure A3DMarkupDefinitionData and in a specific structure corresponding to the type return by the function A3DEntityGetType. For the structures corresponding to markups with definition, only access functions are defined. In other words, the customer can only create A3DMkpMarkup.


The following illustration shows the available methods to retrieve all the data.
In yellow, the data stored in the structure; in blue, the access function defined for corresponding structure.

pmi_access.png

Here, it samples of the two ways to obtain markup data. In the first case, the markup contains only a tessellation, a type, and a sub type, in the second case, considering a markup text creation, the markup contains specific data (text, text properties (font...), position definition, display options, with a tessellation, a type, and a sub type.

pmi_access_sample.png

See the following sample code:

//markup data
A3DInt32 iRet=A3DEntityGetType( pMarkup, &eType);
// if ( iRet!=A3D_SUCCESS ) exit
if(eType == kA3DTypeMkpMarkup)
{
//no definition is set, no information to retrieve
//terminate...
}
//markup definition data
A3DMarkupDefinitionData sDataDefinition;
A3DInt32 iRet=A3DMarkupDefinitionGet((A3DMarkupDefinition*)pMarkup, &sDataDefinition);//sDataDefinition contains basic definition information
//specific data
A3DMarkupDimensionData sDimensionData;
switch(eType)
{
A3DMarkupTextData sTextData;
A3DInt32 iRet=A3DMarkupTextGet((A3DMarkupText*)pMarkup, &sTextData);
break;
A3DMarkupDimensionData sDimensionData;
A3DInt32 iRet=A3DMarkupTextGet((A3DMarkupDimension*)pMarkup, &sDimensionData);
break;
A3DMarkupGDTData sGDTData;
A3DInt32 iRet=A3DMarkupGDTGet((A3DMarkupGDT*)pMarkup, &sGDTData);
break;
...same thing for all types
default:
break;
}

Enumeration Type Documentation

◆ EA3DMDMarkupDisplayType

The markup position is defined by an attach point and an attach type.

The attach type specifies the point of markup frame on which the attach point will be aligned. See below.

pmi_attach_type.png
Enumerator
KEA3DMDDisplayType_Unknown 

Unknown.

KEA3DMDDisplayType_Unspecified 

Unspecified.

KEA3DMDDisplayType_FlatToScreen 

Flat to screen.

KEA3DMDDisplayType_FlatToSurface 

Flat to surface.

◆ EA3DMDTextPropertiesScore

Enumerator that describes the score type applied on text.

Enumerator
KEA3DMDTextPropertiesScoreNone 

Text is not scored.

KEA3DMDTextPropertiesUnderScored 

Text is underscored: draw a horizontal line below the text.

KEA3DMDTextPropertiesScored 

Also called strike through, Text is scored: draw a horizontal line through the text.

KEA3DMDTextPropertiesOverScored 

Text is overscored: draw a horizontal line above the text.

◆ EA3DMDTextPropertiesFormat

Enumerator that describes the format text.

Enumerator
KEA3DMDTextPropertiesFormatNormal 

Classical text.

KEA3DMDTextPropertiesFormatUnderLine 

Text positioning under the classical text.

KEA3DMDTextPropertiesFormatOverLine 

Text positioning over the classical text.

KEA3DMDTextPropertiesFormatExposant 

Text positioning as an exposant.

KEA3DMDTextPropertiesFormatindice 

Text positioning as an indice.

◆ EA3DMDTextPropertiesJustification

Enumerator that justifies the text.

Enumerator
KEA3DMDTextPropertiesJustificationLeft 

Justifies the text on the left side.

KEA3DMDTextPropertiesJustificationCenter 

Centers the text.

KEA3DMDTextPropertiesJustificationRight 

Justifies the text on the right side.

Function Documentation

◆ A3DMDTextPropertiesGet()

A3DStatus A3DMDTextPropertiesGet ( const A3DMDTextProperties pTextProperties,
A3DMDTextPropertiesData pData 
)

Populates the A3DMDTextPropertiesData structure.

Version
4.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS

◆ A3DMarkupDefinitionGet()

A3DStatus A3DMarkupDefinitionGet ( const A3DMarkupDefinition pMarkupDefinition,
A3DMarkupDefinitionData pData 
)

Populates the A3DMarkupDefinitionData structure.

Version
4.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS

◆ A3DMarkupPositionIsScreenLocation()

A3DStatus A3DMarkupPositionIsScreenLocation ( const A3DMarkupDefinition pMarkupDefinition,
A3DBool pIsScreenLocation,
A3DMDPosition2DData pPosition,
A3DVector2dData pOffsetAnchorPoint 
)

Test if the position of the markup is a screen position, and return the position and the offset of the anchor point.

Parameters
[in]pMarkupDefinitionis the markup.
[out]pIsScreenLocationtrue if the position of the markup is a screen position.
[out]pPositionis the 2D position of the markup.
[out]pOffsetAnchorPointis the offset of position of the markup.
Version
9.2
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS