SimpleNGL 1.0
|
00001 #ifndef SURFACESPHERICALDEFORMER_H 00002 #define SURFACESPHERICALDEFORMER_H 00003 00004 #include "SphericalDeformer_ispc.h" 00005 #include "OpenEXR/ImathVec.h" 00006 00008 00011 class SurfaceSphericalDeformer 00012 { 00013 public: 00015 SurfaceSphericalDeformer(); 00016 00020 SurfaceSphericalDeformer( const Imath::V3f &_centre, const float &_radius); 00021 00023 ~SurfaceSphericalDeformer(){} 00024 00026 Imath::V3f& pos(){return m_centre;} 00027 00029 float& rad(){return m_radius;} 00030 00035 void serial_deform(Imath::V3f *i_points, Imath::V3f* o_points, int count); 00036 00041 void ispc_deform(Imath::V3f *i_points, Imath::V3f* o_points, int count); 00042 00043 private: 00045 Imath::V3f m_centre; 00047 float m_radius; 00048 }; 00049 00050 #endif // SURFACESPHERICALDEFORMER_H