lasreadermerged.hpp
Go to the documentation of this file.
1 /*
2 ===============================================================================
3 
4  FILE: lasreadermerged.hpp
5 
6  CONTENTS:
7 
8  Reads LIDAR points from the LAS format from more than one file.
9 
10  PROGRAMMERS:
11 
12  martin.isenburg@gmail.com
13 
14  COPYRIGHT:
15 
16  (c) 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  20 January 2011 -- created missing Livermore and my Extra Virgin Olive Oil
28 
29 ===============================================================================
30 */
31 #ifndef LAS_READER_MERGED_HPP
32 #define LAS_READER_MERGED_HPP
33 
34 #include "lasreader_las.hpp"
35 #include "lasreader_bin.hpp"
36 #include "lasreader_shp.hpp"
37 #include "lasreader_qfit.hpp"
38 #include "lasreader_txt.hpp"
39 
40 class LASreaderMerged : public LASreader
41 {
42 public:
43 
44  BOOL add_file_name(const char* file_name);
45  void set_scale_factor(const F64* scale_factor);
46  void set_offset(const F64* offset);
47  void set_files_are_flightlines(BOOL flightlines);
52  void set_parse_string(const char* parse_string);
55  BOOL open();
56  BOOL reopen();
57 
60 
61  BOOL inside_tile(const F32 ll_x, const F32 ll_y, const F32 size);
62  BOOL inside_circle(const F64 center_x, const F64 center_y, const F64 radius);
63  BOOL inside_rectangle(const F64 min_x, const F64 min_y, const F64 max_x, const F64 max_y);
64 
65  I32 get_format() const;
66 
67  BOOL seek(const I64 p_index){ return FALSE; };
68 
69  ByteStreamIn* get_stream() const { return 0; };
70  void close(BOOL close_stream=TRUE);
71 
74 
75 protected:
78 
79 private:
81  void clean();
82 
99  char* parse_string;
105  char** file_names;
107  U32 inside; // 0 = none, 1 = tile, 2 = circle, 3 = rectangle
108 };
109 
110 #endif
int BOOL
Definition: mydefs.hpp:57
BOOL inside_tile(const F32 ll_x, const F32 ll_y, const F32 size)
LASreaderLAS * lasreaderlas
void set_scale_scan_angle(F32 scale_scan_angle)
#define FALSE
Definition: mydefs.hpp:133
float F32
Definition: mydefs.hpp:51
ByteStreamIn * get_stream() const
void set_parse_string(const char *parse_string)
void set_populate_header(BOOL populate_header)
void set_filter(LASfilter *filter)
unsigned int U32
Definition: mydefs.hpp:39
BOOL seek(const I64 p_index)
LASreaderSHP * lasreadershp
long long I64
Definition: mydefs.hpp:48
LASreader * lasreader
void close(BOOL close_stream=TRUE)
BOOL inside_circle(const F64 center_x, const F64 center_y, const F64 radius)
void set_translate_intensity(F32 translate_intensity)
void set_translate_scan_angle(F32 translate_scan_angle)
int I32
Definition: mydefs.hpp:35
void set_offset(const F64 *offset)
LASreaderTXT * lasreadertxt
void set_transform(LAStransform *transform)
BOOL inside_rectangle(const F64 min_x, const F64 min_y, const F64 max_x, const F64 max_y)
LASfilter * filter
Definition: lasreader.hpp:109
BOOL add_file_name(const char *file_name)
#define TRUE
Definition: mydefs.hpp:137
void set_scale_intensity(F32 scale_intensity)
void set_scale_factor(const F64 *scale_factor)
void set_files_are_flightlines(BOOL flightlines)
LASreaderQFIT * lasreaderqfit
void set_skip_lines(I32 skip_lines)
double F64
Definition: mydefs.hpp:52
LASreaderBIN * lasreaderbin
I32 get_format() const


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 Mon Feb 28 2022 22:46:07