Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::PointSet Class Reference

Data structure which stores a set of points. More...

#include <mitkPointSet.h>

Inheritance diagram for mitk::PointSet:
Collaboration diagram for mitk::PointSet:

Classes

struct  CellDataType
 Data associated with a cell in the mesh. More...
 
struct  PointDataType
 Data associated with each point in the PointSet. More...
 

Public Types

typedef mitk::ScalarType CoordinateType
 Scalar type for point coordinates. More...
 
typedef mitk::ScalarType InterpolationWeightType
 Scalar type for interpolation weights. More...
 
typedef std::vector< unsigned int > SelectedLinesType
 Type for storing indices of selected lines between points. More...
 
typedef SelectedLinesType::iterator SelectedLinesIter
 Iterator for SelectedLinesType. More...
 
typedef itk::DefaultDynamicMeshTraits< PointDataType, PointDimension, MaxTopologicalDimension, CoordinateType, InterpolationWeightType, CellDataType > MeshTraits
 
typedef itk::Mesh< PointDataType, PointDimension, MeshTraits > MeshType
 
typedef MeshType DataType
 
typedef Point3D PointType
 
typedef DataType::PointIdentifier PointIdentifier
 
typedef DataType::PointsContainer PointsContainer
 
typedef DataType::PointsContainerIterator PointsIterator
 
typedef DataType::PointsContainer::ConstIterator PointsConstIterator
 
typedef DataType::PointDataContainer PointDataContainer
 
typedef DataType::PointDataContainerIterator PointDataIterator
 
typedef DataType::PointDataContainerIterator PointDataConstIterator
 
- Public Types inherited from mitk::Identifiable
using UIDType = std::string
 Type alias for unique identifiers. More...
 

Public Member Functions

 mitkClassMacro (PointSet, BaseData)
 
Pointer Clone () const
 
void Expand (unsigned int timeSteps) override
 Expand the PointSet to the given number of time steps. More...
 
void ExecuteOperation (Operation *operation) override
 Execute an operation on this PointSet. More...
 
virtual int GetSize (unsigned int t=0) const
 Get the number of points at time step t. More...
 
virtual unsigned int GetPointSetSeriesSize () const
 Get the number of time steps in the point set series. More...
 
virtual DataType::Pointer GetPointSet (int t=0) const
 Get the underlying itk::Mesh at time step t. More...
 
PointsIterator Begin (int t=0)
 Get an iterator pointing to the first point at time step t. More...
 
PointsConstIterator Begin (int t=0) const
 Get an iterator pointing to the first point at time step t. More...
 
PointsIterator End (int t=0)
 Get an iterator pointing past the last point at time step t. More...
 
PointsConstIterator End (int t=0) const
 Get an iterator pointing past the last point at time step t. More...
 
PointsIterator GetMaxId (int t=0)
 Get an iterator to the element with the maximum ID at time step t. More...
 
PointType GetPoint (PointIdentifier id, int t=0) const
 Get the point with the given ID in world coordinates. More...
 
bool GetPointIfExists (PointIdentifier id, PointType *point, int t=0) const
 Get the point with the given ID if it exists. More...
 
void SetPoint (PointIdentifier id, PointType point, int t=0)
 Set (overwrite) the point with the given ID in world coordinates. More...
 
void SetPoint (PointIdentifier id, PointType point, PointSpecificationType spec, int t=0)
 Set (overwrite) the point with the given ID and PointSpecificationType. More...
 
void InsertPoint (PointIdentifier id, PointType point, int t=0)
 Insert a point with the given ID in world coordinates. More...
 
void InsertPoint (PointIdentifier id, PointType point, PointSpecificationType spec, int t)
 Insert a point with the given ID, world coordinates, and PointSpecificationType. More...
 
PointIdentifier InsertPoint (PointType point, int t=0)
 Insert a point with an automatically assigned ID (max ID + 1). More...
 
bool RemovePointIfExists (PointIdentifier id, int t=0)
 Remove the point with the given ID at time step t, if it exists. More...
 
PointsIterator RemovePointAtEnd (int t=0)
 Remove the point with the maximum ID at time step t. More...
 
bool SwapPointPosition (PointIdentifier id, bool moveUpwards, int t=0)
 Swap a point with its neighbor in the ordered container. More...
 
virtual int SearchSelectedPoint (int t=0) const
 Search for a selected point and return its ID. More...
 
virtual void ClearSelection ()
 Deselect all points in all time steps. More...
 
virtual bool IndexExists (int position, int t=0) const
 Check whether a point exists at the given position (index). More...
 
virtual bool GetSelectInfo (int position, int t=0) const
 Get the selection state of the point at the given position. More...
 
virtual void SetSelectInfo (int position, bool selected, int t=0)
 Set the selection state of the point at the given position. More...
 
virtual PointSpecificationType GetSpecificationTypeInfo (int position, int t) const
 Get the PointSpecificationType of the point at the given position. More...
 
virtual int GetNumberOfSelected (int t=0) const
 Get the number of selected points at time step t. More...
 
int SearchPoint (Point3D point, ScalarType distance, int t=0) const
 Search for the closest point within a given distance. More...
 
bool IsEmptyTimeStep (unsigned int t) const override
 Check whether the point set is empty at time step t. More...
 
void UpdateOutputInformation () override
 Update the output information (bounding box, geometry). More...
 
void SetRequestedRegionToLargestPossibleRegion () override
 Set the requested region to the largest possible region (no-op for PointSet). More...
 
bool RequestedRegionIsOutsideOfTheBufferedRegion () override
 Check whether the requested region is outside the buffered region. More...
 
bool VerifyRequestedRegion () override
 Verify that the requested region is valid. More...
 
void SetRequestedRegion (const itk::DataObject *data) override
 Set the requested region from another data object (no-op for PointSet). More...
 
virtual void OnPointSetChange ()
 Hook method called when the point set content changes. More...
 
- Public Member Functions inherited from mitk::BaseData
 mitkClassMacroItkParent (BaseData, itk::DataObject)
 
BaseProperty::ConstPointer GetConstProperty (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=true) const override
 Get a const property by its key. More...
 
std::vector< std::string > GetPropertyKeys (const std::string &contextName="", bool includeDefaultContext=false) const override
 Get all property keys stored in the property list. More...
 
std::vector< std::string > GetPropertyContextNames () const override
 Get the names of all property contexts. More...
 
BaseProperty * GetNonConstProperty (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=true) override
 Get a non-const property by its key. More...
 
void SetProperty (const std::string &propertyKey, BaseProperty *property, const std::string &contextName="", bool fallBackOnDefaultContext=false) override
 Set a property in the property list. More...
 
void RemoveProperty (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=false) override
 Remove a property from the property list. More...
 
const mitk::TimeGeometry * GetTimeGeometry () const
 Return the TimeGeometry of the data as const pointer. More...
 
mitk::TimeGeometry * GetTimeGeometry ()
 Return the TimeGeometry of the data as non-const pointer. More...
 
const mitk::TimeGeometry * GetUpdatedTimeGeometry ()
 Return the TimeGeometry of the data after ensuring it is up-to-date. More...
 
const mitk::BaseGeometry * GetUpdatedGeometry (int t=0)
 Return the BaseGeometry of the data at time step t after ensuring it is up-to-date. More...
 
mitk::BaseGeometry * GetGeometry (int t=0) const
 Return the BaseGeometry of the data at time step t as a non-const pointer. More...
 
void UpdateOutputInformation () override
 Update the information for this BaseData so that it can be used as an output of a BaseProcess. More...
 
void CopyInformation (const itk::DataObject *data) override
 Copy information from the specified data set. More...
 
virtual bool IsInitialized () const
 Check whether the data has been initialized. More...
 
virtual void Clear ()
 Reset the data object by calling ClearData() and InitializeEmpty(). More...
 
virtual bool IsEmpty () const
 Check whether the object contains data at any time step. More...
 
virtual void SetGeometry (BaseGeometry *aGeometry3D)
 Set the BaseGeometry of the data, which will be referenced (not copied!). More...
 
virtual void SetTimeGeometry (TimeGeometry *geometry)
 Set the TimeGeometry of the data, which will be referenced (not copied!). More...
 
virtual void SetClonedGeometry (const BaseGeometry *aGeometry3D)
 Set a clone of the provided geometry as the BaseGeometry of the data. More...
 
virtual void SetClonedTimeGeometry (const TimeGeometry *geometry)
 Set a clone of the provided TimeGeometry as the TimeGeometry of the data. More...
 
virtual void SetClonedGeometry (const BaseGeometry *aGeometry3D, unsigned int time)
 Set a clone of the provided geometry as the BaseGeometry of a given time step. More...
 
mitk::PropertyList::Pointer GetPropertyList () const
 Get the data's property list. More...
 
void SetPropertyList (PropertyList *propertyList)
 Set the data's property list, replacing the existing one. More...
 
mitk::BaseProperty::Pointer GetProperty (const char *propertyKey) const
 Get a property by its key from the PropertyList. More...
 
void SetProperty (const char *propertyKey, BaseProperty *property)
 Set a property in the PropertyList. More...
 
virtual void SetOrigin (const Point3D &origin)
 Convenience method for setting the origin of the BaseGeometry instances of all time steps. More...
 
itk::SmartPointer< mitk::BaseDataSource > GetSource () const
 Get the process object that generated this data object. More...
 
unsigned int GetTimeSteps () const
 Get the number of time steps from the TimeGeometry. More...
 
itk::ModifiedTimeType GetMTime () const override
 Get the modification time of this data object or its geometry, whichever was modified most recently. More...
 
void Graft (const DataObject *) override
 Graft data and information from another data object. More...
 
- Public Member Functions inherited from mitk::OperationActor
 itkTypeMacroNoParent (OperationActor) virtual ~OperationActor()
 
- Public Member Functions inherited from mitk::Identifiable
 Identifiable ()
 Default constructor. Generates a new random UID. More...
 
 Identifiable (const UIDType &uid)
 Construct with a pre-existing UID. More...
 
 Identifiable (const Identifiable &)=delete
 Copy construction is deleted to prevent UID duplication. More...
 
 Identifiable (Identifiable &&) noexcept
 Move constructor. Transfers ownership of the UID. More...
 
virtual ~Identifiable ()
 Virtual destructor. More...
 
Identifiable & operator= (const Identifiable &)=delete
 Copy assignment is deleted to prevent UID duplication. More...
 
Identifiable & operator= (Identifiable &&other) noexcept
 Move assignment operator. Transfers ownership of the UID. More...
 
virtual UIDType GetUID () const
 Get the unique identifier of this object. More...
 
UIDType GetRuntimeUID () const noexcept
 Get a runtime-unique ID for this object instance. More...
 
- Public Member Functions inherited from mitk::IPropertyOwner
 ~IPropertyOwner () override
 
virtual bool PropertyIsOwned (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=true) const
 Checks if a certain property exists. More...
 
- Public Member Functions inherited from mitk::IPropertyProvider
virtual ~IPropertyProvider ()
 Virtual destructor. More...
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int PointDimension
 Points are 3-dimensional. More...
 
static const unsigned int MaxTopologicalDimension
 Maximum topological dimension of mesh cells. More...
 

Protected Types

typedef std::vector< DataType::Pointer > PointSetSeries
 

Protected Member Functions

 mitkCloneMacro (Self)
 
 PointSet ()
 
 PointSet (const PointSet &other)
 
 ~PointSet () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 print content of the object to os More...
 
void ClearData () override
 reset to non-initialized state, release memory More...
 
void InitializeEmpty () override
 Pure virtual; Must be used in subclasses to get a data object to a valid state. Should at least create one empty object and call Superclass::InitializeTimeGeometry() to ensure an existing valid geometry. More...
 
bool SwapPointContents (PointIdentifier id1, PointIdentifier id2, int t=0)
 swaps point coordinates and point data of the points with identifiers id1 and id2 More...
 
- Protected Member Functions inherited from mitk::BaseData
 BaseData ()
 
 BaseData (const BaseData &other)
 
 ~BaseData () override
 
virtual void InitializeTimeGeometry (unsigned int timeSteps=1)
 Initialize the TimeGeometry for a number of time steps. The TimeGeometry is initialized empty and evenly timed. In many cases it will be necessary to overwrite this in sub-classes. More...
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
- Protected Member Functions inherited from mitk::Identifiable
virtual void SetUID (const UIDType &uid)
 

Protected Attributes

PointSetSeries m_PointSetSeries
 
DataType::PointsContainer::Pointer m_EmptyPointsContainer
 
bool m_CalculateBoundingBox
 flag to indicate the right time to call SetBounds More...
 
- Protected Attributes inherited from mitk::BaseData
bool m_LastRequestedRegionWasOutsideOfTheBufferedRegion
 
unsigned int m_SourceOutputIndexDuplicate
 
bool m_Initialized
 

Detailed Description

Data structure which stores a set of points.

3D points are grouped within a point set; for time resolved usage, one point set is created and maintained per time step. A point entry consists of the point coordinates and point data.

The point data includes a point ID (unique identifier to address this point within the point set), the selection state of the point and the type of the point.

For further information about different point types see mitk::PointSpecificationType in mitkVector.h.

Inserting a point is accompanied by an event, containing an index. The new point is inserted into the list at the specified position. At the same time an internal ID is generated and stored for the point. Points at specific time steps are accessed by specifying the time step number (which defaults to 0).

The points of itk::PointSet stores the points in a pointContainer (MapContainer). The points are best accessed by using a ConstIterator (as defined in MapContainer); avoid access via index.

The class internally uses an itk::Mesh for each time step.

mitkPointSetDisplayOptions

The default mappers for this data structure are mitk::PointSetVtkMapper2D and mitk::PointSetVtkMapper3D. See these classes for display options which can can be set via properties.

Events

PointSet issues the following events, for which observers can register (the below events are grouped into a class hierarchy as indicated by indentation level; e.g. PointSetSizeChangeEvent comprises PointSetAddEvent and PointSetRemoveEvent):

PointSetEvent subsumes all PointSet events PointSetMoveEvent issued when a point of the PointSet is moved PointSetSizeChangeEvent subsumes add and remove events PointSetAddEvent issued when a point is added to the PointSet PointSetRemoveEvent issued when a point is removed from the PointSet

Definition at line 70 of file mitkPointSet.h.

Member Typedef Documentation

◆ CoordinateType

Scalar type for point coordinates.

Definition at line 80 of file mitkPointSet.h.

◆ DataType

Definition at line 141 of file mitkPointSet.h.

◆ InterpolationWeightType

Scalar type for interpolation weights.

Definition at line 83 of file mitkPointSet.h.

◆ MeshTraits

◆ MeshType

Definition at line 139 of file mitkPointSet.h.

◆ PointDataConstIterator

typedef DataType::PointDataContainerIterator mitk::PointSet::PointDataConstIterator

Definition at line 149 of file mitkPointSet.h.

◆ PointDataContainer

typedef DataType::PointDataContainer mitk::PointSet::PointDataContainer

Definition at line 147 of file mitkPointSet.h.

◆ PointDataIterator

typedef DataType::PointDataContainerIterator mitk::PointSet::PointDataIterator

Definition at line 148 of file mitkPointSet.h.

◆ PointIdentifier

typedef DataType::PointIdentifier mitk::PointSet::PointIdentifier

Definition at line 143 of file mitkPointSet.h.

◆ PointsConstIterator

typedef DataType::PointsContainer::ConstIterator mitk::PointSet::PointsConstIterator

Definition at line 146 of file mitkPointSet.h.

◆ PointsContainer

typedef DataType::PointsContainer mitk::PointSet::PointsContainer

Definition at line 144 of file mitkPointSet.h.

◆ PointSetSeries

typedef std::vector<DataType::Pointer> mitk::PointSet::PointSetSeries
protected

Definition at line 469 of file mitkPointSet.h.

◆ PointsIterator

typedef DataType::PointsContainerIterator mitk::PointSet::PointsIterator

Definition at line 145 of file mitkPointSet.h.

◆ PointType

Definition at line 142 of file mitkPointSet.h.

◆ SelectedLinesIter

typedef SelectedLinesType::iterator mitk::PointSet::SelectedLinesIter

Iterator for SelectedLinesType.

Definition at line 120 of file mitkPointSet.h.

◆ SelectedLinesType

typedef std::vector<unsigned int> mitk::PointSet::SelectedLinesType

Type for storing indices of selected lines between points.

For example, given points A, B, and C: index 0 is the line between A and B, index 1 is between B and C, and index 2 between C and A.

Definition at line 117 of file mitkPointSet.h.

Constructor & Destructor Documentation

◆ PointSet() [1/2]

mitk::PointSet::PointSet ( )
protected

◆ PointSet() [2/2]

mitk::PointSet::PointSet ( const PointSet &  other)
protected

◆ ~PointSet()

mitk::PointSet::~PointSet ( )
overrideprotected

Member Function Documentation

◆ Begin() [1/2]

PointsIterator mitk::PointSet::Begin ( int  t = 0)

Get an iterator pointing to the first point at time step t.

Parameters
[in]tTime step (default: 0).
Returns
A PointsIterator to the first point, or End() if the time step is out of range.

◆ Begin() [2/2]

PointsConstIterator mitk::PointSet::Begin ( int  t = 0) const

Get an iterator pointing to the first point at time step t.

Parameters
[in]tTime step (default: 0).
Returns
A PointsIterator to the first point, or End() if the time step is out of range.

◆ ClearData()

void mitk::PointSet::ClearData ( )
overrideprotectedvirtual

reset to non-initialized state, release memory

Reimplemented from mitk::BaseData.

◆ ClearSelection()

virtual void mitk::PointSet::ClearSelection ( )
virtual

Deselect all points in all time steps.

◆ Clone()

Pointer mitk::PointSet::Clone ( ) const

◆ End() [1/2]

PointsIterator mitk::PointSet::End ( int  t = 0)

Get an iterator pointing past the last point at time step t.

Parameters
[in]tTime step (default: 0).
Returns
A PointsIterator past the last point.

◆ End() [2/2]

PointsConstIterator mitk::PointSet::End ( int  t = 0) const

Get an iterator pointing past the last point at time step t.

Parameters
[in]tTime step (default: 0).
Returns
A PointsIterator past the last point.

◆ ExecuteOperation()

void mitk::PointSet::ExecuteOperation ( Operation *  operation)
overridevirtual

Execute an operation on this PointSet.

Supports OpINSERT, OpMOVE, OpREMOVE, OpSELECTPOINT, OpDESELECTPOINT, OpSETPOINTTYPE, OpMOVEPOINTUP, and OpMOVEPOINTDOWN.

Parameters
[in]operationThe operation to execute. Must be a PointOperation.
See also
mitk::PointOperation, mitk::OperationActor

Reimplemented from mitk::BaseData.

◆ Expand()

void mitk::PointSet::Expand ( unsigned int  timeSteps)
overridevirtual

Expand the PointSet to the given number of time steps.

Creates new empty point containers for the additional time steps.

Parameters
[in]timeStepsThe desired number of time steps.

Reimplemented from mitk::BaseData.

◆ GetMaxId()

PointsIterator mitk::PointSet::GetMaxId ( int  t = 0)

Get an iterator to the element with the maximum ID at time step t.

Parameters
[in]tTime step (default: 0).
Returns
A PointsIterator to the max-ID element, or End() if the PointSet is empty or the time step is out of range.

◆ GetNumberOfSelected()

virtual int mitk::PointSet::GetNumberOfSelected ( int  t = 0) const
virtual

Get the number of selected points at time step t.

Parameters
[in]tTime step (default: 0).
Returns
The number of selected points.

◆ GetPoint()

PointType mitk::PointSet::GetPoint ( PointIdentifier  id,
int  t = 0 
) const

Get the point with the given ID in world coordinates.

If the ID does not exist, returns (0, 0, 0).

Parameters
[in]idThe point identifier.
[in]tTime step (default: 0).
Returns
The point in world coordinates.

◆ GetPointIfExists()

bool mitk::PointSet::GetPointIfExists ( PointIdentifier  id,
PointType *  point,
int  t = 0 
) const

Get the point with the given ID if it exists.

If a point exists for the ID, it is written to point (in world coordinates) and the method returns true. Otherwise returns false.

Parameters
[in]idThe point identifier.
[out]pointReceives the point coordinates on success.
[in]tTime step (default: 0).
Returns
True if the point was found, false otherwise.

◆ GetPointSet()

virtual DataType::Pointer mitk::PointSet::GetPointSet ( int  t = 0) const
virtual

Get the underlying itk::Mesh at time step t.

Parameters
[in]tTime step (default: 0).
Returns
Smart pointer to the mesh data, or nullptr if t is out of range.

◆ GetPointSetSeriesSize()

virtual unsigned int mitk::PointSet::GetPointSetSeriesSize ( ) const
virtual

Get the number of time steps in the point set series.

Returns
The number of time steps.

◆ GetSelectInfo()

virtual bool mitk::PointSet::GetSelectInfo ( int  position,
int  t = 0 
) const
virtual

Get the selection state of the point at the given position.

Parameters
[in]positionThe point index.
[in]tTime step (default: 0).
Returns
True if the point is selected, false otherwise.

◆ GetSize()

virtual int mitk::PointSet::GetSize ( unsigned int  t = 0) const
virtual

Get the number of points at time step t.

Parameters
[in]tTime step (default: 0).
Returns
The number of points, or 0 if the time step is out of range.

◆ GetSpecificationTypeInfo()

virtual PointSpecificationType mitk::PointSet::GetSpecificationTypeInfo ( int  position,
int  t 
) const
virtual

Get the PointSpecificationType of the point at the given position.

Parameters
[in]positionThe point index.
[in]tTime step.
Returns
The point specification type, or PTUNDEFINED if the point does not exist.

◆ IndexExists()

virtual bool mitk::PointSet::IndexExists ( int  position,
int  t = 0 
) const
virtual

Check whether a point exists at the given position (index).

Parameters
[in]positionThe point index to check.
[in]tTime step (default: 0).
Returns
True if a point exists at the given position.

◆ InitializeEmpty()

void mitk::PointSet::InitializeEmpty ( )
overrideprotectedvirtual

Pure virtual; Must be used in subclasses to get a data object to a valid state. Should at least create one empty object and call Superclass::InitializeTimeGeometry() to ensure an existing valid geometry.

Reimplemented from mitk::BaseData.

◆ InsertPoint() [1/3]

void mitk::PointSet::InsertPoint ( PointIdentifier  id,
PointType  point,
int  t = 0 
)

Insert a point with the given ID in world coordinates.

Unlike SetPoint, this uses the container's InsertElement, which preserves existing elements at other indices.

Parameters
[in]idThe point identifier.
[in]pointThe point in world coordinates.
[in]tTime step (default: 0).

◆ InsertPoint() [2/3]

void mitk::PointSet::InsertPoint ( PointIdentifier  id,
PointType  point,
PointSpecificationType  spec,
int  t 
)

Insert a point with the given ID, world coordinates, and PointSpecificationType.

If t is beyond the current number of time steps the PointSet is automatically expanded to accommodate it, matching the behaviour of SetPoint() and the other InsertPoint() overloads.

Parameters
[in]idThe point identifier.
[in]pointThe point in world coordinates.
[in]specThe point specification type.
[in]tTime step.

◆ InsertPoint() [3/3]

PointIdentifier mitk::PointSet::InsertPoint ( PointType  point,
int  t = 0 
)

Insert a point with an automatically assigned ID (max ID + 1).

Parameters
[in]pointThe point in world coordinates.
[in]tTime step (default: 0).
Returns
The identifier assigned to the new point.

◆ IsEmptyTimeStep()

bool mitk::PointSet::IsEmptyTimeStep ( unsigned int  t) const
overridevirtual

Check whether the point set is empty at time step t.

Parameters
[in]tThe time step to check.
Returns
True if the PointSet is initialized and has zero points at time step t.

Reimplemented from mitk::BaseData.

◆ mitkClassMacro()

mitk::PointSet::mitkClassMacro ( PointSet  ,
BaseData   
)

◆ mitkCloneMacro()

mitk::PointSet::mitkCloneMacro ( Self  )
protected

◆ New()

static Pointer mitk::PointSet::New ( )
static

◆ OnPointSetChange()

virtual void mitk::PointSet::OnPointSetChange ( )
inlinevirtual

Hook method called when the point set content changes.

Subclasses can override this to react to modifications.

Definition at line 451 of file mitkPointSet.h.

◆ PrintSelf()

void mitk::PointSet::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

print content of the object to os

◆ RemovePointAtEnd()

PointsIterator mitk::PointSet::RemovePointAtEnd ( int  t = 0)

Remove the point with the maximum ID at time step t.

Parameters
[in]tTime step (default: 0).
Returns
An iterator to the new last point, or End() if the set is empty.

◆ RemovePointIfExists()

bool mitk::PointSet::RemovePointIfExists ( PointIdentifier  id,
int  t = 0 
)

Remove the point with the given ID at time step t, if it exists.

Parameters
[in]idThe point identifier.
[in]tTime step (default: 0).
Returns
True if the point was found and removed, false otherwise.

◆ RequestedRegionIsOutsideOfTheBufferedRegion()

bool mitk::PointSet::RequestedRegionIsOutsideOfTheBufferedRegion ( )
overridevirtual

Check whether the requested region is outside the buffered region.

Returns
Always returns false for PointSet.

Implements mitk::BaseData.

◆ SearchPoint()

int mitk::PointSet::SearchPoint ( Point3D  point,
ScalarType  distance,
int  t = 0 
) const

Search for the closest point within a given distance.

Parameters
[in]pointThe search position in world coordinates.
[in]distanceThe search radius in mm.
[in]tTime step (default: 0).
Returns
The ID of the closest point within distance, or -1 if no point was found.

◆ SearchSelectedPoint()

virtual int mitk::PointSet::SearchSelectedPoint ( int  t = 0) const
virtual

Search for a selected point and return its ID.

Parameters
[in]tTime step (default: 0).
Returns
The ID of the first selected point, or -1 if none is found.

◆ SetPoint() [1/2]

void mitk::PointSet::SetPoint ( PointIdentifier  id,
PointType  point,
int  t = 0 
)

Set (overwrite) the point with the given ID in world coordinates.

If the time step does not exist, the PointSet is expanded. The point data is initialized with default values (unselected, PTUNDEFINED).

Parameters
[in]idThe point identifier.
[in]pointThe point in world coordinates.
[in]tTime step (default: 0).

◆ SetPoint() [2/2]

void mitk::PointSet::SetPoint ( PointIdentifier  id,
PointType  point,
PointSpecificationType  spec,
int  t = 0 
)

Set (overwrite) the point with the given ID and PointSpecificationType.

Parameters
[in]idThe point identifier.
[in]pointThe point in world coordinates.
[in]specThe point specification type.
[in]tTime step (default: 0).

◆ SetRequestedRegion()

void mitk::PointSet::SetRequestedRegion ( const itk::DataObject *  data)
overridevirtual

Set the requested region from another data object (no-op for PointSet).

Parameters
[in]dataThe data object (unused).

Implements mitk::BaseData.

◆ SetRequestedRegionToLargestPossibleRegion()

void mitk::PointSet::SetRequestedRegionToLargestPossibleRegion ( )
overridevirtual

Set the requested region to the largest possible region (no-op for PointSet).

Implements mitk::BaseData.

◆ SetSelectInfo()

virtual void mitk::PointSet::SetSelectInfo ( int  position,
bool  selected,
int  t = 0 
)
virtual

Set the selection state of the point at the given position.

Parameters
[in]positionThe point index.
[in]selectedTrue to select, false to deselect.
[in]tTime step (default: 0).

◆ SwapPointContents()

bool mitk::PointSet::SwapPointContents ( PointIdentifier  id1,
PointIdentifier  id2,
int  t = 0 
)
protected

swaps point coordinates and point data of the points with identifiers id1 and id2

◆ SwapPointPosition()

bool mitk::PointSet::SwapPointPosition ( PointIdentifier  id,
bool  moveUpwards,
int  t = 0 
)

Swap a point with its neighbor in the ordered container.

If moveUpwards is true, the point at id is swapped with the point at id-1; otherwise with the point at id+1.

Parameters
[in]idThe point identifier.
[in]moveUpwardsIf true, swap with the preceding point; otherwise swap with the following point.
[in]tTime step (default: 0).
Returns
True if the swap was successful, false if the neighbor does not exist.

◆ UpdateOutputInformation()

void mitk::PointSet::UpdateOutputInformation ( )
override

Update the output information (bounding box, geometry).

◆ VerifyRequestedRegion()

bool mitk::PointSet::VerifyRequestedRegion ( )
overridevirtual

Verify that the requested region is valid.

Returns
Always returns true for PointSet.

Implements mitk::BaseData.

Member Data Documentation

◆ m_CalculateBoundingBox

bool mitk::PointSet::m_CalculateBoundingBox
protected

flag to indicate the right time to call SetBounds

Definition at line 478 of file mitkPointSet.h.

◆ m_EmptyPointsContainer

DataType::PointsContainer::Pointer mitk::PointSet::m_EmptyPointsContainer
protected

Definition at line 473 of file mitkPointSet.h.

◆ m_PointSetSeries

PointSetSeries mitk::PointSet::m_PointSetSeries
protected

Definition at line 471 of file mitkPointSet.h.

◆ MaxTopologicalDimension

const unsigned int mitk::PointSet::MaxTopologicalDimension
static

Maximum topological dimension of mesh cells.

Definition at line 89 of file mitkPointSet.h.

◆ PointDimension

const unsigned int mitk::PointSet::PointDimension
static

Points are 3-dimensional.

Definition at line 86 of file mitkPointSet.h.


The documentation for this class was generated from the following file: