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
ISphere.hpp
1
#pragma once
2
3
#include "DM/IGeometry.hpp"
4
#include "DM/Handle.hpp"
5
#include "DM/AutoLink.hpp"
//enable autolink
6
7
DM_NAMESPACE_BEGIN
8
9
/// \brief 3d sphere object
10
class
DM_API
ISphere
:
public
IGeometry
11
{
12
public
:
13
static
ISphere
* New();
14
static
ISphere
* New(
double
x,
double
y,
double
z,
double
r);
15
16
ISphere
*
clone
()
const override
= 0;
17
18
protected
:
19
virtual
~
ISphere
() {}
20
21
public
:
22
virtual
double
x()
const
= 0;
23
virtual
double
y()
const
= 0;
24
virtual
double
z()
const
= 0;
25
virtual
double
r()
const
= 0;
26
27
virtual
void
x(
double
) = 0;
28
virtual
void
y(
double
) = 0;
29
virtual
void
z(
double
) = 0;
30
virtual
void
r(
double
) = 0;
31
};
32
33
typedef
Handle< ISphere >
SphereHandle
;
34
35
DM_NAMESPACE_END
DM::IGeometry::clone
virtual IGeometry * clone() const =0
get an object copy
DM::ISphere
3d sphere object
Definition:
ISphere.hpp:10
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