GTXclient C++ API  GTXserver-17.0.3
GTXPolygon.hpp
1 /*****************************************************************************
2 
3  Copyright (c)2007 Geovariances, Avon, France.
4 
5  In consideration of payment of the license fee, which is a part of
6  the price you paid for this product, Geovariances (GV) as licensor,
7  grants you, the licensee, a non-exclusive right to use this copy of a
8  GV software product.
9  GV reserves all rights not expressly granted to licensee. GV retains
10  titleship and ownership of software. This license is not a sale of
11  the original software or any copy. GV also retains titleship and
12  ownership of any modifications or derivations of this software. Any
13  modifications of this software must be clearly marked as such. This
14  copyright message must appear in its entirety in this software, or
15  any modifications or derivations thereof.
16 
17  Geovariances welcomes any comments, suggestions, bug reports, etc. At
18  the discretion of Geovariances, any customer supplied bug fixes,
19  enhancements, or utility codes will be distributed in future software
20  releases (the contributor will of course be credited).
21 
22  Geovariances
23  49bis, Avenue Franklin Roosevelt
24  77210 Avon, FRANCE
25 
26  Phone: +33-(0)-160.749.100
27  Fax: +33-(0)-164.228.728
28  e-mail: support@geovariances.fr
29 
30  All Rights Reserved
31 
32 *****************************************************************************/
33 
34 #ifndef __GTXPolygon_hpp__
35 #define __GTXPolygon_hpp__
36 
37 #define __USING_GTXSERVER_CPP_API__
38 
39 #ifdef DOXYGEN
40 #define SWIG_OR_DOXYGEN
41 #endif //DOXYGEN
42 
43 #ifdef SWIG
44 #define GLOBAL_CLASS
45 #define SWIG_OR_DOXYGEN
46 #else //SWIG
47 #include <GTXClient.h>
48 #endif //SWIG
49 
50 
51 
55 class GLOBAL_CLASS GTXPolygon
56 {
57 public:
58  GTXPolygon();
59  GTXPolygon(const GTXPolygon &fseg);
60 #ifndef SWIG
61  GTXPolygon operator=(const GTXPolygon &fseg);
62 #endif
63  ~GTXPolygon();
64 
65  const char* GetName()const;
66  const char* GetGroupName()const;
67  double GetZMin()const;
68  double GetZMax()const;
69  int GetVerticesNumber()const;
70  double GetXVertices(int rank)const;
71  double GetYVertices(int rank)const;
72 
73  void SetName(const char * name);
74  void SetGroupName(const char * group_name);
75  void SetZMin(double z_min);
76  void SetZMax(double z_max);
77  void AddVertex(double x, double y);
78 
79 
80 private:
81  GTXPolygon_C _poly;
82 
83  friend class GTXClient;
84  friend class GTXPolygonSystem;
85 };
86 
87 #endif // __GTXPolygon_hpp__