64 virtual int select(
Chip *inputChip,
Chip *selectionChip)=0;
67 virtual int elipticalReduction(
Chip *selectionChip,
double percent_selected,
double play,
int patience_limit);
70 int centerOfMass(
Chip *selectionChip,
double *sample,
double *line);
71 int centerOfMassWeighted(
Chip *inputChip,
Chip *selectionChip,
double *sample,
double *line);
74 bool ellipseFrom5Pts(
Ellipse *ell,
double pts[5][2]);
75 double elipsePercentSelected(
Chip *selectionChip,
Ellipse *ell);
76 std::vector<double> minimumBoundingElipse( std::vector< std::vector<int> > pts,
Ellipse *ell);
77 bool ellipseFromCubic(
Ellipse *ell,
double cubic[6]);
78 bool ellipseAxesAreaFromMatrix(
Ellipse *ell);
79 bool bestFitEllipse(
Ellipse *ell, std::vector < std::vector<int> > *pts,
double play,
unsigned int max_iter);
80 bool pointInEllipse(
Ellipse *ell,
double pt[2],
double play);
82 bool ellipseFromCenterAxesAngle(
Ellipse *ell,
double centerSample,
double centerLine,
double semiMajor,
double semiMinor,
double theta);
84 void selectionEdge(
Chip *selectionChip, std::vector < std::vector <int> > *pts);
A small chip of data used for pattern matching.
Pure Virtual Parent Class for all Selection classes
Namespace for ISIS/Bullet specific routines.