Orfeo Toolbox
3.16
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
OTB
Code
Visualization
otbCurve2D.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: ORFEO Toolbox
4
Language: C++
5
Date: $Date$
6
Version: $Revision$
7
8
9
Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
10
See OTBCopyright.txt for details.
11
12
13
This software is distributed WITHOUT ANY WARRANTY; without even
14
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15
PURPOSE. See the above copyright notices for more information.
16
17
=========================================================================*/
18
#ifndef __otbCurve2D_h
19
#define __otbCurve2D_h
20
21
#include "
otbGlComponent.h
"
22
23
// FLTK includes
24
#include <FL/gl.h>
25
#include "FL/Fl_Gl_Window.H"
26
27
namespace
otb
28
{
36
class
Curve2D
37
:
public
GlComponent
38
{
39
public
:
41
typedef
Curve2D
Self
;
42
typedef
GlComponent
Superclass
;
43
typedef
itk::SmartPointer<Self>
Pointer
;
44
typedef
itk::SmartPointer<const Self>
ConstPointer
;
45
typedef
itk::ImageRegion<2>
RegionType
;
46
47
// affine transform
48
typedef
Superclass::AffineTransformType
AffineTransformType
;
49
typedef
Superclass::PointType
PointType
;
50
typedef
Superclass::VectorType
VectorType
;
51
typedef
Superclass::ColorType
ColorType
;
52
54
itkTypeMacro(
Curve2D
,
GlComponent
);
55
57
virtual
void
BeforeRendering
() {}
58
60
virtual
PointType
GetMinimum
() = 0;
61
63
virtual
PointType
GetMaximum
() = 0;
64
66
itkGetStringMacro(Label);
67
itkSetStringMacro(Label);
68
70
itkSetMacro(LabelColor,
ColorType
);
71
itkGetConstReferenceMacro(LabelColor,
ColorType
);
72
74
itkGetMacro(Id,
unsigned
int
);
75
itkSetMacro(Id,
unsigned
int
);
76
77
protected
:
79
Curve2D
() :
m_Label
(
"Curve"
),
m_LabelColor
(),
m_Id
(0)
80
{
81
// Default color
82
m_LabelColor
.
Fill
(1);
83
}
85
virtual
~Curve2D
(){}
87
void
PrintSelf
(std::ostream& os,
itk::Indent
indent)
const
88
{
89
Superclass::PrintSelf
(os, indent);
90
}
91
92
private
:
93
Curve2D
(
const
Self
&);
// purposely not implemented
94
void
operator =
(
const
Self
&);
// purposely not implemented
95
97
std::string
m_Label
;
98
100
ColorType
m_LabelColor
;
101
103
unsigned
int
m_Id
;
104
};
// end class
105
}
// end namespace otb
106
107
#endif
Generated at Sun Feb 3 2013 00:19:55 for
Orfeo Toolbox
with
doxygen 1.8.1.1