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 + -
显示快捷键?