Loading...
Searching...
No Matches
Displacement.h
Go to the documentation of this file.
1/* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2
3 This file is part of the TerraLib - a Framework for building GIS enabled applications.
4
5 TerraLib is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
9
10 TerraLib is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with TerraLib. See COPYING. If not, write to
17 TerraLib Team at <terralib-team@terralib.org>.
18 */
19
20/*!
21 \file terralib/se/Displacement.h
22
23 \brief A Displacement gives X and Y offset displacements to use for rendering a text label, graphic or other Symbolizer near a point.
24*/
25
26#ifndef __TERRALIB_SE_INTERNAL_DISPLACEMENT_H
27#define __TERRALIB_SE_INTERNAL_DISPLACEMENT_H
28
29// TerraLib
30#include "Config.h"
31
32// Boost
33#include <boost/noncopyable.hpp>
34
35namespace te
36{
37 namespace se
38 {
39// Forward declaration
40 class ParameterValue;
41
42 /*!
43 \class Displacement
44
45 \brief A Displacement gives X and Y offset displacements to use for rendering a text label, graphic or other Symbolizer near a point.
46
47 This element may be used to avoid over-plotting of
48 multiple graphic symbols used as part of the same point
49 symbol. The displacements are in units of measure above
50 and to the right of the point. The default displacement
51 is X = 0, Y = 0.
52 <br>
53 If Displacement is used in conjunction with Size and/or Rotation
54 then the graphic symbol shall be scaled and/or rotated before it is displaced.
55
56 \sa Graphic, ParameterValue, PointPlacement
57 */
58 class TESEEXPORT Displacement : public boost::noncopyable
59 {
60 public:
61
62 /** @name Initializer Methods
63 * Methods related to instantiation and destruction.
64 */
65 //@{
66
67 /*! \brief It initializes a new Displacement. */
69
70 /*! \brief Destructor. */
72
73 //@}
74
75 /** @name Accessor methods
76 * Methods used to get or set properties.
77 */
78 //@{
79
81
83
85
87
88 //@}
89
90 /*! \brief It creates a new copy of this object. */
92
93 private:
94
95 ParameterValue* m_x; //!< It gives the X offset displacement.
96 ParameterValue* m_y; //!< It gives the Y offset displacement.
97 };
98
99 } // end namespace se
100} // end namespace te
101
102#endif // __TERRALIB_SE_INTERNAL_DISPLACEMENT_H
103
A Displacement gives X and Y offset displacements to use for rendering a text label,...
Definition: Displacement.h:59
ParameterValue * m_x
It gives the X offset displacement.
Definition: Displacement.h:95
~Displacement()
Destructor.
const ParameterValue * getDisplacementY() const
const ParameterValue * getDisplacementX() const
void setDisplacementY(ParameterValue *y)
void setDisplacementX(ParameterValue *x)
Displacement()
It initializes a new Displacement.
ParameterValue * m_y
It gives the Y offset displacement.
Definition: Displacement.h:96
Displacement * clone() const
It creates a new copy of this object.
The "ParameterValueType" uses WFS-Filter expressions to give values for SE graphic parameters.
TerraLib.
#define TESEEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:201
Proxy configuration file for TerraView (see terraview_config.h).