Static Public Member Functions | |
| static void | TestPlanarPolygonPlacement (mitk::PlanarPolygon::Pointer planarPolygon) |
Definition at line 23 of file mitkPlanarPolygonTest.cpp.
| static void mitkPlanarPolygonTestClass::TestPlanarPolygonPlacement | ( | mitk::PlanarPolygon::Pointer | planarPolygon ) | [inline, static] |
Definition at line 29 of file mitkPlanarPolygonTest.cpp.
References MITK_TEST_CONDITION.
Referenced by mitkPlanarPolygonTest().
{
// Test for correct minimum number of control points in cross-mode
MITK_TEST_CONDITION( planarPolygon->GetMinimumNumberOfControlPoints() == 2, "Minimum number of control points" );
// Test for correct maximum number of control points in cross-mode
MITK_TEST_CONDITION( planarPolygon->GetMaximumNumberOfControlPoints() == 1000, "Maximum number of control points" );
// Initial placement of PlanarPolygon
mitk::Point2D p0;
p0[0] = 00.0; p0[1] = 0.0;
planarPolygon->PlaceFigure( p0 );
// Add second control point
mitk::Point2D p1;
p1[0] = 50.0; p1[1] = 00.0;
planarPolygon->SetControlPoint(1, p1 );
// Add third control point
mitk::Point2D p2;
p2[0] = 50.0; p2[1] = 50.0;
planarPolygon->AddControlPoint( p2 );
// Add fourth control point
mitk::Point2D p3;
p3[0] = 0.0; p3[1] = 50.0;
planarPolygon->AddControlPoint( p3 );
// Test for number of control points
MITK_TEST_CONDITION( planarPolygon->GetNumberOfControlPoints() == 4, "Number of control points after placement" );
// Test if PlanarFigure is closed
MITK_TEST_CONDITION( planarPolygon->IsClosed(), "planar polygon should not be closed, yet, right?" );
planarPolygon->SetClosed(true);
MITK_TEST_CONDITION( planarPolygon->IsClosed(), "planar polygon should be closed after function call, right?" );
// Test for number of polylines
const mitk::PlanarFigure::VertexContainerType* polyLine0 = planarPolygon->GetPolyLine( 0 );
MITK_TEST_CONDITION( planarPolygon->GetPolyLinesSize() == 1, "Number of polylines after placement" );
// Get polylines and check if the generated coordinates are OK
const mitk::Point2D& pp0 = polyLine0->ElementAt( 0 );
const mitk::Point2D& pp1 = polyLine0->ElementAt( 1 );
MITK_TEST_CONDITION( ((pp0 == p0) && (pp1 == p1))
|| ((pp0 == p1) && (pp1 == p0)), "Correct polyline 1" );
// Test for number of measurement features
planarPolygon->EvaluateFeatures();
MITK_TEST_CONDITION( planarPolygon->GetNumberOfFeatures() == 2, "Number of measurement features" );
// Test for correct feature evaluation
double length0 = 4 * 50.0; // circumference
MITK_TEST_CONDITION( fabs( planarPolygon->GetQuantity( 0 ) - length0) < mitk::eps, "Size of longest diameter" );
double length1 = 50.0 * 50.0 ; // area
MITK_TEST_CONDITION( fabs( planarPolygon->GetQuantity( 1 ) - length1) < mitk::eps, "Size of short axis diameter" );
}
1.7.2