00001
00002
00004
00005 #ifndef CONE_H
00006 #define CONE_H
00007
00008 #include "X3DTypes.h"
00009 #include "X3DGeometry3DNode.h"
00010
00011 namespace X3DTK {
00012
00017
00018 class Cone : public X3DGeometry3DNode
00019 {
00020 public:
00022 Cone();
00024 Cone(SFFloat bottomRadius,
00025 SFFloat height,
00026 SFBool side,
00027 SFBool bottom);
00029 virtual SFNode clone() const;
00031 ~Cone();
00032
00034 void setBottomRadius(SFFloat bottomRadius);
00036 void setHeight(SFFloat height);
00038 void setSide(SFBool side);
00040 void setBottom(SFBool bottom);
00041
00043 inline SFFloat getBottomRadius() const {return bottomRadius_;};
00045 inline SFFloat getHeight() const {return height_;};
00047 inline SFBool getSide() const {return side_;};
00049 inline SFBool getBottom() const {return bottom_;};
00050
00052 virtual void loadAttributes(const X3DFileElement *element);
00054 virtual SFString writeAttributes() const;
00055
00056 protected:
00058 Cone(const Cone &C);
00059
00060 private:
00061 SFFloat bottomRadius_;
00062 SFFloat height_;
00063 SFBool side_;
00064 SFBool bottom_;
00065 };
00066
00067 }
00068
00069 #endif