27 #include "../../canvas/Canvas.h" 28 #include "../../canvas/MapDisplay.h" 29 #include "../../../../geometry/LineString.h" 30 #include "../../../../geometry/Point.h" 31 #include "../../../../geometry/Polygon.h" 32 #include "../../../../maptools/CanvasConfigurer.h" 33 #include "../../../../se/Description.h" 34 #include "../../../../se/FeatureTypeStyle.h" 35 #include "../../../../se/RasterSymbolizer.h" 36 #include "../../../../se/Rule.h" 37 #include "../../../../se/Symbolizer.h" 46 if(s->
getType() ==
"PointSymbolizer")
49 if(s->
getType() ==
"LineSymbolizer")
75 QIcon
GetRuleIcon(
const std::vector<te::se::Symbolizer*>& symbolizers)
83 std::size_t nSymbolizers = symbolizers.size();
85 for(std::size_t j = 0; j < nSymbolizers; ++j)
93 if(symb->
getType() ==
"RasterSymbolizer")
94 return QIcon::fromTheme(
"raster-symbolizer");
98 canvas.
draw(gm.get());
118 m_label = QObject::tr(
"Default Rule").toUtf8().data();
122 if (!symbolizers.empty())
127 if (rasterSymbolizer && rasterSymbolizer->
getColorMap())
141 return Qt::ItemIsUserCheckable | Qt::ItemIsEnabled;
QIcon GetRuleIcon(const std::vector< te::se::Symbolizer * > &symbolizers)
const std::string & getTitle() const
A Symbolizer describes how a feature is to appear on a map.
void setMaxScaleDenominator(const double &maxScaleDenominator)
A LinearRing is a LineString that is both closed and simple.
LineString is a curve with linear interpolation between points.
A point with x and y coordinate values.
void setPoint(std::size_t i, const double &x, const double &y)
It sets the value of the specified point.
The RasterSymbolizer describes how to render raster/matrix-coverage data (e.g., satellite photos...
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
const std::vector< Symbolizer * > & getSymbolizers() const
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
A Rule is used to attach property/scale conditions to and group the individual symbols used for rende...
virtual const std::string & getType() const =0
It returns the symbolizer type.
void setMinScaleDenominator(const double &minScaleDenominator)
const double & getMaxScaleDenominator() const
te::se::ColorMap * getColorMap() const
const Description * getDescription() const
te::gm::Geometry * GetRuleGeometry(const te::se::Symbolizer *s)
void setRingN(std::size_t i, Curve *r)
It sets the informed position ring to the new one.
A class that represents a color map of rastersymbolizer of a layer in a LayerItemModel.
const std::string * getName() const