ext
laslib
inc
lastransform.hpp
Go to the documentation of this file.
1
/*
2
===============================================================================
3
4
FILE: lastransform.hpp
5
6
CONTENTS:
7
8
Transforms LIDAR points with a number of different operations.
9
10
PROGRAMMERS:
11
12
martin.isenburg@gmail.com
13
14
COPYRIGHT:
15
16
(c) 2007-2011, Martin Isenburg, LASSO - tools to catch reality
17
18
This is free software; you can redistribute and/or modify it under the
19
terms of the GNU Lesser General Licence as published by the Free Software
20
Foundation. See the COPYING file for more information.
21
22
This software is distributed WITHOUT ANY WARRANTY and without even the
23
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
24
25
CHANGE HISTORY:
26
27
18 December 2011 -- added '-flip_waveform_direction' to deal with Riegl's data
28
20 March 2011 -- added -translate_raw_xyz after the fullest of full moons
29
21 January 2011 -- re-created after matt told me about the optech dashmap bug
30
31
===============================================================================
32
*/
33
#ifndef LAS_TRANSFORM_HPP
34
#define LAS_TRANSFORM_HPP
35
36
#include "
lasdefinitions.hpp
"
37
38
class
LASoperation
39
{
40
public
:
41
virtual
const
char
*
name
()
const
= 0;
42
virtual
void
transform
(
LASpoint
* point)
const
= 0;
43
virtual
~LASoperation
(){};
44
};
45
46
class
LAStransform
47
{
48
public
:
49
50
bool
change_coordinates
;
51
52
void
usage
()
const
;
53
void
clean
();
54
BOOL
parse
(
int
argc
,
char
*
argv
[]);
55
inline
BOOL
active
()
const
{
return
(
num_operations
!= 0); };
56
57
void
transform
(
LASpoint
* point)
const
;
58
59
LAStransform
();
60
~LAStransform
();
61
62
private
:
63
64
void
add_operation
(
LASoperation
* operation);
65
U32
num_operations
;
66
U32
alloc_operations
;
67
LASoperation
**
operations
;
68
};
69
70
#endif
LAStransform::change_coordinates
bool change_coordinates
Definition:
lastransform.hpp:50
LAStransform::alloc_operations
U32 alloc_operations
Definition:
lastransform.hpp:66
LAStransform::add_operation
void add_operation(LASoperation *operation)
Definition:
lastransform.cpp:933
LAStransform::~LAStransform
~LAStransform()
Definition:
lastransform.cpp:928
LAStransform::active
BOOL active() const
Definition:
lastransform.hpp:55
LASpoint
Definition:
lasdefinitions.hpp:472
LAStransform::usage
void usage() const
Definition:
lastransform.cpp:493
LASoperation::~LASoperation
virtual ~LASoperation()
Definition:
lastransform.hpp:43
LAStransform
Definition:
lastransform.hpp:46
LASoperation::name
virtual const char * name() const =0
LAStransform::parse
BOOL parse(int argc, char *argv[])
Definition:
lastransform.cpp:530
LAStransform::LAStransform
LAStransform()
Definition:
lastransform.cpp:920
LAStransform::transform
void transform(LASpoint *point) const
Definition:
lastransform.cpp:914
BOOL
int BOOL
Definition:
mydefs.hpp:57
argc
int argc
Definition:
tests_high_five_parallel.cpp:27
LAStransform::clean
void clean()
Definition:
lastransform.cpp:479
LASoperation::transform
virtual void transform(LASpoint *point) const =0
LASoperation
Definition:
lastransform.hpp:38
U32
unsigned int U32
Definition:
mydefs.hpp:39
LAStransform::num_operations
U32 num_operations
Definition:
lastransform.hpp:65
LAStransform::operations
LASoperation ** operations
Definition:
lastransform.hpp:67
argv
char ** argv
Definition:
tests_high_five_parallel.cpp:28
lasdefinitions.hpp
lvr2
Author(s): Thomas Wiemann
, Sebastian Pütz
, Alexander Mock
, Lars Kiesow
, Lukas Kalbertodt
, Tristan Igelbrink
, Johan M. von Behren
, Dominik Feldschnieders
, Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:23