32 #include "../../../../../geometry/Envelope.h"
33 #include "../../../../../geometry/Coord2D.h"
43 m_name =
"GRID_PLANAR_MODEL";
52 delete m_settingsConfig;
74 drawVerticalLines(canvas, box);
75 drawHorizontalLines(canvas, box);
87 yInit = m_initialGridPointY;
91 int nParts = (int)(dify/m_lneVrtGap);
94 yInit = m_initialGridPointY;
98 yInit = yInit + (nParts * m_lneVrtGap);
132 xInit = m_initialGridPointX;
136 int nParts = (int)(difx/m_lneHrzGap);
139 xInit = m_initialGridPointX;
143 xInit = xInit + (nParts * m_lneHrzGap);
173 m_lneHrzGap = m_mapScale * 0.05;
178 m_lneVrtGap = m_lneHrzGap;
181 if(m_initialGridPointX <= 0)
185 if(m_initialGridPointY <= 0)
195 m_property.setName(m_settingsConfig->getName());
196 m_property.setId(
"unknown");
197 std::string sValuePlanar =
"Settings";
201 pro_name.
setName(m_settingsConfig->getName());
203 m_property.addSubProperty(pro_name);
208 pro_visible.
setName(m_settingsConfig->getVisible());
210 m_property.addSubProperty(pro_visible);
213 pro_lneHrzGap.
setName(m_settingsConfig->getLneHrzGap());
215 m_property.addSubProperty(pro_lneHrzGap);
218 pro_lneVrtGap.
setName(m_settingsConfig->getLneVrtGap());
220 m_property.addSubProperty(pro_lneVrtGap);
223 pro_initialGridPointX.
setName(m_settingsConfig->getInitialGridPointX());
225 m_property.addSubProperty(pro_initialGridPointX);
228 pro_initialGridPointY.
setName(m_settingsConfig->getInitialGridPointY());
230 m_property.addSubProperty(pro_initialGridPointY);
234 pro_gridStyle.
setName(m_settingsConfig->getStyle());
236 m_property.addSubProperty(pro_gridStyle);
240 pro_lineStyle.
setName(m_settingsConfig->getLineStyle());
242 m_property.addSubProperty(pro_lineStyle);
245 pro_lineColor.
setName(m_settingsConfig->getLineColor());
247 m_property.addSubProperty(pro_lineColor);
250 pro_lineWidth.
setName(m_settingsConfig->getLineWidth());
252 m_property.addSubProperty(pro_lineWidth);
256 pro_pointTextSize.
setName(m_settingsConfig->getPointTextSize());
258 m_property.addSubProperty(pro_pointTextSize);
261 pro_fontText.
setName(m_settingsConfig->getFontText());
263 m_property.addSubProperty(pro_fontText);
266 pro_textColor.
setName(m_settingsConfig->getTextColor());
268 m_property.addSubProperty(pro_textColor);
272 pro_visibleAllTexts.
setName(m_settingsConfig->getVisibleAllTexts());
274 m_property.addSubProperty(pro_visibleAllTexts);
277 pro_superscriptText.
setName(m_settingsConfig->getSuperscriptText());
279 m_property.addSubProperty(pro_superscriptText);
282 pro_lneVrtDisplacement.
setName(m_settingsConfig->getLneVrtDisplacement());
284 m_property.addSubProperty(pro_lneVrtDisplacement);
287 pro_lneHrzDisplacement.
setName(m_settingsConfig->getLneHrzDisplacement());
289 m_property.addSubProperty(pro_lneHrzDisplacement);
292 pro_bottomText.
setName(m_settingsConfig->getBottomText());
294 m_property.addSubProperty(pro_bottomText);
297 pro_leftText.
setName(m_settingsConfig->getLeftText());
299 m_property.addSubProperty(pro_leftText);
302 pro_rightText.
setName(m_settingsConfig->getRightText());
304 m_property.addSubProperty(pro_rightText);
307 pro_topText.
setName(m_settingsConfig->getTopText());
309 m_property.addSubProperty(pro_topText);
312 pro_bottomRotateText.
setName(m_settingsConfig->getBottomRotateText());
314 m_property.addSubProperty(pro_bottomRotateText);
317 pro_leftRotateText.
setName(m_settingsConfig->getLeftRotateText());
319 m_property.addSubProperty(pro_leftRotateText);
322 pro_rightRotateText.
setName(m_settingsConfig->getRightRotateText());
324 m_property.addSubProperty(pro_rightRotateText);
327 pro_topRotateText.
setName(m_settingsConfig->getTopRotateText());
329 m_property.addSubProperty(pro_topRotateText);
350 if(!pro_lneHrzGap.
isNull())
356 if(!pro_lneVrtGap.
isNull())
362 if(!pro_initialGridPointX.
isNull())
368 if(!pro_initialGridPointY.
isNull())
374 if(!pro_gridStyle.
isNull())
381 if(!pro_lineStyle.
isNull())
388 if(!pro_lineColor.
isNull())
394 if(!pro_lineWidth.
isNull())
400 if(!pro_pointTextSize.
isNull())
406 if(!pro_fontText.
isNull())
412 if(!pro_textColor.
isNull())
418 if(!pro_visibleAllTexts.
isNull())
424 if(!pro_superscriptText.
isNull())
430 if(!pro_lneVrtDisplacement.
isNull())
432 m_lneVrtDisplacement = pro_lneVrtDisplacement.
getValue().
toInt();
436 if(!pro_lneHrzDisplacement.
isNull())
438 m_lneHrzDisplacement = pro_lneHrzDisplacement.
getValue().
toInt();
442 if(!pro_bottomText.
isNull())
448 if(!pro_leftText.
isNull())
454 if(!pro_rightText.
isNull())
466 if(!pro_bottomRotateText.
isNull())
472 if(!pro_leftRotateText.
isNull())
478 if(!pro_rightRotateText.
isNull())
484 if(!pro_topRotateText.
isNull())
double m_lneHrzDisplacement
const double & getUpperRightX() const
It returns a constant refernce to the x coordinate of the upper right corner.
virtual void drawVerticalLines(te::map::Canvas *canvas, te::gm::Envelope box)
const double & getLowerLeftY() const
It returns a constant refernce to the y coordinate of the lower left corner.
const double & getUpperRightY() const
It returns a constant refernce to the x coordinate of the upper right corner.
virtual void drawHorizontalLines(te::map::Canvas *canvas, te::gm::Envelope box)
virtual void updateProperty(te::layout::Property property)
virtual te::gm::LinearRing * createSimpleLine(te::gm::Envelope box)
void setValue(typename ValueType value, LayoutPropertyDataType type)
te::layout::LayoutGridStyle getLayoutEnumGridStyle(std::string val)
A LinearRing is a LineString that is both closed and simple.
std::string getLayoutGridStyle(int enumVal)
An Envelope defines a 2D rectangular region.
PlanarGridSettingsConfigProperties * m_settingsConfig
virtual ~GridPlanarModel()
virtual te::layout::Property getProperty()
virtual void drawLineW(te::gm::LinearRing *line)
virtual void draw(te::map::Canvas *canvas, te::gm::Envelope box, int srid)
virtual bool containsSubProperty(Property subProperty)
virtual void calculateGaps(te::gm::Envelope box)
double m_lneVrtDisplacement
A canvas is an abstraction of a drawing area.
const double & getLowerLeftX() const
It returns a constant reference to the x coordinate of the lower left corner.
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
void setName(std::string name)
te::map::LineDashStyle getLayoutEnumDashStyle(std::string val)
virtual void setLineColor(const te::color::RGBAColor &color)=0
It sets the pen color used to draw line geometries.
te::color::RGBAColor toColor()
static Context * getInstance()
This function is called to create an instance of the class.
std::string getLayoutDashStyle(int enumVal)
bool isValid() const
It tells if the rectangle is valid or not.