home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1997 January
/
Chip_1997-01_cd.bin
/
ms95
/
disk22
/
dir04
/
f012120.re_
/
f012120.re
Wrap
Text File
|
1996-04-02
|
7KB
|
209 lines
/*----------------------------------------------------------------------+
| |
| Copyright (c) 1985-93; Bentley Systems, Inc., All rights reserved. |
| |
| "MicroStation", "MDL", and "MicroCSL" are trademarks of Bentley |
| Systems, Inc. |
| |
| Limited permission is hereby granted to reproduce and modify this |
| copyrighted material provided that the resulting code is used only |
| in conjunction with Bentley Systems products under the terms of the |
| license agreement provided therein, and that this notice is retained |
| in its entirety in any such reproduction or modification. |
| |
+----------------------------------------------------------------------*/
/*----------------------------------------------------------------------+
| |
| $Workfile: msmline.fdf $
| $Revision: 6.0 $
| $Date: Thu Oct 21 10:37:40 1993 $
| |
+----------------------------------------------------------------------*/
#if !defined (__msmlineFDF__)
#define __msmlineFDF__
/*----------------------------------------------------------------------+
| |
| Header File Dependencies |
| |
+----------------------------------------------------------------------*/
#if !defined (__dloadlibH__)
#include "dloadlib.h"
#endif
#if !defined (__mdlH__)
#include "mdl.h"
#endif
/*======================================================================+
| |
| Function Definitions |
| |
+======================================================================*/
int mdlMline_deletePoint
(
MSElement *mline, /* <=> Multiline element buffer */
int pointNo /* => Point number (zero base) to delete */
);
int mdlMline_deleteBreak
(
MSElement *mline, /* <=> Multiline element to be changed */
int segNo, /* => Multiline segment containing break */
int breakNo /* => Break number in segment */
);
int mdlMline_getElementDescr
(
MSElementDescr **edP, /* <= Element descriptor */
MSElement *mline, /* => Dimension element */
int fileNum, /* => file number */
int grphGrp /* => Put elements in graphic group */
);
int mdlMline_getBoundaryDescr
(
MSElementDescr **edP, /* <= Shape representing boundary */
MSElement *mline, /* => Multiline element */
int minLine, /* => Minimum profile line (-1 for limit) */
int maxLine, /* => Maximum profile line (-1 for limit) */
int fileNum /* => File number */
);
#if !defined (__mdlmkn__)
/*-----------------------------------------------------------------------
The following functions are defined in mdllib.ml
-----------------------------------------------------------------------*/
int mdlMline_create
(
MSElement *mline,
MSElement *seed,
DPoint3d *normal,
DPoint3d *points,
int nPoints
);
int mdlMline_getInfo
(
int *nPoints, /* <= Number of points in multiline (NULL)*/
int *nLines, /* <= Number of lines in multiline (NULL)*/
double *dist1, /* <= Extreme line distance 1 (NULL)*/
double *dist2, /* <= Extreme line distance 2 (NULL)*/
DPoint3d *zVector, /* <= Multiline Z axis direction (NULL)*/
MSElement *mline /* => Multiline element */
);
int mdlMline_insertPoint
(
MSElement *mline,
void *pointInfo,
int pointNo,
int option
);
int mdlMline_extractPoints
(
DPoint3d *outPoints,
MSElement *mline,
int fileNum,
int pointNo,
int nPoints
);
int mdlMline_modifyPoint
(
MSElement *mline,
int pointNo,
DPoint3d *newPoint,
int option
);
int mdlMline_getBreak
(
int *nBreaks, /* <= Number of breaks in this segment */
double *offset, /* <= Offset value of requested break */
double *length, /* <= Length value of requested break */
int *lineMask, /* <= Line mask - lines cut by break */
int *breakFlags, /* <= Break flags */
MSElement *mline, /* => Multiline element */
int segNo, /* => Segment number to search */
int breakNo /* => Break number in segment */
);
int mdlMline_insertBreak
(
MSElement *mline,
int segNo,
double offset,
double length,
int lineMask,
int breakFlags
);
int mdlMline_getLineDef
(
int *color, /* <= Line color, negative=dhdr (NULL) */
int *style, /* <= Line style, negative=dhdr (NULL) */
int *weight, /* <= Line weight, negative=dhdr (NULL) */
int *level, /* <= Line level number, 0=ehdr (NULL) */
int *conClass, /* <= TRUE if line is construction class */
double *offset, /* <= Line offset from work line */
MSElement *mline, /* => Multiline element */
int lineNo /* => Line number - profile index */
);
int mdlMline_setLineDef
(
MSElement *mline, /* <=> Multiline element */
int lineNo, /* => Line number - profile index */
int color, /* => Line color, negative=dhdr */
int style, /* => Line style, negative=dhdr */
int weight, /* => Line weight, negative=dhdr */
int level, /* => Line weight, 0=use active */
int conClass, /* => TRUE if construction class */
double offset /* => Line offset from work line */
);
int mdlMline_getCapDef
(
int *capColor, /* <= Cap Color (-1=dhdr) (NULL) */
int *capStyle, /* <= Cap Style (-1=dhdr) (NULL) */
int *capWeight, /* <= Cap Weight (-1=dhdr) (NULL) */
int *capLevel, /* <= Cap level number, 0=ehdr (NULL) */
int *conClass, /* <= TRUE if cap is construction class */
int *capOption, /* <= Cap option line/inArc/outArc (NULL) */
double *capAngle, /* <= Cap angle (NULL) */
MSElement *mline, /* => Multiline element */
int capNo /* => Cap to set. 0=org, 1=joint, 2=end */
);
int mdlMline_setCapDef
(
MSElement *mline, /* <=> Multiline element */
int capNo, /* => Cap to set. 0=org, 1=joint, 2=end */
int capColor, /* => Cap Color (-1=dhdr) (NULL)*/
int capStyle, /* => Cap Style (-1=dhdr) (NULL)*/
int capWeight, /* => Cap Weight (-1=dhdr) (NULL)*/
int capLevel, /* => Cap level (0=ehdr) (NULL)*/
int conClass, /* => Cap class (0=ehdr) (NULL)*/
int capOption, /* => Cap option line/inArc/outArc (NULL)*/
double capAngle /* => Cap angle (NULL)*/
);
int mdlMline_setClosure
(
MSElement *mline,
int close
);
int mdlMline_validate
(
MSElement *mline
);
#endif /* (__mdlmkn__) */
#endif