00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
#ifndef DIME_EXTRUSIONENTITY_H
00031
#define DIME_EXTRUSIONENTITY_H
00032
00033
#include <dime/entities/Entity.h>
00034
00035 class DIME_DLL_API dimeExtrusionEntity :
public dimeEntity
00036 {
00037
public:
00038 dimeExtrusionEntity();
00039
00040
virtual bool getRecord(
const int groupcode,
00041
dimeParam ¶m,
00042
const int index = 0)
const;
00043
00044
void setExtrusionDir(
const dimeVec3f &v);
00045
const dimeVec3f &getExtrusionDir()
const;
00046
00047
void setThickness(
const dxfdouble val);
00048 dxfdouble getThickness()
const;
00049
00050
virtual int typeId()
const;
00051
virtual bool isOfType(
const int thtypeid)
const;
00052
virtual int countRecords()
const;
00053
00054
protected:
00055
00056
virtual bool handleRecord(
const int groupcode,
00057
const dimeParam ¶m,
00058
dimeMemHandler *
const memhandler);
00059
00060
void copyExtrusionData(
const dimeExtrusionEntity *
const entity);
00061
bool writeExtrusionData(
dimeOutput *
const out);
00062
00063
protected:
00064
dimeVec3f extrusionDir;
00065 dxfdouble thickness;
00066
00067 };
00068
00069
inline void
00070 dimeExtrusionEntity::setExtrusionDir(
const dimeVec3f &v)
00071 {
00072 this->extrusionDir = v;
00073 }
00074
00075
inline const dimeVec3f &
00076 dimeExtrusionEntity::getExtrusionDir()
const
00077
{
00078
return this->extrusionDir;
00079 }
00080
00081
inline void
00082 dimeExtrusionEntity::setThickness(
const dxfdouble val)
00083 {
00084 this->thickness = val;
00085 }
00086
00087
inline dxfdouble
00088 dimeExtrusionEntity::getThickness()
const
00089
{
00090
return this->thickness;
00091 }
00092
00093
#endif // ! DIME_EXTRUSIONENTITY_H
00094