![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: $ $Revision: $ $State: $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvCore/DtFeature.h> 00015 #include <matrix/vlVector.h> 00016 #include <vector> 00017 00018 namespace makVrv 00019 { 00023 class DT_DLL_VRVCORE DtEdgeFeature : public DtFeature 00024 { 00025 public: 00026 friend class DtFeatureSet; 00027 00028 virtual std::string generateDisplayName() const; 00029 00031 void addPoint(const DtVector& position); 00032 00035 void insertPoint(unsigned int index, const DtVector& position); 00036 00038 void removePoint(unsigned int index); 00039 00041 unsigned int numberOfPoints() const; 00042 00045 const DtVector& pointLocation(unsigned int index) const; 00046 00049 void setPointLocation(unsigned int index,const DtVector& pos); 00050 00051 protected: 00052 00055 DtEdgeFeature(DtElementID elementId,DFAD::FeatureID featureID, const DtFaccCode& feautureCode, 00056 unsigned int sourceId = 0 ); 00057 00060 virtual ~DtEdgeFeature(); 00061 00062 protected: 00063 00064 struct Point 00065 { 00066 DtVector myPosition; 00067 }; 00068 00069 typedef std::vector<Point> PointList; 00070 00071 PointList myPoints; 00072 }; 00073 } 00074