#include <mitkContourSet.h>


Public Types | |
| typedef ContourSet | Self |
| typedef BaseData | Superclass |
| typedef itk::SmartPointer< Self > | Pointer |
| typedef itk::SmartPointer < const Self > | ConstPointer |
| typedef std::map< unsigned long, Contour::Pointer > | ContourVectorType |
| typedef ContourVectorType::iterator | ContourIterator |
| typedef itk::BoundingBox < unsigned long, 3, ScalarType > | BoundingBoxType |
Public Member Functions | |
| virtual const char * | GetClassName () const |
| void | Initialize () |
| void | AddContour (unsigned int index, mitk::Contour::Pointer contour) |
| void | RemoveContour (unsigned long index) |
| unsigned int | GetNumberOfContours () |
| ContourVectorType | GetContours () |
| virtual void | UpdateOutputInformation () |
| virtual void | SetRequestedRegionToLargestPossibleRegion () |
| virtual bool | RequestedRegionIsOutsideOfTheBufferedRegion () |
| virtual bool | VerifyRequestedRegion () |
| virtual void | SetRequestedRegion (itk::DataObject *data) |
Static Public Member Functions | |
| static Pointer | New () |
Protected Member Functions | |
| ContourSet () | |
| virtual | ~ContourSet () |
This class holds stores vertices for drawing a contour
Definition at line 35 of file mitkContourSet.h.
| typedef itk::BoundingBox<unsigned long, 3, ScalarType> mitk::ContourSet::BoundingBoxType |
Definition at line 44 of file mitkContourSet.h.
| typedef itk::SmartPointer<const Self> mitk::ContourSet::ConstPointer |
Reimplemented from mitk::BaseData.
Definition at line 38 of file mitkContourSet.h.
| typedef ContourVectorType::iterator mitk::ContourSet::ContourIterator |
Definition at line 43 of file mitkContourSet.h.
| typedef std::map<unsigned long,Contour::Pointer> mitk::ContourSet::ContourVectorType |
Definition at line 40 of file mitkContourSet.h.
| typedef itk::SmartPointer<Self> mitk::ContourSet::Pointer |
Reimplemented from mitk::BaseData.
Definition at line 38 of file mitkContourSet.h.
| typedef ContourSet mitk::ContourSet::Self |
Reimplemented from mitk::BaseData.
Definition at line 38 of file mitkContourSet.h.
| typedef BaseData mitk::ContourSet::Superclass |
Reimplemented from mitk::BaseData.
Definition at line 38 of file mitkContourSet.h.
| mitk::ContourSet::ContourSet | ( | ) | [protected] |
Definition at line 21 of file mitkContourSet.cpp.
References mitk::BaseData::GetTimeSlicedGeometry(), and mitk::TimeSlicedGeometry::Initialize().
: m_ContourVector( ContourVectorType() ), m_NumberOfContours (0) { GetTimeSlicedGeometry()->Initialize(1); }
| mitk::ContourSet::~ContourSet | ( | ) | [protected, virtual] |
Definition at line 28 of file mitkContourSet.cpp.
{
}
| void mitk::ContourSet::AddContour | ( | unsigned int | index, |
| mitk::Contour::Pointer | contour | ||
| ) |
add a contour
Definition at line 32 of file mitkContourSet.cpp.
{
m_ContourVector.insert(std::make_pair<unsigned long, mitk::Contour::Pointer>( index , contour) );
}
| virtual const char* mitk::ContourSet::GetClassName | ( | ) | const [virtual] |
Reimplemented from mitk::BaseData.
| mitk::ContourSet::ContourVectorType mitk::ContourSet::GetContours | ( | ) |
returns the container of the contour points
Definition at line 119 of file mitkContourSet.cpp.
Referenced by mitk::ContourSetVtkMapper3D::GenerateData(), mitk::ContourSetToPointSetFilter::GenerateData(), and mitk::ContourSetMapper2D::Paint().
{
return m_ContourVector;
}
| unsigned int mitk::ContourSet::GetNumberOfContours | ( | ) |
returns the number of points stored in the contour
Definition at line 114 of file mitkContourSet.cpp.
{
return m_ContourVector.size();
}
| void mitk::ContourSet::Initialize | ( | void | ) |
clean up the contour data
Definition at line 107 of file mitkContourSet.cpp.
{
m_ContourVector = ContourVectorType();
GetTimeSlicedGeometry()->Initialize(1);
}
| static Pointer mitk::ContourSet::New | ( | ) | [static] |
Referenced by mitkDataNodeExtTestClass::TestDataSetting().
| void mitk::ContourSet::RemoveContour | ( | unsigned long | index ) |
| bool mitk::ContourSet::RequestedRegionIsOutsideOfTheBufferedRegion | ( | ) | [virtual] |
intherited from parent
Implements mitk::BaseData.
Definition at line 93 of file mitkContourSet.cpp.
{
return true;
}
| void mitk::ContourSet::SetRequestedRegion | ( | itk::DataObject * | data ) | [virtual] |
intherited from parent
Implements mitk::BaseData.
Definition at line 103 of file mitkContourSet.cpp.
{
}
| void mitk::ContourSet::SetRequestedRegionToLargestPossibleRegion | ( | ) | [virtual] |
intherited from parent
Implements mitk::BaseData.
Definition at line 89 of file mitkContourSet.cpp.
{
}
| void mitk::ContourSet::UpdateOutputInformation | ( | ) | [virtual] |
intherited from parent
Reimplemented from mitk::BaseData.
Definition at line 43 of file mitkContourSet.cpp.
References mitk::Geometry3D::GetCornerPoint(), inverse, mitk::Geometry3D::SetBounds(), and mitk::Geometry3D::SetIndexToWorldTransform().
{
mitk::ContourSet::ContourVectorType contourVec = GetContours();
mitk::ContourSet::ContourIterator contoursIterator = contourVec.begin();
mitk::ContourSet::ContourIterator contoursIteratorEnd = contourVec.end();
// initialize container
mitk::BoundingBox::PointsContainer::Pointer pointscontainer=mitk::BoundingBox::PointsContainer::New();
mitk::BoundingBox::PointIdentifier pointid=0;
mitk::Point3D point;
mitk::AffineTransform3D* transform = GetTimeSlicedGeometry()->GetIndexToWorldTransform();
mitk::AffineTransform3D::Pointer inverse = mitk::AffineTransform3D::New();
transform->GetInverse(inverse);
// calculate a bounding box that includes all contours
// \todo probably we should do this additionally for each time-step
while (contoursIterator != contoursIteratorEnd)
{
const Geometry3D* geometry = (*contoursIterator).second->GetUpdatedTimeSlicedGeometry();
unsigned char i;
for(i=0; i<8; ++i)
{
point = inverse->TransformPoint(geometry->GetCornerPoint(i));
if(point[0]*point[0]+point[1]*point[1]+point[2]*point[2] < mitk::large)
pointscontainer->InsertElement( pointid++, point);
else
{
itkGenericOutputMacro( << "Unrealistically distant corner point encountered. Ignored. BoundingObject: " << (*contoursIterator).second );
}
}
++contoursIterator;
}
mitk::BoundingBox::Pointer boundingBox = mitk::BoundingBox::New();
boundingBox->SetPoints(pointscontainer);
boundingBox->ComputeBoundingBox();
Geometry3D* geometry3d = GetGeometry(0);
geometry3d->SetIndexToWorldTransform(transform);
geometry3d->SetBounds(boundingBox->GetBounds());
GetTimeSlicedGeometry()->InitializeEvenlyTimed(geometry3d, GetTimeSlicedGeometry()->GetTimeSteps());
}
| bool mitk::ContourSet::VerifyRequestedRegion | ( | ) | [virtual] |
intherited from parent
Implements mitk::BaseData.
Definition at line 98 of file mitkContourSet.cpp.
{
return true;
}
1.7.2