SoFCShapeObject.h
Go to the documentation of this file.00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 #ifndef PARTGUI_SOFCSHAPEOBJECT_H
00024 #define PARTGUI_SOFCSHAPEOBJECT_H
00025 
00026 #include <Inventor/fields/SoSFUInt32.h>
00027 #include <Inventor/fields/SoSFColor.h>
00028 #include <Inventor/fields/SoSubField.h>
00029 #include <Inventor/nodes/SoSubNode.h>
00030 #include <Inventor/nodes/SoShape.h>
00031 #include <Inventor/elements/SoReplacedElement.h>
00032 
00033 namespace PartGui {
00034 
00035 class PartGuiExport SoFCControlPoints : public SoShape {
00036     typedef SoShape inherited;
00037 
00038     SO_NODE_HEADER(SoFCControlPoints);
00039 
00040 public:
00041     static void initClass();
00042     SoFCControlPoints();
00043 
00044     SoSFUInt32 numPolesU;
00045     SoSFUInt32 numPolesV;
00046     SoSFUInt32 numKnotsU;
00047     SoSFUInt32 numKnotsV;
00048     SoSFColor  lineColor;
00049 
00050 protected:
00051     virtual ~SoFCControlPoints() {};
00052     virtual void GLRender(SoGLRenderAction *action);
00053     virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f ¢er);
00054     virtual void generatePrimitives(SoAction *action);
00055 
00056 private:
00057     void drawControlPoints(const SbVec3f *,int32_t) const;
00058 };
00059 
00060 } 
00061 
00062 
00063 #endif // PARTGUI_SOFCSHAPEOBJECT_H
00064