![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2012 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvOsg/vrvOsg.h> 00013 #include <vrvOsg/DtExtrudedModelInstance.h> 00014 #include <vrvCore/DtExtrudedPolygonModel.h> 00015 00016 namespace makVrv 00017 { 00020 class DT_DLL_VRVOSG DtExtrudedPolygonModelInstance : public DtExtrudedModelInstance 00021 { 00022 public: 00023 00025 DtExtrudedPolygonModelInstance(DtDe& de); 00026 00028 virtual ~DtExtrudedPolygonModelInstance(); 00029 00031 virtual void setFill(bool); 00032 00034 virtual void setPolygonMode(DtExtrudedPolygonModel::PolygonMode mode); 00035 00036 protected: 00038 virtual void updatePoints(); 00039 00041 virtual void updatePolygons(); 00042 00044 virtual void addTop(); 00045 00047 virtual void addBottom(); 00048 00050 virtual void updateColors(); 00051 00053 virtual void updateStippling(); 00054 00056 virtual void updateScribeLine(); 00057 00059 virtual void updateGeometry(); 00060 00063 virtual bool frontAndBackFaceRendered() const; 00064 00068 virtual void calculateCenterPoints(); 00069 00070 protected: 00071 osg::ref_ptr<osg::Vec3Array> myFillArray; 00072 osg::ref_ptr<osg::Geometry> myTopGeometry; 00073 00074 osg::ref_ptr<osg::Geometry> myBottomGeometry; 00075 00076 bool myFilled; 00077 bool myPolygonsDirty; 00078 DtExtrudedPolygonModel::PolygonMode myPolygonMode; 00079 }; 00080 }