Technische Universität Wien
Orientation and Processing of Airborne Laser Scanning data
Department of Geodesy and Geoinformation - Research Groups Photogrammetry and Remote Sensing
distroDM
c++_api
inc
DM
ICircle.hpp
1
#pragma once
2
3
4
#include "DM/IGeometry.hpp"
5
#include "DM/Handle.hpp"
6
#include "DM/AutoLink.hpp"
//enable autolink
7
8
DM_NAMESPACE_BEGIN
9
10
/// \brief Geometry object describing a 2d circle
11
class
DM_API
ICircle
:
public
IGeometry
12
{
13
public
:
14
static
ICircle
* New();
15
static
ICircle
* New(
double
x,
double
y,
double
r);
16
17
ICircle
*
clone
()
const override
= 0;
18
protected
:
19
virtual
~
ICircle
() {}
20
21
public
:
22
virtual
double
x()
const
= 0;
23
virtual
double
y()
const
= 0;
24
virtual
double
r()
const
= 0;
25
26
virtual
void
x(
double
) = 0;
27
virtual
void
y(
double
) = 0;
28
virtual
void
r(
double
) = 0;
29
};
30
31
typedef
Handle< ICircle >
CircleHandle
;
32
33
DM_NAMESPACE_END
DM::IGeometry::clone
virtual IGeometry * clone() const =0
get an object copy
DM::ICircle
Geometry object describing a 2d circle.
Definition:
ICircle.hpp:11
DM::IGeometry
Base class of all geometry objects.
Definition:
IGeometry.hpp:26
DM::Handle
Smart pointer class using reference counting with support for DM objects (see ObjectBase)
Definition:
Handle.hpp:75