Medical Imaging Interaction Toolkit  2018.4.99-12ad79a3
Medical Imaging Interaction Toolkit
mitkPlanarArrow.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 (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef _MITK_PLANAR_ARROW_H_
14 #define _MITK_PLANAR_ARROW_H_
15 
16 #include "mitkPlanarFigure.h"
18 
19 namespace mitk
20 {
21  class PlaneGeometry;
22 
28  {
29  public:
31 
32  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
33 
34 
39  // virtual void Initialize();
40 
41 
42  unsigned int GetMinimumNumberOfControlPoints() const override
43  {
44  return 2;
45  }
46 
48  unsigned int GetMaximumNumberOfControlPoints() const override { return 2; }
49  void SetArrowTipScaleFactor(float scale);
50 
51  bool Equals(const mitk::PlanarFigure &other) const override;
52 
53  protected:
54  PlanarArrow();
55 
57 
59  void GeneratePolyLine() override;
60 
62  void GenerateHelperPolyLine(double mmPerDisplayUnit, unsigned int displayHeight) override;
63 
65  void EvaluateFeaturesInternal() override;
66 
67  void PrintSelf(std::ostream &os, itk::Indent indent) const override;
68 
69  // Feature identifiers
70  const unsigned int FEATURE_ID_LENGTH;
71 
72  // ScaleFactor defining size of helper-lines in relation to display size
74 
75  private:
76  };
77 
78 } // namespace mitk
79 
80 #endif //_MITK_PLANAR_ARROW_H_
unsigned int GetMaximumNumberOfControlPoints() const override
Line has 2 control points per definition.
Base of all data objects.
Definition: mitkBaseData.h:37
DataCollection - Class to facilitate loading/accessing structured data.
const unsigned int FEATURE_ID_LENGTH
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:40
#define mitkCloneMacro(classname)
Definition: mitkCommon.h:158
#define MITKPLANARFIGURE_EXPORT
Base-class for geometric planar (2D) figures, such as lines, circles, rectangles, polygons...
Implementation of PlanarFigure representing an arrow through two control points.