#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_; };