33 #include <dime/Base.h>
34 #include <dime/Basic.h>
35 #include <dime/util/Array.h>
36 #include <dime/util/Linear.h>
37 #include <dime/RecordHolder.h>
41 #define FLAG_DELETED 0x0001 // used by dimeEntity
42 #define FLAG_TMP_BUFFER_SET 0x0002 // see dimeEntity::read()
43 #define FLAG_VERTICES_FOLLOW 0x0004 // used by dimePolyline
44 #define FLAG_TAGGED 0x0008 // used by dimeEntity
45 #define FLAG_COLOR_NUMBER 0x0010 // signals a color number was read
46 #define FLAG_SUBCLASS_MARKER 0x0020 // will subclass marker need to be written
47 #define FLAG_HANDLE 0x0040 // entity has handle in RecordHolder
48 #define FLAG_ACAD_REACTORS 0x0080 // ACAD reactors in entity
49 #define FLAG_ACAD_XDICTIONARY 0x0100 // ACAD xdictionary in entity
50 #define FLAG_PAPERSPACE 0x0200 // entity is in paperspace
51 #define FLAG_LINETYPE 0x0400 // linetype specified in entity
52 #define FLAG_FIRST_FREE 0x0800 // use this if you want to define your own flags
69 int16 getEntityFlags()
const;
70 void setEntityFlags(
const int16 flags);
84 virtual bool isOfType(
const int thetypeid)
const;
86 virtual void print()
const {}
95 virtual bool getRecord(
const int groupcode,
97 const int index = 0)
const;
109 dxfdouble &thickness);
115 dimeCallback callback,
129 const char *
const stopat);
160 return this->colorNumber;
166 this->colorNumber = c;
170 dimeEntity::getEntityFlags()
const
172 return this->entityFlags;
176 dimeEntity::setEntityFlags(
const int16 flags)
178 this->entityFlags = flags;
183 #endif // ! DIME_ENTITY_H
The dimePolyline class handles a POLYLINE entity.
Definition: Polyline.h:41
virtual bool traverse(const dimeState *const state, dimeCallback callback, void *userdata)
Definition: Insert.cpp:399
virtual bool isOfType(const int thetypeid) const
Definition: RecordHolder.cpp:75
static void arbitraryAxis(const dimeVec3f &givenaxis, dimeVec3f &newaxis)
Definition: Entity.cpp:485
dimeEntity()
Definition: Entity.cpp:177
virtual void fixReferences(dimeModel *const model)
Definition: Insert.cpp:439
bool preWrite(dimeOutput *const file)
Definition: Entity.cpp:732
bool isDeleted() const
Definition: Entity.cpp:216
The dimeState class manages various state variables while the model is traversed. ...
Definition: State.h:37
The dimeMemHandler class is a special-purpose memory manager.
Definition: MemHandler.h:35
virtual bool getRecord(const int groupcode, dimeParam ¶m, const int index=0) const
Definition: RecordHolder.cpp:258
bool copyRecords(dimeRecordHolder *const rh, dimeMemHandler *const memhandler) const
Definition: RecordHolder.cpp:86
bool isTagged() const
Definition: Entity.cpp:242
The dimeRecordHolder class is a superclass for objects that store records.
Definition: RecordHolder.h:40
virtual bool shouldWriteRecord(const int groupcode) const
Definition: RecordHolder.cpp:376
static void generateUCS(const dimeVec3f &givenaxis, dimeMatrix &m)
Definition: Entity.cpp:507
void setColorNumber(const int16 c)
Definition: Entity.h:164
static bool readEntities(dimeInput *const file, dimeArray< dimeEntity * > &array, const char *const stopat)
Definition: Entity.cpp:334
The dimeEntity class is the superclass of all entity classes.
Definition: Entity.h:57
virtual bool write(dimeOutput *const out)
Definition: RecordHolder.cpp:172
The dimeModel class organizes a model.
Definition: Model.h:51
const char * getLayerName() const
Definition: Entity.cpp:457
The dimeEntitiesSection class handles an ENTITIES section.
Definition: EntitiesSection.h:36
The dimeVec3f class is for containing and operating on a 3D vector / coordinate.
Definition: Linear.h:56
const dimeLayer * getLayer() const
Definition: Entity.h:152
void setDeleted(const bool onOff=true)
Definition: Entity.cpp:227
virtual bool read(dimeInput *const in)
Definition: RecordHolder.cpp:116
The dimeParam class is a union of the different parameter types.
Definition: Basic.h:97
virtual ~dimeEntity()
Definition: Entity.cpp:187
The dimeInsert class handles an INSERT entity.
Definition: Insert.h:39
static bool copyEntityArray(const dimeEntity *const *const array, const int nument, dimeModel *const model, dimeArray< dimeEntity * > &destarray)
Definition: Entity.cpp:420
virtual bool handleRecord(const int groupcode, const dimeParam ¶m, dimeMemHandler *const memhandler)
Definition: RecordHolder.cpp:201
The dimeMatrix class is for containing and operating on a four-by-four matrix.
Definition: Linear.h:151
virtual GeometryType extractGeometry(dimeArray< dimeVec3f > &verts, dimeArray< int > &indices, dimeVec3f &extrusionDir, dxfdouble &thickness)
Definition: Entity.cpp:577
virtual const char * getEntityName() const
Definition: Insert.cpp:339
virtual dimeEntity * copy(dimeModel *const model) const
Definition: Insert.cpp:83
The dimeBlock class handles a BLOCK entity.
Definition: Block.h:42
virtual int countRecords() const
Definition: RecordHolder.cpp:345
virtual void setLayer(const dimeLayer *const layer)
Definition: Entity.cpp:642
static dimeEntity * createEntity(const char *const name, dimeMemHandler *const memhandler=NULL)
Definition: Entity.cpp:277
The dimeOutput class handles writing of DXF and DXB files.
Definition: Output.h:38
int16 getColorNumber() const
Definition: Entity.h:158
The dimeLayer class handles layers.
Definition: Layer.h:35
void setTagged(const bool onOff=true)
Definition: Entity.cpp:252