A3DSDKDrawing.h

Header file for the drawing module.

Author

Tech Soft 3D

Version

23.0

Date

January 2023

Copyright (c) 2010 - 2023 by Tech Soft 3D, Inc. All rights reserved.

Content

Data Structures

A3DDrawingModelData

Drawing Model structure.

A3DDrawingSheetFormatData

Drawing sheet format structure.

A3DDrawingSheetData

Drawing sheet structure.

A3DDrawingClipFrameData

A3DDrawingClipFrame structure.

A3DDrawingViewData

DrawingView structure.

A3DDrawingBlockBasicData

DrawingBlockBasic structure.

A3DDrawingBlockOperatorData

DrawingBlockOperator structure.

A3DDrawingCurveData

A3DDrawingCurve structure.

A3DDrawingFilledAreaData

DrawingFilledArea structure.

A3DDrawingPictureData

DrawingPicture structure.

A3DDrawingVerticesData

DrawingVertices structure.

Functions

A3DDrawingModelGet()

Populates the A3DDrawingModelData structure.

A3DDrawingModelCreate()

Creates an A3DDrawingModel from A3DDrawingModelData structure.

A3DDrawingSheetFormatGet()

Populates the A3DDrawingSheetFormatData structure.

A3DDrawingSheetFormatCreate()

Creates an A3DDrawingSheetFormat from A3DDrawingSheetFormatData structure.

A3DDrawingSheetGet()

Populates the A3DDrawingSheetData structure.

A3DDrawingSheetCreate()

Creates an A3DDrawingSheet from A3DDrawingSheetData structure.

A3DDrawingClipFrameGet()

Populates the A3DDrawingClipFrameData structure.

A3DDrawingClipFrameCreate()

Creates an A3DDrawingClipFrame from A3DDrawingClipFrameData structure.

A3DDrawingViewGet()

Populates the A3DDrawingViewData structure.

A3DDrawingViewCreate()

Creates an A3DDrawingView from A3DDrawingViewData structure.

A3DDrawingBlockBasicGet()

Populates the A3DDrawingBlockBasicData structure.

A3DDrawingBlockBasicCreate()

Creates an A3DDrawingBlockBasic from A3DDrawingBlockBasicData structure.

A3DDrawingBlockOperatorGet()

Populates the A3DDrawingBlockOperatorData structure.

A3DDrawingBlockOperatorCreate()

Creates an A3DDrawingBlockOperator from A3DDrawingBlockOperatorData structure.

A3DDrawingBlockPushMiscCascadedAttributes()

Push a A3DMiscCascadedAttributes .

A3DDrawingCurveGet()

Populates the A3DDrawingCurveData structure.

A3DDrawingCurveCreate()

Creates an A3DDrawingCurve from A3DDrawingCurveData structure.

A3DDrawingFilledAreaGet()

Populates the A3DDrawingFilledAreaData structure.

A3DDrawingFilledAreaCreate()

Creates an A3DDrawingFilledArea from A3DDrawingFilledAreaData structure.

A3DDrawingPictureGet()

Populates the A3DDrawingPictureData structure.

A3DDrawingPictureCreate()

Creates an A3DDrawingPicture from A3DDrawingPictureData structure.

A3DDrawingVerticesGet()

Populates the A3DDrawingVerticesData structure.

A3DDrawingVerticesCreate()

Creates an A3DDrawingVertices from A3DDrawingVerticesData structure.

Functions

A3DStatus A3DDrawingModelGet(const A3DDrawingModel *pDrawingModel, A3DDrawingModelData *pData)

Populates the A3DDrawingModelData structure.

Version

5.0

Parameters
  • pDrawingModel[in] The input drawing model.

  • pData[out] Data of the drawing model.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingModelCreate(const A3DDrawingModelData *pData, A3DDrawingModel **ppDrawingModel)

Creates an A3DDrawingModel from A3DDrawingModelData structure.

Version

5.0

Parameters
  • pData[in] The input drawing model data.

  • ppDrawingModel[out] The drawing model entity.

Return values
  • A3D_DRW_CANNOT_CREATE

  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingSheetFormatGet(const A3DDrawingSheetFormat *pDrwSheetFormat, A3DDrawingSheetFormatData *pData)

Populates the A3DDrawingSheetFormatData structure.

Version

5.0

Parameters
  • pDrwSheetFormat[in] The input sheet format.

  • pData[out] Data of the sheet format.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingSheetFormatCreate(const A3DDrawingSheetFormatData *pData, A3DDrawingSheetFormat **ppDrwSheetFormat)

Creates an A3DDrawingSheetFormat from A3DDrawingSheetFormatData structure.

Version

5.0

Parameters
  • pData[in] The input sheet format data.

  • ppDrwSheetFormat[out] The sheet format entity.

Return values
  • A3D_DRW_SHEET_FORMAT_CANNOT_CREATE

  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_ENTITY_NULL

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingSheetGet(const A3DDrawingSheet *pDrawingSheet, A3DDrawingSheetData *pData)

Populates the A3DDrawingSheetData structure.

Version

5.0

Parameters
  • pDrawingSheet[in] The input sheet.

  • pData[out] Data of the sheet.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingSheetCreate(const A3DDrawingSheetData *pData, A3DDrawingSheet **ppDrawingSheet)

Creates an A3DDrawingSheet from A3DDrawingSheetData structure.

Version

5.0

Parameters
  • pData[in] The input sheet data.

  • ppDrawingSheet[out] The sheet entity.

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_DRW_SHEET_CANNOT_CREATE

  • A3D_DRW_SHEET_INVALID_SIZE

  • A3D_DRW_SHEET_INVALID_SCALE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingClipFrameGet(const A3DDrawingClipFrame *pDrwClipFrame, A3DDrawingClipFrameData *pData)

Populates the A3DDrawingClipFrameData structure.

Version

5.0

Parameters
  • pDrwClipFrame[in] The input clipping frame.

  • pData[out] Data of the clipping frame.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingClipFrameCreate(const A3DDrawingClipFrameData *pData, A3DDrawingClipFrame **ppDrwClipFrame)

Creates an A3DDrawingClipFrame from A3DDrawingClipFrameData structure.

Version

5.0

Parameters
  • pData[in] The input clipping frame data

  • ppDrwClipFrame[out] The clipping frame entity.

Return values
  • A3D_INITIALIZE_NOT_CALLED

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_ENTITY_TYPE

  • A3D_ERROR

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingViewGet(const A3DDrawingView *pDrawingView, A3DDrawingViewData *pData)

Populates the A3DDrawingViewData structure.

Version

5.0

Parameters
  • pDrawingView[in] The input view.

  • pData[out] Data of the view.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingViewCreate(const A3DDrawingViewData *pData, A3DDrawingView **ppDrawingView)

Creates an A3DDrawingView from A3DDrawingViewData structure.

Version

5.0

Parameters
  • pData[in] The input view data

  • ppDrawingView[out] The clipping view entity.

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_ENTITY_TYPE

  • A3D_DRW_VIEW_INVALID_SCALE

  • A3D_DRW_VIEW_INVALID_TYPE

  • A3D_DRW_VIEW_CANNOT_CREATE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingBlockBasicGet(const A3DDrawingBlockBasic *pDrawingBlock, A3DDrawingBlockBasicData *pData)

Populates the A3DDrawingBlockBasicData structure.

Version

5.0

Parameters
  • pDrawingBlock[in] The basic block.

  • pData[out] Data of the basic block.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingBlockBasicCreate(const A3DDrawingBlockBasicData *pData, A3DDrawingBlockBasic **ppDrawingBlock)

Creates an A3DDrawingBlockBasic from A3DDrawingBlockBasicData structure.

Version

5.0

Parameters
  • pData[in] The input basic block data

  • ppDrawingBlock[out] The basic block entity

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_ENTITY_NULL

  • A3D_INVALID_ENTITY_TYPE

  • A3D_DRW_BLOCK_CANNOT_CREATE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingBlockOperatorGet(const A3DDrawingBlockOperator *pDrawingOperator, A3DDrawingBlockOperatorData *pData)

Populates the A3DDrawingBlockOperatorData structure.

Version

5.0

Parameters
  • pDrawingOperator[in] The operator block.

  • pData[out] Data of the operator block.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingBlockOperatorCreate(const A3DDrawingBlockOperatorData *pData, A3DDrawingBlockOperator **ppDrawingOperator)

Creates an A3DDrawingBlockOperator from A3DDrawingBlockOperatorData structure.

Version

5.0

Parameters
  • pData[in] The input operator block data

  • ppDrawingOperator[out] The operator block entity

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_ENTITY_TYPE

  • A3D_DRW_OPERATOR_CANNOT_CREATE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingBlockPushMiscCascadedAttributes(A3DMiscCascadedAttributes *pAttr, const A3DDrawingBlock *pBlock, A3DUns32 uiEntityIndex, const A3DMiscCascadedAttributes *pFather)

Push a A3DMiscCascadedAttributes.

In case of reading mode is TessOnly, push the A3DMiscCascadedAttributes of a A3DDrawingEntity

Version

5.0

Parameters
  • pAttr[inout] The cascaded attributes to update

  • pBlock[in] The block entity

  • uiEntityIndex[in] Index of drawing entity from pBlock

  • pFather[in] The father cascaded attribute

Return values
  • A3D_INITIALIZE_NOT_CALLED

  • A3D_INVALID_ENTITY_TYPE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingCurveGet(const A3DDrawingCurve *pDrawingCrv, A3DDrawingCurveData *pData)

Populates the A3DDrawingCurveData structure.

Version

5.0

Parameters
  • pDrawingCrv[in] The drawing curve entity.

  • pData[out] Data of the drawing curve.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingCurveCreate(const A3DDrawingCurveData *pData, A3DDrawingCurve **ppDrawingCrv)

Creates an A3DDrawingCurve from A3DDrawingCurveData structure.

Version

5.0

Parameters
  • pData[in] The input drawing curve data

  • ppDrawingCrv[out] The drawing curve entity

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingFilledAreaGet(const A3DDrawingFilledArea *pDrwFilledArea, A3DDrawingFilledAreaData *pData)

Populates the A3DDrawingFilledAreaData structure.

Version

5.0

Parameters
  • pDrwFilledArea[in] The drawing filled area entity.

  • pData[out] Data of the drawing filled area.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingFilledAreaCreate(const A3DDrawingFilledAreaData *pData, A3DDrawingFilledArea **ppDrwFilledArea)

Creates an A3DDrawingFilledArea from A3DDrawingFilledAreaData structure.

Version

5.0

Parameters
  • pData[in] The input drawing filled area data

  • ppDrwFilledArea[out] The drawing filled area entity

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingPictureGet(const A3DDrawingPicture *pDrawingPicture, A3DDrawingPictureData *pData)

Populates the A3DDrawingPictureData structure.

Version

5.0

Parameters
  • pDrawingPicture[in] The drawing picture entity.

  • pData[out] Data of the drawing picture.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingPictureCreate(const A3DDrawingPictureData *pData, A3DDrawingPicture **ppDrawingPicture)

Creates an A3DDrawingPicture from A3DDrawingPictureData structure.

Version

5.0

Parameters
  • pData[in] The input drawing picture data

  • ppDrawingPicture[out] The drawing picture entity

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingVerticesGet(const A3DDrawingVertices *pDrawingVertices, A3DDrawingVerticesData *pData)

Populates the A3DDrawingVerticesData structure.

Version

5.0

Parameters
  • pDrawingVertices[in] The drawing vertices entity.

  • pData[out] Data of the drawing vertices.

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

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DDrawingVerticesCreate(const A3DDrawingVerticesData *pData, A3DDrawingVertices **ppDrawingVertices)

Creates an A3DDrawingVertices from A3DDrawingVerticesData structure.

Version

5.0

Parameters
  • pData[in] The input drawing vertices data

  • ppDrawingVertices[out] The drawing vertices entity

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code