home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 January / Chip_1997-01_cd.bin / ms95 / disk22 / dir04 / f012120.re_ / f012120.re
Text File  |  1996-04-02  |  7KB  |  209 lines

  1. /*----------------------------------------------------------------------+
  2. |                                    |
  3. |  Copyright (c) 1985-93;  Bentley Systems, Inc., All rights reserved.    |
  4. |                                    |
  5. | "MicroStation", "MDL", and "MicroCSL" are trademarks of Bentley    |
  6. |  Systems, Inc.                            |
  7. |                                    |
  8. |  Limited permission is hereby granted to reproduce and modify this    |
  9. |  copyrighted material provided that the resulting code is used only     |
  10. |  in conjunction with Bentley Systems products under the terms of the    |
  11. |  license agreement provided therein, and that this notice is retained    |
  12. |  in its entirety in any such reproduction or modification.        |
  13. |                                    |
  14. +----------------------------------------------------------------------*/
  15. /*----------------------------------------------------------------------+
  16. |                                    |
  17. |   $Workfile:   msmline.fdf  $
  18. |   $Revision:   6.0  $
  19. |          $Date:   Thu Oct 21 10:37:40 1993  $
  20. |                                    |
  21. +----------------------------------------------------------------------*/
  22. #if !defined (__msmlineFDF__)
  23. #define __msmlineFDF__
  24.  
  25. /*----------------------------------------------------------------------+
  26. |                                    |
  27. |   Header File Dependencies                        |
  28. |                                    |
  29. +----------------------------------------------------------------------*/
  30.  
  31. #if !defined (__dloadlibH__)
  32. #include "dloadlib.h"
  33. #endif
  34.  
  35. #if !defined (__mdlH__)
  36. #include "mdl.h"
  37. #endif
  38.  
  39. /*======================================================================+
  40. |                                    |
  41. |   Function Definitions                        |
  42. |                                    |
  43. +======================================================================*/
  44. int    mdlMline_deletePoint
  45. (
  46. MSElement    *mline,         /* <=> Multiline element buffer           */
  47. int        pointNo         /*     => Point number (zero base) to delete */
  48. );
  49.  
  50. int    mdlMline_deleteBreak
  51. (
  52. MSElement    *mline,      /* <=> Multiline element to be changed    */
  53. int        segNo,         /*  => Multiline segment containing break */
  54. int        breakNo      /*  => Break number in segment           */
  55. );
  56.  
  57. int    mdlMline_getElementDescr
  58. (
  59. MSElementDescr    **edP,         /* <= Element descriptor               */
  60. MSElement    *mline,         /* => Dimension element               */
  61. int        fileNum,     /* => file number                   */
  62. int        grphGrp         /* => Put elements in graphic group       */
  63. );
  64.  
  65. int    mdlMline_getBoundaryDescr
  66. (
  67. MSElementDescr    **edP,        /* <=  Shape representing boundary */
  68. MSElement    *mline,        /* =>  Multiline element */
  69. int        minLine,    /* =>  Minimum profile line (-1 for limit) */
  70. int        maxLine,    /* =>  Maximum profile line (-1 for limit) */
  71. int        fileNum        /* =>  File number */
  72. );
  73.  
  74.  
  75. #if !defined (__mdlmkn__)
  76. /*-----------------------------------------------------------------------
  77. The following functions are defined in mdllib.ml
  78. -----------------------------------------------------------------------*/
  79. int mdlMline_create
  80. (
  81. MSElement     *mline,
  82. MSElement     *seed,
  83. DPoint3d     *normal,
  84. DPoint3d     *points,
  85. int             nPoints
  86. );
  87.  
  88. int mdlMline_getInfo
  89. (
  90. int          *nPoints,    /* <= Number of points in multiline (NULL)*/
  91. int           *nLines,     /* <= Number of lines in multiline     (NULL)*/
  92. double          *dist1,         /* <= Extreme line distance 1     (NULL)*/
  93. double        *dist2,         /* <= Extreme line distance 2     (NULL)*/
  94. DPoint3d      *zVector,    /* <= Multiline Z axis direction     (NULL)*/
  95. MSElement      *mline       /* => Multiline element               */
  96. );
  97.  
  98. int mdlMline_insertPoint
  99. (
  100. MSElement     *mline,
  101. void         *pointInfo,
  102. int             pointNo,
  103. int             option
  104. );
  105.  
  106. int mdlMline_extractPoints
  107. (
  108. DPoint3d      *outPoints,
  109. MSElement      *mline,
  110. int          fileNum,
  111. int             pointNo,
  112. int              nPoints
  113. );
  114.  
  115. int mdlMline_modifyPoint
  116. (
  117. MSElement      *mline,
  118. int              pointNo,
  119. DPoint3d      *newPoint,
  120. int              option
  121. );
  122.  
  123. int mdlMline_getBreak
  124. (
  125. int          *nBreaks,    /* <= Number of breaks in this segment    */
  126. double       *offset,    /* <= Offset value of requested break   */
  127. double       *length,    /* <= Length value of requested break   */
  128. int          *lineMask,    /* <= Line mask - lines cut by break    */
  129. int          *breakFlags,    /* <= Break flags                */
  130. MSElement     *mline,        /* => Multiline element                */
  131. int          segNo,        /* => Segment number to search         */
  132. int          breakNo        /* => Break number in segment          */
  133. );
  134.  
  135. int mdlMline_insertBreak
  136. (
  137. MSElement     *mline,
  138. int             segNo,
  139. double       offset,
  140. double       length,
  141. int             lineMask,
  142. int             breakFlags
  143. );
  144.  
  145. int mdlMline_getLineDef
  146. (
  147. int           *color,         /* <= Line color,  negative=dhdr (NULL)   */
  148. int           *style,         /* <= Line style,  negative=dhdr (NULL)   */
  149. int           *weight,     /* <= Line weight, negative=dhdr (NULL)   */
  150. int          *level,      /* <= Line level number, 0=ehdr  (NULL)   */
  151. int             *conClass,   /* <= TRUE if line is construction class  */
  152. double       *offset,     /* <= Line offset from work line           */
  153. MSElement     *mline,         /* => Multiline element               */
  154. int          lineNo         /* => Line number - profile index           */
  155. );
  156.  
  157. int mdlMline_setLineDef
  158. (
  159. MSElement     *mline,         /* <=> Multiline element               */
  160. int          lineNo,         /*  => Line number - profile index           */
  161. int           color,         /*  => Line color,  negative=dhdr         */
  162. int           style,         /*  => Line style,  negative=dhdr         */
  163. int           weight,         /*  => Line weight, negative=dhdr         */
  164. int          level,         /*  => Line weight, 0=use active           */
  165. int          conClass,    /*  => TRUE if construction class           */
  166. double       offset         /*  => Line offset from work line           */
  167. );
  168.  
  169. int mdlMline_getCapDef
  170. (
  171. int         *capColor,   /* <= Cap Color  (-1=dhdr)     (NULL)           */
  172. int           *capStyle,   /* <= Cap Style  (-1=dhdr)     (NULL)           */
  173. int             *capWeight,  /* <= Cap Weight (-1=dhdr)     (NULL)           */
  174. int          *capLevel,   /* <= Cap level number, 0=ehdr  (NULL)    */
  175. int             *conClass,   /* <= TRUE if cap is construction class   */
  176. int          *capOption,  /*    <= Cap option line/inArc/outArc (NULL) */
  177. double       *capAngle,   /* <= Cap angle                (NULL) */
  178. MSElement     *mline,         /*    => Multiline element               */
  179. int             capNo         /*    => Cap to set. 0=org, 1=joint, 2=end   */
  180. );
  181.  
  182. int mdlMline_setCapDef
  183. (
  184. MSElement     *mline,         /*    <=> Multiline element               */
  185. int             capNo,         /*     => Cap to set. 0=org, 1=joint, 2=end  */
  186. int         capColor,    /*  => Cap Color  (-1=dhdr)     (NULL)*/
  187. int           capStyle,    /*  => Cap Style  (-1=dhdr)     (NULL)*/
  188. int             capWeight,   /*  => Cap Weight (-1=dhdr)     (NULL)*/
  189. int          capLevel,    /*  => Cap level (0=ehdr)         (NULL)*/
  190. int             conClass,    /*  => Cap class (0=ehdr)         (NULL)*/
  191. int          capOption,   /*     => Cap option line/inArc/outArc (NULL)*/
  192. double       capAngle     /*  => Cap angle             (NULL)*/
  193. );
  194.  
  195. int mdlMline_setClosure
  196. (
  197. MSElement     *mline,
  198. int         close
  199. );
  200.  
  201. int mdlMline_validate
  202. (
  203. MSElement     *mline
  204. );
  205.  
  206. #endif /* (__mdlmkn__) */
  207.  
  208. #endif
  209.