33 #ifndef DIME_POLYLINE_H
34 #define DIME_POLYLINE_H
36 #include <dime/Basic.h>
37 #include <dime/entities/ExtrusionEntity.h>
38 #include <dime/util/Array.h>
39 #include <dime/util/Linear.h>
58 POLYMESH_CLOSED_M = 0x01,
61 IS_POLYLINE_3D = 0x08,
62 IS_POLYMESH_3D = 0x10,
63 POLYMESH_CLOSED_N = 0x20,
64 IS_POLYFACE_MESH = 0x40,
65 CONTINOUS_PATTERN = 0x80
75 int16 getFlags()
const;
76 void setFlags(
const int16 flags);
83 int16 getPolymeshCountN()
const;
84 int16 getPolymeshCountM()
const;
85 int16 getSmoothSurfaceMdensity()
const;
86 int16 getSmoothSurfaceNdensity()
const;
88 int getNumCoordVertices()
const;
89 int getNumIndexVertices()
const;
90 int getNumSplineFrameControlPoints()
const;
92 int16 getSurfaceType()
const;
93 void setSurfaceType(
const int16 type);
97 dimeVertex *getSplineFrameControlPoint(
const int index);
99 void setCoordVertices(
dimeVertex **vertices,
const int num,
101 void setIndexVertices(
dimeVertex **vertices,
const int num,
103 void setSplineFrameControlPoints(
dimeVertex **vertices,
const int num,
110 virtual bool getRecord(
const int groupcode,
112 const int index = 0)
const;
119 virtual int typeId()
const;
125 dxfdouble &thickness);
127 void clearSurfaceData();
134 dimeCallback callback,
139 int numCoordVertices()
const;
140 int numIndexVertices()
const;
170 dimePolyline::getFlags()
const
176 dimePolyline::setFlags(
const int16 flags)
182 dimePolyline::getElevation()
const
188 dimePolyline::setElevation(
const dimeVec3f &e)
194 dimePolyline::getPolymeshCountN()
const
200 dimePolyline::getPolymeshCountM()
const
206 dimePolyline::getSmoothSurfaceMdensity()
const
208 return this->smoothCountM;
212 dimePolyline::getSmoothSurfaceNdensity()
const
214 return this->smoothCountN;
218 dimePolyline::getNumCoordVertices()
const
220 return this->coordCnt;
224 dimePolyline::getNumIndexVertices()
const
226 return this->indexCnt;
230 dimePolyline::getNumSplineFrameControlPoints()
const
232 return this->frameCnt;
236 dimePolyline::getCoordVertex(
const int index)
238 return this->coordVertices[index];
242 dimePolyline::getIndexVertex(
const int index)
244 return this->indexVertices[index];
248 dimePolyline::getSplineFrameControlPoint(
const int index)
250 return this->frameVertices[index];
254 dimePolyline::getSurfaceType()
const
256 return this->surfaceType;
260 dimePolyline::setSurfaceType(
const int16 type)
262 this->surfaceType = type;
266 #endif // ! DIME_POLYLINE_H
The dimeEntity class is the superclass of all entity classes.
Definition: Entity.h:60
virtual GeometryType extractGeometry(dimeArray< dimeVec3f > &verts, dimeArray< int > &indices, dimeVec3f &extrusionDir, dxfdouble &thickness)
Definition: Polyline.cpp:511
The dimeLayer class handles layers.
Definition: Layer.h:38
bool writeExtrusionData(dimeOutput *const out)
Definition: ExtrusionEntity.cpp:76
virtual void setLayer(const dimeLayer *const layer)
Definition: Polyline.cpp:883
void setCoordVertices(dimeVertex **vertices, const int num, dimeMemHandler *const memhandler=NULL)
Definition: Polyline.cpp:735
virtual int countRecords() const
Definition: Entity.cpp:526
The dimeArray class is internal / private.
Definition: Array.h:65
dxfdouble getThickness() const
Definition: ExtrusionEntity.h:91
void copyExtrusionData(const dimeExtrusionEntity *const entity)
Definition: ExtrusionEntity.cpp:126
virtual bool write(dimeOutput *const out)
Definition: Vertex.cpp:88
const dimeVec3f & getExtrusionDir() const
Definition: ExtrusionEntity.h:79
bool writeInt16(const int16 val)
Definition: Output.cpp:168
virtual ~dimePolyline()
Definition: Polyline.cpp:66
void setSplineFrameControlPoints(dimeVertex **vertices, const int num, dimeMemHandler *const memhandler=NULL)
Definition: Polyline.cpp:770
virtual dimeEntity * copy(dimeModel *const model) const
Definition: Polyline.cpp:84
void setSeqend(const dimeEntity *ent)
Definition: Polyline.cpp:838
void addLine(const dimeVec3f &v0, const dimeVec3f &v1, const dimeMatrix *const matrix=NULL)
Definition: layerdata.cpp:77
The dxfLayerData class handles all geometry for a given color index. DXF geometry is grouped into dif...
Definition: layerdata.h:41
void addPoint(const dimeVec3f &v, const dimeMatrix *const matrix=NULL)
Definition: layerdata.cpp:112
virtual bool traverse(const dimeState *const state, dimeCallback callback, void *userdata)
Definition: Polyline.cpp:853
virtual bool read(dimeInput *const in)
Definition: Entity.cpp:612
bool copyRecords(dimeEntity *const entity, dimeModel *const model) const
Definition: Entity.cpp:200
bool isDeleted() const
Definition: Entity.cpp:220
virtual int typeId() const
Definition: Polyline.cpp:374
dimePolyline()
Definition: Polyline.cpp:54
virtual bool handleRecord(const int groupcode, const dimeParam ¶m, dimeMemHandler *const memhandler)
Definition: Polyline.cpp:382
The dimeMatrix class is for containing and operating on a four-by-four matrix.
Definition: Linear.h:158
virtual int typeId() const
Definition: ExtrusionEntity.cpp:96
bool preWrite(dimeOutput *const file)
Definition: Entity.cpp:738
int getIndex(const int idx) const
Definition: Vertex.cpp:135
virtual int countRecords() const
Definition: Vertex.cpp:219
The dimeModel class organizes a model.
Definition: Model.h:54
virtual dimeEntity * copy(dimeModel *const model) const =0
The dimeState class manages various state variables while the model is traversed.
Definition: State.h:40
The dimePoint class handles a POINT entity.
Definition: Point.h:40
virtual int countRecords() const
Definition: ExtrusionEntity.cpp:113
void setIndexVertices(dimeVertex **vertices, const int num, dimeMemHandler *const memhandler=NULL)
Definition: Polyline.cpp:805
virtual bool getRecord(const int groupcode, dimeParam ¶m, const int index=0) const
Definition: Polyline.cpp:444
virtual const char * getEntityName() const =0
virtual bool write(dimeOutput *const out)
Definition: Polyline.cpp:261
The dxfConverter class offers a simple interface for dxf converting. It makes it possible to extract ...
Definition: convert.h:44
The dimeParam class is a union of the different parameter types.
Definition: Basic.h:102
class dimeMemHandler * getMemHandler()
Definition: Model.cpp:351
virtual const char * getEntityName() const
Definition: Polyline.cpp:436
virtual bool getRecord(const int groupcode, dimeParam ¶m, const int index=0) const
Definition: ExtrusionEntity.cpp:155
virtual bool write(dimeOutput *const out)
Definition: Entity.cpp:271
int count() const
Definition: Array.h:256
bool writeInt32(const int32 val)
Definition: Output.cpp:178
The dimeVertex class handles a VERTEX entity.
Definition: Vertex.h:42
virtual bool getRecord(const int groupcode, dimeParam ¶m, const int index=0) const
Definition: Point.cpp:131
virtual void setLayer(const dimeLayer *const layer)
Definition: Entity.cpp:648
virtual bool handleRecord(const int groupcode, const dimeParam ¶m, dimeMemHandler *const memhandler)
Definition: ExtrusionEntity.cpp:135
static dimeEntity * createEntity(const char *const name, dimeMemHandler *const memhandler=NULL)
Definition: Entity.cpp:281
virtual bool read(dimeInput *const in)
Definition: Polyline.cpp:170
int numIndices() const
Definition: Vertex.cpp:121
The dimeMemHandler class is a special-purpose memory manager.
Definition: MemHandler.h:38
virtual bool traverse(const dimeState *const state, dimeCallback callback, void *userdata)
Definition: Entity.cpp:541
The dimeOutput class handles writing of DXF and DXB files.
Definition: Output.h:41
int getType() const
Definition: Polyline.cpp:499
The dimeVec3f class is for containing and operating on a 3D vector / coordinate.
Definition: Linear.h:61
void setCount(const int count)
Definition: Array.h:249
static bool copyEntityArray(const dimeEntity *const *const array, const int nument, dimeModel *const model, dimeArray< dimeEntity * > &destarray)
Definition: Entity.cpp:426
bool writeString(const char *const str)
Definition: Output.cpp:222
virtual int countRecords() const
Definition: Polyline.cpp:694
virtual GeometryType extractGeometry(dimeArray< dimeVec3f > &verts, dimeArray< int > &indices, dimeVec3f &extrusionDir, dxfdouble &thickness)
Definition: Entity.cpp:583
The dimePolyline class handles a POLYLINE entity.
Definition: Polyline.h:44
The dimeExtrusionEntity class is the superclass of all entity classes with extrusion data.
Definition: ExtrusionEntity.h:38
const char * getLayerName() const
Definition: Entity.cpp:463
bool writeDouble(const dxfdouble val)
Definition: Output.cpp:205
bool writeGroupCode(const int groupcode)
Definition: Output.cpp:139
Copyright © by Kongsberg Oil & Gas Technologies. All rights reserved.
Generated on Tue Mar 24 2020 14:02:59 for Dime by Doxygen 1.8.17.