Gizmo3D

gzBezier.h

Go to the documentation of this file.
00001 //*****************************************************************************
00002 // File         : gzBezier.h
00003 // Module       : 
00004 // Description  : Class definition of Bezier geometry classes
00005 // Author       : Anders Modén      
00006 // Product      : Gizmo3D 2.1.1
00007 //      
00008 // Copyright © 2003- Saab Training Systems AB, Sweden
00009 //          
00010 // NOTE:    Gizmo3D is a high performance 3D Scene Graph and effect visualisation 
00011 //          C++ toolkit for Linux, Mac OS X, Windows (Win32) and IRIX® for  
00012 //          usage in Game or VisSim development.
00013 //
00014 //
00015 // Revision History...                          
00016 //                                  
00017 // Who  Date    Description                     
00018 //                                  
00019 // AMO  000807  Created file    
00020 //
00021 //******************************************************************************
00022 #ifndef __GZ_BEZIER_H__
00023 #define __GZ_BEZIER_H__
00024 
00030 #include "gzParametric.h"
00031 
00032 //******************************************************************************
00033 // Class    : gzBezier
00034 //                                  
00035 // Purpose  : -
00036 //                                  
00037 // Notes    : -
00038 //                                  
00039 // Revision History...                          
00040 //                                  
00041 // Who  Date    Description                     
00042 //                                  
00043 // AMO  000807  Created 
00044 //                                  
00045 //******************************************************************************
00052 class gzBezier : public gzParametricGeometry
00053 {
00054 public:
00055 
00056     GZ_GRAPH_EXPORT gzBezier(const gzString & name=GZ_EMPTY_STRING);
00057     GZ_GRAPH_EXPORT virtual ~gzBezier(){};
00058 
00059     GZ_DECLARE_TYPE_INTERFACE_EXPORT(GZ_GRAPH_EXPORT);  // typed interface
00060 
00061 
00062     // ---------- Clone interface ---------------------------------------
00063     
00064     GZ_GRAPH_EXPORT virtual gzReference* clone() const;
00065 
00066     // ---------- Bezier interface ---------------------------------------
00067     
00068     GZ_GRAPH_EXPORT gzVoid  setControlPointSize( gzUShort sizeX , gzUShort sizeY );
00069 
00070     GZ_GRAPH_EXPORT gzVoid  setControlPoint( gzUShort pointX , gzUShort pointY , const gzVec3 &data );
00071 
00072     GZ_GRAPH_EXPORT gzVoid  setControlPointData( const gzArray<gzVec3> &data);
00073 
00074     GZ_GRAPH_EXPORT gzVoid  setControlPointData( const gzMatrix<gzVec3> &data);
00075 
00076     // ---------- Parametric ---------------------------------------------
00077 
00078     GZ_GRAPH_EXPORT virtual gzVec3 getCoordinate(gzDouble s , gzDouble t);
00079 
00080 
00081 
00082 private:
00083 
00084     gzArray< gzVec3 >   m_controlPoints;
00085 
00086     gzArray< gzVec3 >   m_bufferPoints;
00087 
00088     gzUShort            m_sizeX,m_sizeY;
00089 };
00090 
00091 
00092 #endif
00093 

Documentation for Gizmo3D generated at Wed Feb 20 11:54:03 2008 by   Saab Training Systems AB, ¸ (c) 2003-and beyond