Loading...
Searching...
No Matches
MarkSymbol.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 MarkSymbol.h
22
23 \brief This file contains a class that specialize the QwtSymbol to draw a Terralib Mark.
24*/
25
26#ifndef __TERRALIB_QT_WIDGETS_INTERNAL_MARKSYMBOL_H
27#define __TERRALIB_QT_WIDGETS_INTERNAL_MARKSYMBOL_H
28
29//TerraLib
30#include "../Config.h"
31
32//QWT
33#include <qwt_symbol.h>
34
35namespace te
36{
37 // Forward declarations
38 namespace se { class Mark; }
39
40 namespace qt
41 {
42 namespace widgets
43 {
44 /*!
45 \class MarkSymbol
46
47 \brief A class that specialize the QwtSymbol to draw a Terralib Mark.
48 */
49 class TEQTWIDGETSEXPORT MarkSymbol : public QwtSymbol
50 {
51 public:
52
53 /*!
54 \brief Constructor
55
56 \note It will not take the ownership of the pointers.
57 */
58 MarkSymbol(te::se::Mark* mark, std::size_t size);
59
60 /*!
61 \brief Set the scatter data
62
63 \note It will not take the ownership of the pointers.
64 */
65 void drawSymbols(QPainter* painter, const QPointF* point, int numPoints) const;
66
67 protected:
68 te::se::Mark* m_mark; //!< The mark.
69 std::size_t m_size; //!< The mark's size
70
71 };
72 } // end namespace widgets
73 } // end namespace qt
74} // end namespace te
75
76#endif // __TERRALIB_QT_WIDGETS_INTERNAL_MARKSYMBOL_H
77
A class that specialize the QwtSymbol to draw a Terralib Mark.
Definition: MarkSymbol.h:50
te::se::Mark * m_mark
The mark.
Definition: MarkSymbol.h:68
void drawSymbols(QPainter *painter, const QPointF *point, int numPoints) const
Set the scatter data.
std::size_t m_size
The mark's size.
Definition: MarkSymbol.h:69
MarkSymbol(te::se::Mark *mark, std::size_t size)
Constructor.
A Mark specifies a geometric shape and applies coloring to it.
Definition: Mark.h:85
TerraLib.
#define TEQTWIDGETSEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:63