mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-11 00:39:59 +00:00
55 lines
889 B
C++
55 lines
889 B
C++
|
#ifndef OPENCS_VIEW_CELLBORDER_H
|
||
|
#define OPENCS_VIEW_CELLBORDER_H
|
||
|
|
||
|
#include <cstddef>
|
||
|
|
||
|
#include <osg/ref_ptr>
|
||
|
|
||
|
namespace osg
|
||
|
{
|
||
|
class Group;
|
||
|
class PositionAttitudeTransform;
|
||
|
}
|
||
|
|
||
|
namespace ESM
|
||
|
{
|
||
|
struct Land;
|
||
|
}
|
||
|
|
||
|
namespace CSMWorld
|
||
|
{
|
||
|
class CellCoordinates;
|
||
|
}
|
||
|
|
||
|
namespace CSVRender
|
||
|
{
|
||
|
|
||
|
class CellBorder
|
||
|
{
|
||
|
public:
|
||
|
|
||
|
CellBorder(osg::Group* cellNode, const CSMWorld::CellCoordinates& coords);
|
||
|
~CellBorder();
|
||
|
|
||
|
void buildShape(const ESM::Land& esmLand);
|
||
|
|
||
|
private:
|
||
|
|
||
|
static const int CellSize;
|
||
|
static const int VertexCount;
|
||
|
|
||
|
size_t landIndex(int x, int y);
|
||
|
float scaleToWorld(int val);
|
||
|
|
||
|
// unimplemented
|
||
|
CellBorder(const CellBorder&);
|
||
|
CellBorder& operator=(const CellBorder&);
|
||
|
|
||
|
osg::Group* mParentNode;
|
||
|
osg::ref_ptr<osg::PositionAttitudeTransform> mBaseNode;
|
||
|
|
||
|
};
|
||
|
}
|
||
|
|
||
|
#endif
|