Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkPlanarFourPointAngle.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef _MITK_PLANAR_FOURPOINTANGLE_H_
18 #define _MITK_PLANAR_FOURPOINTANGLE_H_
19 
20 #include "mitkPlanarFigure.h"
22 
23 namespace mitk
24 {
25  class PlaneGeometry;
26 
33  {
34  public:
36 
37  itkFactorylessNewMacro(Self) itkCloneMacro(Self) public :
38  // Feature identifiers
39  const unsigned int FEATURE_ID_ANGLE;
40 
46  // virtual void Initialize();
47 
49  unsigned int GetMinimumNumberOfControlPoints() const override { return 4; }
51  unsigned int GetMaximumNumberOfControlPoints() const override { return 4; }
52  virtual bool Equals(const mitk::PlanarFigure &other) const override;
53 
54  protected:
56 
57  mitkCloneMacro(Self);
58 
60  virtual void GeneratePolyLine() override;
61 
63  virtual void GenerateHelperPolyLine(double mmPerDisplayUnit, unsigned int displayHeight) override;
64 
66  virtual void EvaluateFeaturesInternal() override;
67 
68  virtual void PrintSelf(std::ostream &os, itk::Indent indent) const override;
69 
70  private:
71  };
72 
73 } // namespace mitk
74 
75 #endif //_MITK_PLANAR_FOURPOINTANGLE_H_
Implementation of PlanarFigure representing a four point angle, which is defined by two non-intersect...
Base of all data objects.
Definition: mitkBaseData.h:39
DataCollection - Class to facilitate loading/accessing structured data.
unsigned int GetMaximumNumberOfControlPoints() const override
Four point angle has 4 control points per definition.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
#define mitkCloneMacro(classname)
Definition: mitkCommon.h:162
#define MITKPLANARFIGURE_EXPORT
Base-class for geometric planar (2D) figures, such as lines, circles, rectangles, polygons...
unsigned int GetMinimumNumberOfControlPoints() const override
Place figure in its minimal configuration (a point at least) onto the given 2D geometry.