Points&Forces (survey)
Software tools facilitating the task of surveying architecture
a_pointcloud.h
Go to the documentation of this file.
1 /*
2  Copyright 2010-2016 Pierre SMARS (smars@yuntech.edu.tw)
3  This program is free software: you can redistribute it and/or modify
4  it under the terms of the GNU General Public License as published by
5  the Free Software Foundation, either version 2 of the License, or
6  (at your option) any later version.
7 
8  This program is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16 #ifndef _A_POINTCLOUD_H_
17 #define _A_POINTCLOUD_H_
18 
19 // .NAME a_pointcloud
20 // .SECTION Author
21 // Pierre Smars
22 
23 #include "vtkActor.h"
24 #include "vtkPolyData.h"
25 #include <string>
26 #include <iostream>
27 #include <vector>
28 #include "a_element.h"
29 
31 class a_pointcloud : public a_element
32 {
33  public:
34  a_pointcloud();
35  ~a_pointcloud();
36  static const std::string help();
37  void clear();
38  virtual std::string type() const {return "a_pointcloud";}
39  void point(double x, double y, double z);
40  void point(double x[3]);
41  void point(const a_point& p);
42  int np() const;
43  void eraselastpoint();
44  void dxfout(std::ostream& o) const;
45  virtual void read(std::istream& in);
46  virtual void write(std::ostream& o) const;
47  void append(const a_pointcloud&);
48  std::vector<a_point> cloud() const;
49  void reset_mapper_clipping();
50 
51  protected:
53 };
54 
55 inline bool operator!=(a_pointcloud * l, const std::string s) {return (*l) !=s;}
56 void delete_vector(std::vector<a_pointcloud *> &);
57 
58 #endif
bool operator!=(a_pointcloud *l, const std::string s)
Definition: a_pointcloud.h:55
void delete_vector(std::vector< a_pointcloud * > &)
layer used by screen to draw vector graphics
Definition: a_element.h:39
layer used by screen to draw vector graphics
Definition: a_pointcloud.h:32
virtual void read(std::istream &in)
void append(const a_pointcloud &)
int np() const
std::vector< a_point > cloud() const
bool has_points_
Definition: a_pointcloud.h:52
void point(double x, double y, double z)
void reset_mapper_clipping()
virtual std::string type() const
Definition: a_pointcloud.h:38
void dxfout(std::ostream &o) const
void eraselastpoint()
static const std::string help()
virtual void write(std::ostream &o) const
std::istringstream in
Definition: ply2tri.cxx:32