dgnlib.h
来自「支持各种栅格图像和矢量图像读取的库」· C头文件 代码 · 共 885 行 · 第 1/3 页
H
885 行
#define DGNT_LEVEL_SYMBOLOGY 10#define DGNT_CURVE 11#define DGNT_COMPLEX_CHAIN_HEADER 12#define DGNT_COMPLEX_SHAPE_HEADER 14#define DGNT_ELLIPSE 15#define DGNT_ARC 16#define DGNT_TEXT 17#define DGNT_3DSURFACE_HEADER 18#define DGNT_3DSOLID_HEADER 19#define DGNT_BSPLINE_POLE 21#define DGNT_POINT_STRING 22#define DGNT_BSPLINE_SURFACE_HEADER 24#define DGNT_BSPLINE_SURFACE_BOUNDARY 25#define DGNT_BSPLINE_KNOT 26#define DGNT_BSPLINE_CURVE_HEADER 27#define DGNT_BSPLINE_WEIGHT_FACTOR 28#define DGNT_CONE 23#define DGNT_SHARED_CELL_DEFN 34#define DGNT_SHARED_CELL_ELEM 35#define DGNT_TAG_VALUE 37#define DGNT_APPLICATION_ELEM 66/* -------------------------------------------------------------------- *//* Line Styles *//* -------------------------------------------------------------------- */#define DGNS_SOLID 0#define DGNS_DOTTED 1#define DGNS_MEDIUM_DASH 2#define DGNS_LONG_DASH 3#define DGNS_DOT_DASH 4#define DGNS_SHORT_DASH 5#define DGNS_DASH_DOUBLE_DOT 6#define DGNS_LONG_DASH_SHORT_DASH 7/* -------------------------------------------------------------------- *//* 3D Surface Types *//* -------------------------------------------------------------------- */#define DGNSUT_SURFACE_OF_PROJECTION 0#define DGNSUT_BOUNDED_PLANE 1#define DGNSUT_BOUNDED_PLANE2 2#define DGNSUT_RIGHT_CIRCULAR_CYLINDER 3#define DGNSUT_RIGHT_CIRCULAR_CONE 4#define DGNSUT_TABULATED_CYLINDER 5#define DGNSUT_TABULATED_CONE 6#define DGNSUT_CONVOLUTE 7#define DGNSUT_SURFACE_OF_REVOLUTION 8#define DGNSUT_WARPED_SURFACE 9/* -------------------------------------------------------------------- *//* 3D Solid Types *//* -------------------------------------------------------------------- */#define DGNSOT_VOLUME_OF_PROJECTION 0#define DGNSOT_VOLUME_OF_REVOLUTION 1#define DGNSOT_BOUNDED_VOLUME 2/* -------------------------------------------------------------------- *//* Class *//* -------------------------------------------------------------------- */#define DGNC_PRIMARY 0#define DGNC_PATTERN_COMPONENT 1#define DGNC_CONSTRUCTION_ELEMENT 2#define DGNC_DIMENSION_ELEMENT 3#define DGNC_PRIMARY_RULE_ELEMENT 4#define DGNC_LINEAR_PATTERNED_ELEMENT 5#define DGNC_CONSTRUCTION_RULE_ELEMENT 6/* -------------------------------------------------------------------- *//* Group Data level numbers. *//* *//* These are symbolic values for the typ 5 (DGNT_GROUP_DATA) *//* level values that have special meanings. *//* -------------------------------------------------------------------- */#define DGN_GDL_COLOR_TABLE 1#define DGN_GDL_NAMED_VIEW 3#define DGN_GDL_REF_FILE 9/* -------------------------------------------------------------------- *//* Word 17 property flags. *//* -------------------------------------------------------------------- */#define DGNPF_HOLE 0x8000#define DGNPF_SNAPPABLE 0x4000#define DGNPF_PLANAR 0x2000#define DGNPF_ORIENTATION 0x1000#define DGNPF_ATTRIBUTES 0x0800#define DGNPF_MODIFIED 0x0400#define DGNPF_NEW 0x0200#define DGNPF_LOCKED 0x0100#define DGNPF_CLASS 0x000f/* -------------------------------------------------------------------- *//* DGNElementInfo flag values. *//* -------------------------------------------------------------------- */#define DGNEIF_DELETED 0x01#define DGNEIF_COMPLEX 0x02/* -------------------------------------------------------------------- *//* Justifications *//* -------------------------------------------------------------------- */#define DGNJ_LEFT_TOP 0#define DGNJ_LEFT_CENTER 1#define DGNJ_LEFT_BOTTOM 2#define DGNJ_LEFTMARGIN_TOP 3 /* text node header only */#define DGNJ_LEFTMARGIN_CENTER 4 /* text node header only */#define DGNJ_LEFTMARGIN_BOTTOM 5 /* text node header only */#define DGNJ_CENTER_TOP 6#define DGNJ_CENTER_CENTER 7#define DGNJ_CENTER_BOTTOM 8#define DGNJ_RIGHTMARGIN_TOP 9 /* text node header only */#define DGNJ_RIGHTMARGIN_CENTER 10 /* text node header only */#define DGNJ_RIGHTMARGIN_BOTTOM 11 /* text node header only */#define DGNJ_RIGHT_TOP 12#define DGNJ_RIGHT_CENTER 13#define DGNJ_RIGHT_BOTTOM 14/* -------------------------------------------------------------------- *//* DGN file reading options. *//* -------------------------------------------------------------------- */#define DGNO_CAPTURE_RAW_DATA 0x01/* -------------------------------------------------------------------- *//* Known attribute linkage types, including my synthetic ones. *//* -------------------------------------------------------------------- */#define DGNLT_DMRS 0x0000#define DGNLT_INFORMIX 0x3848#define DGNLT_ODBC 0x5e62#define DGNLT_ORACLE 0x6091#define DGNLT_RIS 0x71FB#define DGNLT_SYBASE 0x4f58#define DGNLT_XBASE 0x1971#define DGNLT_SHAPE_FILL 0x0041#define DGNLT_ASSOC_ID 0x7D2F/* -------------------------------------------------------------------- *//* File creation options. *//* -------------------------------------------------------------------- */#define DGNCF_USE_SEED_UNITS 0x01#define DGNCF_USE_SEED_ORIGIN 0x02#define DGNCF_COPY_SEED_FILE_COLOR_TABLE 0x04#define DGNCF_COPY_WHOLE_SEED_FILE 0x08/* -------------------------------------------------------------------- *//* B-Spline Curve flags. Also used for U-direction of surfaces *//* -------------------------------------------------------------------- */#define DGNBSC_CURVE_DISPLAY 0x10#define DGNBSC_POLY_DISPLAY 0x20#define DGNBSC_RATIONAL 0x40#define DGNBSC_CLOSED 0x80/* -------------------------------------------------------------------- *//* B-Spline Curve flags for V-direction of surfaces. *//* -------------------------------------------------------------------- */#define DGNBSS_ARC_SPACING 0x40#define DGNBSS_CLOSED 0x80/* -------------------------------------------------------------------- *//* API *//* -------------------------------------------------------------------- *//** Opaque handle representing DGN file, used with DGN API. */typedef void *DGNHandle;DGNHandle CPL_DLL DGNOpen( const char *, int );void CPL_DLL DGNSetOptions( DGNHandle, int );int CPL_DLL DGNTestOpen( GByte *, int );const DGNElementInfo CPL_DLL *DGNGetElementIndex( DGNHandle, int * );int CPL_DLL DGNGetExtents( DGNHandle, double * );int CPL_DLL DGNGetDimension( DGNHandle );DGNElemCore CPL_DLL *DGNReadElement( DGNHandle );void CPL_DLL DGNFreeElement( DGNHandle, DGNElemCore * );void CPL_DLL DGNRewind( DGNHandle );int CPL_DLL DGNGotoElement( DGNHandle, int );void CPL_DLL DGNClose( DGNHandle );int CPL_DLL DGNLoadTCB( DGNHandle );int CPL_DLL DGNLookupColor( DGNHandle, int, int *, int *, int * );int CPL_DLL DGNGetShapeFillInfo( DGNHandle, DGNElemCore *, int * );int CPL_DLL DGNGetAssocID( DGNHandle, DGNElemCore * );int CPL_DLL DGNGetElementExtents( DGNHandle, DGNElemCore *, DGNPoint *, DGNPoint * );void CPL_DLL DGNDumpElement( DGNHandle, DGNElemCore *, FILE * );const char CPL_DLL *DGNTypeToName( int );void CPL_DLL DGNRotationToQuaternion( double, int * );void CPL_DLL DGNQuaternionToMatrix( int *, float * );int CPL_DLL DGNStrokeArc( DGNHandle, DGNElemArc *, int, DGNPoint * );int CPL_DLL DGNStrokeCurve( DGNHandle, DGNElemMultiPoint*, int, DGNPoint * );void CPL_DLL DGNSetSpatialFilter( DGNHandle hDGN, double dfXMin, double dfYMin, double dfXMax, double dfYMax );int CPL_DLL DGNGetAttrLinkSize( DGNHandle, DGNElemCore *, int );unsigned char CPL_DLL * DGNGetLinkage( DGNHandle hDGN, DGNElemCore *psElement, int iIndex, int *pnLinkageType, int *pnEntityNum, int *pnMSLink, int *pnLinkSize);/* Write API */ int CPL_DLL DGNWriteElement( DGNHandle, DGNElemCore * );int CPL_DLL DGNResizeElement( DGNHandle, DGNElemCore *, int );DGNHandle CPL_DLL DGNCreate( const char *pszNewFilename, const char *pszSeedFile, int nCreationFlags, double dfOriginX, double dfOriginY, double dfOriginZ, int nMasterUnitPerSubUnit, int nUORPerSubUnit, const char *pszMasterUnits, const char *pszSubUnits );DGNElemCore CPL_DLL *DGNCloneElement( DGNHandle hDGNSrc, DGNHandle hDGNDst, DGNElemCore *psSrcElement );int CPL_DLL DGNUpdateElemCore( DGNHandle hDGN, DGNElemCore *psElement, int nLevel, int nGraphicGroup, int nColor, int nWeight, int nStyle );int CPL_DLL DGNUpdateElemCoreExtended( DGNHandle hDGN, DGNElemCore *psElement );DGNElemCore CPL_DLL * DGNCreateMultiPointElem( DGNHandle hDGN, int nType, int nPointCount, DGNPoint*pasVertices );DGNElemCore CPL_DLL * DGNCreateArcElem2D( DGNHandle hDGN, int nType, double dfOriginX, double dfOriginY, double dfPrimaryAxis, double dfSecondaryAxis, double dfRotation, double dfStartAngle, double dfSweepAngle );DGNElemCore CPL_DLL * DGNCreateArcElem( DGNHandle hDGN, int nType, double dfOriginX, double dfOriginY, double dfOriginZ, double dfPrimaryAxis, double dfSecondaryAxis, double dfStartAngle, double dfSweepAngle, double dfRotation, int *panQuaternion );DGNElemCore CPL_DLL * DGNCreateConeElem( DGNHandle hDGN, double center_1X, double center_1Y, double center_1Z, double radius_1, double center_2X, double center_2Y, double center_2Z, double radius_2, int *panQuaternion );DGNElemCore CPL_DLL * DGNCreateTextElem( DGNHandle hDGN, const char *pszText, int nFontId, int nJustification, double dfLengthMult, double dfHeightMult, double dfRotation, int *panQuaternion, double dfOriginX, double dfOriginY, double dfOriginZ );DGNElemCore CPL_DLL * DGNCreateColorTableElem( DGNHandle hDGN, int nScreenFlag, GByte abyColorInfo[256][3] );DGNElemCore CPL_DLL *DGNCreateComplexHeaderElem( DGNHandle hDGN, int nType, int nTotLength, int nNumElems );DGNElemCore CPL_DLL *DGNCreateComplexHeaderFromGroup( DGNHandle hDGN, int nType, int nNumElems, DGNElemCore **papsElems );DGNElemCore CPL_DLL *DGNCreateSolidHeaderElem( DGNHandle hDGN, int nType, int nSurfType, int nBoundElems, int nTotLength, int nNumElems );DGNElemCore CPL_DLL *DGNCreateSolidHeaderFromGroup( DGNHandle hDGN, int nType, int nSurfType, int nBoundElems, int nNumElems, DGNElemCore **papsElems );DGNElemCore CPL_DLL *DGNCreateCellHeaderElem( DGNHandle hDGN, int nTotLength, const char *pszName, short nClass, short *panLevels, DGNPoint *psRangeLow, DGNPoint *psRangeHigh, DGNPoint *psOrigin, double dfXScale, double dfYScale, double dfRotation ); DGNElemCore CPL_DLL *DGNCreateCellHeaderFromGroup( DGNHandle hDGN, const char *pszName, short nClass, short *panLevels, int nNumElems, DGNElemCore **papsElems, DGNPoint *psOrigin, double dfXScale, double dfYScale, double dfRotation );int CPL_DLL DGNAddMSLink( DGNHandle hDGN, DGNElemCore *psElement, int nLinkageType, int nEntityNum, int nMSLink );int CPL_DLL DGNAddRawAttrLink( DGNHandle hDGN, DGNElemCore *psElement, int nLinkSize, unsigned char *pabyRawLinkData );int CPL_DLL DGNAddShapeFillInfo( DGNHandle hDGN, DGNElemCore *psElement, int nColor );int CPL_DLL DGNElemTypeHasDispHdr( int nElemType );CPL_C_END#endif /* ndef _DGNLIB_H_INCLUDED */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?