48 lines
1.1 KiB
C++
48 lines
1.1 KiB
C++
/* dxfReader for OpenSceneGraph Copyright (C) 2005 by GraphArchitecture ( grapharchitecture.com )
|
|
* Programmed by Paul de Repentigny <pdr@grapharchitecture.com>
|
|
*
|
|
* OpenSceneGraph is (C) 2004 Robert Osfield
|
|
*
|
|
* This library is provided as-is, without support of any kind.
|
|
*
|
|
* Read DXF docs or OSG docs for any related questions.
|
|
*
|
|
* You may contact the author if you have suggestions/corrections/enhancements.
|
|
*/
|
|
|
|
#ifndef DXF_BLOCK
|
|
#define DXF_BLOCK 1
|
|
|
|
#include <map>
|
|
#include <vector>
|
|
#include <string>
|
|
|
|
#include <osg/Referenced>
|
|
#include <osg/Vec3d>
|
|
#include <osg/ref_ptr>
|
|
|
|
class dxfFile;
|
|
class codeValue;
|
|
class dxfEntity;
|
|
|
|
typedef std::vector<osg::ref_ptr<dxfEntity> > EntityList;
|
|
|
|
class dxfBlock : public osg::Referenced
|
|
{
|
|
public:
|
|
dxfBlock() : _currentEntity(NULL) {}
|
|
virtual ~dxfBlock() {}
|
|
inline const std::string& getName() const { return _name; }
|
|
virtual void assign(dxfFile* dxf, codeValue& cv);
|
|
EntityList& getEntityList() { return _entityList; }
|
|
const osg::Vec3d& getPosition() const;
|
|
|
|
protected:
|
|
EntityList _entityList;
|
|
dxfEntity* _currentEntity;
|
|
std::string _name;
|
|
osg::Vec3d _position;
|
|
};
|
|
|
|
#endif
|