contoursIntersection.h
Go to the documentation of this file.00001 #ifndef __contoursIntersection_h_INCLUDED__
00002 #define __contoursIntersection_h_INCLUDED__
00003
00004 #include "vectorFunctions.h"
00005
00006 class contoursIntersection
00007 {
00008 public:
00009 contoursIntersection ( );
00010 ~contoursIntersection ( );
00011 double Slope ( double x0, double y0,
00012 double x1, double y1 );
00013 double Normal ( double x0, double y0,
00014 double *m, double xi );
00015 void Intersection ( double x01, double y01,
00016 double x02, double y02,
00017 double mn, double m2,
00018 double *x, double *y );
00019 void SetContour1 ( std::vector<double>*InX1,
00020 std::vector<double>*InY1,
00021 std::vector<double>*InZ1 );
00022 void SetContour2 ( std::vector<double>*InX2,
00023 std::vector<double>*InY2,
00024 std::vector<double>*InZ2 );
00025
00026 void InterBetweenContours ( std::vector<double>*OutX,
00027 std::vector<double>*OutY,
00028 std::vector<double>*OutZ );
00029
00030 void PossibleIntersections ( std::vector<double>*OutX,
00031 std::vector<double>*OutY,
00032 std::vector<double>*OutZ );
00033
00034 void IntersectionPoints ( std::vector<double>*OutX,
00035 std::vector<double>*OutY,
00036 std::vector<double>*OutZ );
00037
00038 void SetErrorParameter ( double val );
00039
00040 int GetErrorBetweenContours ( double error );
00041 private:
00042 std::vector<double> _InX1;
00043 std::vector<double> _InY1;
00044 std::vector<double> _InZ1;
00045 std::vector<double> _InX2;
00046 std::vector<double> _InY2;
00047 std::vector<double> _InZ2;
00048 };
00049 #endif
00050
00051