33 lines
756 B
C++
33 lines
756 B
C++
#pragma once
|
|
|
|
#include "effects/TrackWave.h"
|
|
|
|
class DottedLine : public TrackWave {
|
|
public:
|
|
explicit DottedLine(ElectricWave* pElectricWave);
|
|
virtual ~DottedLine(void);
|
|
int m_i;
|
|
|
|
// 设置宽度
|
|
void SetWidth(int nWidth);
|
|
// 获得宽度
|
|
int GetWidth(void);
|
|
// 设置起始和终点
|
|
void SetStartAndEnd(const osg::Vec3d& vStart, const osg::Vec3d& vEnd);
|
|
|
|
protected:
|
|
// 创建圆环
|
|
virtual void CreateSingleVertex(double index, osg::Vec3dArray* pVertexArray);
|
|
// 获得渲染体
|
|
// virtual osg::PrimitiveSet* GetPrimitiveSet(int nStart, int nCount);
|
|
virtual void CreatePrimitiveSet(osg::Geometry* pGeometry, int nStart, int nCount);
|
|
// 获得属性
|
|
virtual void SetStateSet(osg::StateSet* pStateSet);
|
|
|
|
private:
|
|
int width_;
|
|
osg::Vec3d temp_;
|
|
osg::Vec3d height_;
|
|
};
|
|
|