27 #include "../../../common/STLUtils.h"
28 #include "../../../maptools/MarkRendererManager.h"
29 #include "../../../se/AnchorPoint.h"
30 #include "../../../se/Displacement.h"
31 #include "../../../se/Graphic.h"
32 #include "../../../se/Mark.h"
33 #include "../../../se/Utils.h"
37 #include "ui_WellKnownGraphicWidgetForm.h"
40 #include <QGridLayout>
47 m_ui(new Ui::WellKnownGraphicWidgetForm)
55 QGridLayout* layout =
new QGridLayout(
m_ui->m_markGroupBox);
62 connect(
m_ui->m_graphicSizeDoubleSpinBox, SIGNAL(valueChanged(
const QString&)), SLOT(
setGraphicSize(
const QString&)));
63 connect(
m_ui->m_graphicAngleDoubleSpinBox, SIGNAL(valueChanged(
const QString&)), SLOT(
setGraphicAngle(
const QString&)));
82 m_graphic = graphic->
clone();
85 const std::vector<te::se::Mark*> marks = m_graphic->
getMarks();
97 std::size_t found = name->find(
"://");
98 if(found != std::string::npos)
102 m_markWidget->setMark(marks[0]);
111 return tr(
"Well Known Marker");
118 int dimension = size.width();
122 QIcon icon = QIcon(QPixmap::fromImage(img->scaled(size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation)));
133 m_graphic->setMark(0, m_markWidget->getMark());
134 emit graphicChanged();
139 setGraphicDisplacement(m_ui->m_displacementXDoubleSpinBox->text(), m_ui->m_displacementXDoubleSpinBox->text());
144 setGraphicAnchorPoint(m_ui->m_anchorPointXDoubleSpinBox->text(), m_ui->m_anchorPointYDoubleSpinBox->text());
const ParameterValue * getDisplacementX() const
A Mark specifies a geometric shape and applies coloring to it.
A Displacement gives X and Y offset displacements to use for rendering a text label, graphic or other Symbolizer near a point.
TESEEXPORT double GetDouble(const te::se::ParameterValue *param)
It gets the parameter value as a double.
A Graphic is a graphic symbol with an inherent shape, color(s), and possibly size.
The "ParameterValueType" uses WFS-Filter expressions to give values for SE graphic parameters...
void add(ExternalGraphic *g)
Graphics can either be referenced from an external URL in a common format (such as GIF or SVG)...
An AnchorPoint identifies the location inside of a text label to use an 'anchor' for positioning it r...
const ParameterValue * getDisplacementY() const
void Free(std::vector< T * > *v)
This function can be applied to a pointer to a vector of pointers.
Graphic * clone() const
It creates a new copy of this object.
static MarkRendererManager & getInstance()
It returns a reference to the singleton instance.
const ParameterValue * getAnchorPointX() const
const std::string * getWellKnownName() const
const std::vector< Mark * > getMarks() const
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
const ParameterValue * getAnchorPointY() const