⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isff.txt

📁 GIS系统支持库Geospatial Data Abstraction Library代码.GDAL is a translator library for raster geospatial dat
💻 TXT
📖 第 1 页 / 共 5 页
字号:
                                                                     
 
                                                                     
 
 
 
 Color             Number (0-255) that indicates the element's color 
 
 Weight            Number (0-31) that indicates line weight 
 
 Style             The line style is represented as follows: 
                   * 0. Solid (SOL) 
                   * 1. Dotted (DOT) 
                   * 2. Medium dashed (MEDD) 
                   * 3. Long-dashed (LNGD) 
                   * 4. Dot-dashed (DOTD) 
                   * 5. Short-dashed (SHD) 
                   * 6. Dash double-dot (DADD) 
                   * 7. Long dash-short dash (LDSD) 
 
 
 
 

Point coordinates
-----------------

MicroStation is based on a 32-bit integer design plane. Point coordinates 
 are specified as two or three long integers (for 2D and 3D design files, 
 respectively). Coordinate definitions are assigned by the following C 
 structures
 
 2D
   typedef struct
      {
      long     x                             ;
      long     y                             ;
      } Point2d                              ;
 3D
   typedef struct
      {
      long     x                             ;
      long     y                             ;
      long     z                             ;
      } Point3d                              ;
 Sometimes a point that is not within the design plane needs to be 
 specified. For example, the center point for an arc may be far from the 
 design plane, although the design plane must completely contain the arc. 
 In these cases, points are specified as two or three double-precision 
 (64-bit), floating point values:
 2D
   typedef struct
      {
      double      x                          ;
      double      y                          ;
      } Dpoint2d                             ;
 3D
   typedef struct
      {
      double      x                          ;
      double      y                          ;
      double      z                          ;
      } Dpoint3d                             ;
 

Rotation angle (2D) and quaternion (3D)
---------------------------------------

In 2D design files, rotation is represented by a value, angle, that is 
 counterclockwise from the X-axis. Angle is a long integer with the 
 lower-order bit equal to .01 seconds. The conversion from angle to degrees 
 is expressed as follows
 *  Degrees = Angle/360000
    
 In 3D design files, an element's orientation is represented by the 
 transformation matrix to design file coordinates. These transformations 
 are stored in a compressed format called quaternions. Quaternions store a 
 3x3 ortho-normal transformation matrix as four values rather than nine.
 
 The mdlRMatrix_toQuat function (MDL) and the trans_to_quat routine 
 (MicroCSL) generate a quaternion from a transformation matrix. The 
 mdlRMatrix_fromQuat function (MDL) and the quat_to_trans routine 
 (MicroCSL) generate a transformation matrix from a quaternion. See the 
 documentation for these functions for details.
 
 

Attribute linkage data
----------------------

Any element can optionally contain auxiliary data commonly referred to as 
 attribute data or attribute linkage data. This data can consist of a link 
 to an associated database or any other information that pertains to the 
 element.
 
 Attribute data that is not associated with DMRS or a 
 MicroStation-supported database such as Oracle is referred to as a user 
 linkage. A user linkage can co-exist with a database linkage or other user 
 linkages. MicroStation does not attempt to interpret user linkages; these 
 linkages are, however, maintained when MicroStation modifies an element. 
 When an element with a user linkage is copied, the linkage is also copied. 
 Therefore, multiple linkages can occur.
 
 The format of user linkages is described below. As with other linkages, 
 when user linkages are present, the A-bit must be set in the properties 
 word. Individual user linkages cannot exceed 256 words. Multiple user 
 linkages can be attached to an element. The combined length of an element 
 and its linkages must not be greater than 768 words. Considering 
 worst-case element lengths, the length of the linkage area should not 
 exceed 140 words.
 
 User linkages consist of a header word, a user ID word, and user-defined 
 data. The 
 U-bit in the linkage header is set to indicate that the linkage is a user 
 linkage. The ID word should be unique to the software package to which the 
 linkage applies.
 
 

Level Symbology (Type 10)
-------------------------

Stores the symbology (color, line style, and line weight) that elements on 
 a level display with in a view for which Level Symbology is on.
 
 The values of the range are zero.
 
 If the high bit in the next-to-last word of the range is set, then the low 
 three bits are flags for selectively using the three components of the 
 level symobology words.
 *  If bit 0 is clear, then use style (line code).
 *  If bit 1 is set, then use line weight.
 *  If bit 2 is set, then use color.
    
 If the high bit in the next-to-last word of the range is clear, the color, 
 line weight, and line style are used.
 
 The format of each level symbology word is the same as that for Element 
 symbology.
 
 

Library Cell Header (Type 1)
----------------------------

Library cell header elements contain information needed to create a cell in 
 a design file. They are found only in cell libraries.
 
 The celltype member indicates the following types of cells:
    0. Graphic cell
    1. Command menu cell
    2. Cursor button menu cell
    3. Function key menu cell (not supported by MicroStation)
    4. Matrix menu cell
    5. Tutorial cell
    6. Voice menu cell (not supported by MicroStation)
    
 The C definition is as follows:
   typedef struct
      {
      Elm_hdr           ehdr                 ;            /* element header */
      short          celltype                ;           /* cell type */
      short          attindx                 ;            /* attribute linkage */
      long           name                    ;            /* Radix-50 cell name */
      unsigned short          numwords       ;           /* # of words in description */
      short          properties              ;            /* properties */
      short          dispsymb                ;           /* display symbology */
      short          class                   ;           /* cell class (always 0) */
      short          levels[4]               ;          /* levels used in cell */
      short          descrip[9]              ;            /* cell description */
      } Cell_Lib_Hdr                         ;
    Cell descriptions in cell libraries
 

Cell descriptions in cell libraries
-----------------------------------

Each cell description in a cell library is a complex element that contains 
 a library cell header (type 1) followed by component graphic elements.
 
 A cell definition can be nested -- included in another cell. A nested cell 
 definition is stored as a cell header (type 2) that points to a library 
 cell header (type 1). The component elements of a nested cell are not 
 repeated.
 
 When the user places a cell in the design file in IGDS and versions of 
 MicroStation prior to Version 4.0, or as an unshared cell in MicroStation 
 Version 4.0 or later versions, it is placed as a cell header (type 2) 
 followed by its component elements. Each nested cell definition is placed 
 with its cell header (type 2) followed by its component elements.
 
 In MicroStation Version 4.0 or later versions, when the user places the 
 cell in the design file as a shared cell:
 *  If there is no shared cell definition element for that cell in the 
    design file, one is created.
 *  If there is a shared cell definition element for that cell in the 
    design file, a shared cell instance element is placed in the design.
 *  If the cell contains a nested cell and the nested cell is not defined 
    as a shared cell in the design file, a shared cell definition element 
    is created for the nested cell. If the cell contains a nested cell and 
    a shared cell definition is in the design file, a shared cell instance 
    element is created.
    
 Note: 
 Shared cell definition and shared cell instance elements are not described 
 in this appendix. They cannot be manipulated directly and must be accessed 
 with MDL built-in functions.
 
 

Cell Header (Type 2)
--------------------

A cell header element begins
 *  A nested cell definition in a cell library.
 *  A cell placed in a design file in IGDS and versions of MicroStation 
    prior to version 4.0.
 *  An unshared cell placed in a design file in MicroStation Version 4.0 
    and later versions.
    
 2D:
   typdef struct
      {
      Elm_hdr           ehdr                 ;         /* element header */
      Disp_hdr          dhdr                 ;         /* display header */
      unsigned short          totlength      ;       /* total length of cell */
      long           name                    ;         /* Radix 50 name */
      short          class                   ;        /* class bit map */
      short          levels[4]               ;       /* levels used in cell */
      Point2d           rnglow               ;       /* range block low */
      Point2d           rnghigh              ;         /* range block high */
      Trans2d           trans                ;        /* transformation matrix */
      Point2d           origin               ;       /* cell origin */
       } Cell_2d;
       
 3D:
   typedef struct
      {
      Elm_hdr           ehdr                 ;         /* element header */
      Disp_hdr          dhdr                 ;         /* display header */
      unsigned short          totlength      ;       /* total length of cell */
      long           name                    ;         /* Radix 50 name */
      short          class                   ;        /* class bit map */
      short          levels[4]               ;       /* levels used in cell */
      Point3d           rnglow               ;       /* range block low */
      Point3d           rnghigh              ;         /* range block high */
      Trans3d           trans                ;        /* transformation matrix */
      Point3d           origin               ;       /* cell origin */
       } Cell_3d;
       
 Each cell header contains an origin (in design file coordinates) and a 
 transformation matrix that describe all manipulations (rotation and 
 scaling) from the cell library definition to the current design file 
 orientation. The transformation matrix is a 2x2 or 3x3 matrix stored as a 
 long integer with the lower-order bit equal to 4.6566E-6 (10,000231).
 
 Note: 
 Shared cells are stored in the design file as shared cell definition and 
 shared cell instance elements. These elements are not described in this 
 appendix. They cannot be manipulated directly and must be accessed with 
 MDL built-in functions.
 
 .
 
 
 Offset                                                     Offset 
 
 
 
cell_3d.totlength 
 
cell_3d.name 
 
 
 
cell_3d.class 
 
cell_3d.levels 
 
 
 
 
 
 
 
cell_3d.rnglow 
                                                                   
 
 
 
 
 
 
 
 
 
 
 
cell_3d.rnghigh 
 
 
 
 
        
 
 
 
 
 
 
 
cell_3d.trans 
                                                                   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
      Linkage 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
cell_3d.origin 
 
 
 
 
 
 
 
 
 
 
 
 
                                                                 Linkage 
 
 
 
 

Line Elements (Type 3)
----------------------

Line elements consist of the header information and design plane 
 coordinates of the line endpoints.
 2D:
   typedef struct
      {
      Elm_hdr        ehdr                    ;      /* element header */
      Disp_hdr       dhdr                    ;      /* display header */
      Point2d        start                   ;     /* starting point */
      Point2d        end                     ;    /* ending point */
       } Line_2d;
       
 3D:
   typedef struct
      {
      Elm_hdr        ehdr                    ;      /* element header */
      Disp_hdr       dhdr                    ;      /* display header */
      Point3d        start                   ;     /* starting point */
      Point3d        end                     ;    /* ending point */
       } Line_3d;
       
 
 Offset                                                     Offset 
 
 
 
line_3d.start 
 
 
 
 
 
 
 
 
 
 
 
line_3d.end 
 
 
 
 
      Linkage 
 
 
 
 
 
 
 
 
                                                                 Linkage 
 
 
 
 
 
 

Line String (Type 4), Shape (Type 6), Curve (Type 11), and B-spline Pole 
 Element (Type 21)
---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -