home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1997 January
/
Chip_1997-01_cd.bin
/
ms95
/
disk22
/
dir04
/
f011840.re_
/
f011840.re
Wrap
Text File
|
1996-04-02
|
6KB
|
217 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: mscell.fdf $
| $Revision: 6.1 $
| $Date: 11 Oct 1995 09:14:16 $
| |
+----------------------------------------------------------------------*/
#if !defined (__mscellFDF__)
#define __mscellFDF__
/*----------------------------------------------------------------------+
| |
| Header File Dependencies |
| |
+----------------------------------------------------------------------*/
#if !defined (__dloadlibH__)
#include "dloadlib.h"
#endif
#if !defined (__mdlH__)
#include "mdl.h"
#endif
#if !defined (__mselemsH__)
#include "mselems.h"
#endif
/*======================================================================+
| |
| Function Definitions |
| |
+======================================================================*/
ULong mdlCell_addLibDescr
(
MSElementDescr *cellDP
);
ULong mdlCell_addLibElement
(
Cell_2d *element
);
int mdlCell_attachLibrary
(
char *filename, /* <= name of cell library opened */
char *inputname, /* => input name */
char *defname, /* => additional place to look */
int fromkeyin /* => TRUE if we should retain path from keyin */
);
ULong mdlCell_begin
(
char *cellName, /* => cell name or NULL */
Dpoint3d *origin, /* => origin of cell */
short *attributes, /* => pointer to attribute buffer */
int pointCell /* => non-zero if point cell */
);
int mdlCell_create
(
MSElement *out,
char *cellName, /* => cell name or NULL */
Dpoint3d *origin, /* => origin of cell */
int pointCell /* => non-zero if point cell */
);
ULong mdlCell_createFromFence
(
char *cellName, /* => cell name */
char *descr, /* => description */
Dpoint3d *rOrigin, /* => origin of cell */
int cellType /* => cell type */
);
void mdlCell_createLibraryHeader
(
Cell_Lib_Hdr *hdr, /* <= location of buffer */
char *cellName, /* => name of cell */
char *descr, /* => description of cell */
int type /* => cell type */
);
int mdlCell_deleteInLibrary
(
char *cellName
);
int mdlCell_end
(
ULong hdrPos /* => position of cell's header. */
);
int mdlCell_existsInLibrary
(
char *cellName
);
int mdlCell_extract
(
Dpoint3d *origin, /* <= origin in MDL coordinates */
Dpoint3d *shape, /* <= bounding shape, (8 Dpoint3d's) */
RotMatrix *rMatrix, /* <= rotation matrix */
Dpoint3d *scale, /* <= scale vector */
char *cellName, /* <= cell name (ascii) */
MSElement *cell /* => cell element */
);
int mdlCell_fixLevels
(
MSElementDescr *elemDscr,
int relativeMode,
int baseLevel
);
int mdlCell_generateLibIndex
(
int messages
);
int mdlCell_getElmDscr
(
MSElementDescr **cellDscrPP, /* => ptr to ptr to element descr */
MSElementDescr **txtNodeDscrPP, /* => ptr-ptr to empty txnode descr */
ULong cellFilePos, /* => file position of cell in lib */
Dpoint3d *rOrigin, /* => origin of cell */
Dpoint3d *scale, /* => scale factors */
RotMatrix *rotMatrix, /* => rotation matrix for cell */
short *attributes, /* => attrb data to append to hdr */
int ggroup, /* => graphic group number */
int sharedFlag,
char *cellName /* => name of cell */
);
int mdlCell_getFilePosition
(
ULong *filePos, /* <= position in cell library of cell */
char *name, /* => name of cell ASCII */
long *indexPos, /* <= OPTIONAL, position in index file */
int searchAll /* => search libs in MS_CELLLIST */
);
ULong mdlCell_getFilePosInLibrary
(
char *cellName
);
boolean mdlCell_isPointCell
(
MSElement *hdr
);
ULong mdlCell_placeCell
(
ULong cellFilePos, /* => file position of cell in lib */
Dpoint3d *rOrigin, /* => origin of cell */
Dpoint3d *scale, /* => scale factors */
RotMatrix *rotMatrix, /* => rotation matrix for cell */
short *attributes, /* => attrb data to append to hdr */
int ggroup, /* => graphic group number */
int relativeMode, /* => relative to baseLevel */
int baseLevel, /* => used for pnt cells, rel cell */
int sharedFlag, /* => 0=no shared, 1=shared, 2=use tcb */
char *cellName /* => name of cell, [for shared cells] */
);
int mdlCell_rename
(
char *newName,
char *oldName
);
int mdlCell_rewriteLibElement
(
MSElement *element,
ULong filePos
);
void mdlCell_setRange
(
MSElementDescr *cellDP
);
void mdlCell_setOriginAndRange
(
MSElementDescr *cellDP
);
long mdlChain_begin
(
short *attributes
);
int mdlChain_end
(
ULong hdrPos, /* => position of complex element's header. */
int complexType /* => CMPLX_SHAPE_ELM, CMPLX_STRING_ELM */
);
#endif