00001 #ifndef _SM_TRISECTION_H_ 00002 #define _SM_TRISECTION_H_ 00003 00004 #pragma warning ( disable : 4786 ) 00005 00006 #include "smoothers\SmootherBase.h" 00007 #include <set> 00008 00009 //============================================================================= 00010 class SM_Trisection : public SmootherBase 00011 { 00012 public: 00013 SM_Trisection(); 00014 virtual ~SM_Trisection(); 00015 00016 virtual void Smooth(); 00017 00018 private: 00019 bool PathValid( const double start, const double end ) const; 00020 void Validate( const double start, const double end ); 00021 00022 std::set< double > m_Percentages; 00023 }; 00024 //============================================================================= 00025 #endif