|
libosmscout 0.1
|
Abstract base class of all renders (though you can always write your own renderer without inheriting from this class) It implements the general rendering algorithm. More...
#include <MapPainter.h>
Inheritance diagram for osmscout::MapPainter:Classes | |
| struct | AreaData |
| Data structure for holding temporary data about areas. More... | |
| struct | ContourSymbolData |
| class | DatabaseCacheEntry |
| struct | RouteLabelData |
| Data structure for holding temporary data route labels. More... | |
| struct | ShieldGeometry |
| Geometry (background and border rectangle) of a shield around the given label rectangle, identical for all backends. More... | |
| class | WayData |
| Data structure for holding temporary data about ways. More... | |
| struct | WayPathData |
| Data structure for holding temporary data about way paths (a way may consist of multiple paths/lines rendered) More... | |
Public Types | |
| using | WayPathDataIndex = size_t |
Public Member Functions | |
| bool | Draw (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| bool | Draw (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data, RenderSteps startStep, RenderSteps endStep) |
| MapPainter () | |
| virtual TextMetrics | MeasureText (const Projection &projection, const MapParameter ¶meter, const std::string &text, double fontSize) |
| Measure the label dimensions and per-glyph bounding boxes for the given text, font and font size. | |
| virtual | ~MapPainter () |
Static Public Attributes | |
| static constexpr int8_t | routeLayer = 100 |
| Suggested layer value for overlay ways that must be drawn above all map ways (OSM layer values are typically -5..5). | |
Protected Member Functions | |
| virtual void | AfterDrawingCallback (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| virtual void | AfterPreprocessingCallback (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| virtual void | BeforeDrawingCallback (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| bool | CanWayBeVisible (size_t dbIndex, const Projection &projection, const Way &way, double additionalOffsetPixel) const |
| Conservative early decision for ways: returns true when a way of the given database can contribute a pixel to the current frame. | |
| virtual void | DrawArea (const Projection &projection, const MapParameter ¶meter, const AreaData &area)=0 |
| Draw the given area using the given FillStyle for the area outline. | |
| virtual void | DrawContourLines (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| virtual void | DrawContourLines (size_t dbIndex, const Projection &projection, const MapParameter ¶meter, const MapData &data) |
| virtual void | DrawContourSymbol (const Projection &projection, const MapParameter ¶meter, const Symbol &symbol, const ContourSymbolData &data)=0 |
| Draw the given Symbol on top of the contour of the given path. | |
| virtual void | DrawGround (const Projection &projection, const MapParameter ¶meter, const FillStyle &style)=0 |
| (Optionally) fills the area with the given default color for ground. | |
| virtual void | DrawHillShading (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| virtual void | DrawHillShading (const StyleConfigRef &styleConfig, const Projection &projection, const MapParameter ¶meter, const MapData &data) |
| virtual void | DrawIcon (const IconStyle *style, const Vertex2D ¢erPos, double width, double height)=0 |
| Draw the Icon as defined by the IconStyle at the given pixel coordinate (icon center). | |
| virtual void | DrawLabels (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data)=0 |
| virtual void | DrawPath (const Projection &projection, const MapParameter ¶meter, const Color &color, double width, const std::vector< double > &dash, LineStyle::CapStyle startCap, LineStyle::CapStyle endCap, const CoordBufferRange &coordRange)=0 |
| Draw simple line with the given style,the given color, the given width and the given untransformed nodes. | |
| virtual void | DrawSymbol (const Projection &projection, const MapParameter ¶meter, const Symbol &symbol, const Vertex2D &screenPos, double scaleFactor=1.0)=0 |
| Draw the Symbol as defined by the SymbolStyle at the given pixel coordinate (symbol center). | |
| virtual void | DrawWay (const Projection &projection, const MapParameter ¶meter, const WayData &data) |
| const std::vector< AreaData > & | GetAreaData () const |
| Return the prepared areas of the current frame in draw order. | |
| virtual double | GetFontHeight (const Projection &projection, const MapParameter ¶meter, double fontSize)=0 |
| Returns the height of the font. | |
| double | GetProjectedWidth (const Projection &projection, double minPixel, double width) const |
| double | GetProjectedWidth (const Projection &projection, double width) const |
| virtual double | GetProposedLabelWidth (const MapParameter ¶meter, double averageCharWidth, double objectWidth, size_t stringLength) |
| Compute suggested label width for given parameters. | |
| ShieldGeometry | GetShieldGeometry (const ScreenVectorRectangle &labelRectangle) const |
| const std::vector< WayData > & | GetWayData () const |
| Return the prepared ways of the current frame in draw order. | |
| virtual bool | HasIcon (const StyleConfig &styleConfig, const Projection &projection, const MapParameter ¶meter, IconStyle &style)=0 |
| Return true, if the icon in the IconStyle is available and can be drawn. | |
| bool | IsPointVisible (const Projection &projection, const Vertex2D &screenPos, double reachPixel) const |
| Conservative early decision for point objects: returns true when an object that is drawn at the given screen position with the given reach can contribute a pixel to the current frame. | |
| bool | IsVisibleArea (const Projection &projection, const GeoBox &boundingBox, double pixelOffset) const |
| Useful global helper functions. | |
| bool | IsVisibleWay (const Projection &projection, const GeoBox &boundingBox, double pixelOffset) const |
| Visibility test for a way's bounding box, using the same screen offset in pixels as IsVisibleArea. | |
| template<class LabelT , class GlyphBoxFn > | |
| TextMetrics | MeasureLabel (const std::shared_ptr< LabelT > &label, GlyphBoxFn boxFn) const |
| Build text metrics from a layouted label and a per-glyph bounding box function. | |
| std::vector< OffsetRel > | ParseLaneTurns (const LanesFeatureValue &feature) const |
| virtual void | RegisterContourLabel (const Projection &projection, const MapParameter ¶meter, bool basemap, const ObjectFileRef &ref, const PathLabelData &label, const LabelPath &labelPath)=0 |
| Register contour label. | |
| virtual void | RegisterRegularLabel (const Projection &projection, const MapParameter ¶meter, bool basemap, const ObjectFileRef &ref, const std::vector< LabelData > &labels, const Vertex2D &position, double objectWidth)=0 |
| Register regular label with given text at the given pixel coordinate in a style defined by the given LabelStyle. | |
| virtual void | StyleSheetChanged (const Projection &projection, const MapParameter ¶meter, const std::vector< MapData > &data) |
| Low level drawing routines that have to be implemented by the concrete drawing engine. | |
| void | UpdateVisibilityBounds (const Projection &projection) |
| Updates the conservative style reach of all databases for the level of the given frame. | |
Protected Attributes | |
| FillStyle | areaMarkStyle |
| Marker fill style for internal debugging. | |
| FeatureValueBuffer | coastlineSegmentAttributes |
| double | contourLabelOffset |
| Same value as in MapParameter but converted to pixel. | |
| double | contourLabelSpace |
| Same value as in MapParameter but converted to pixel. | |
| CoordBuffer | coordBuffer |
| Coordinate buffer. | |
| std::vector< DatabaseCacheEntry > | databaseCache |
| Cache of database specific data for rendering, such as attribute readers and style config reference. | |
| TextStyleRef | debugLabel |
| std::vector< double > | emptyDash |
| Presets, precalculations and similar. | |
| FillStyleRef | landFill |
| Fallback styles in case they are missing for the style sheet. | |
| FillStyleRef | seaFill |
| double | shieldGridSizeHoriz |
| Width of a cell for shield label placement. | |
| double | shieldGridSizeVert |
| Height of a cell for shield label placement. | |
| TransBuffer | transBuffer |
| Internal coordinate transformation data structures. | |
| std::vector< double > | tunnelDash |
| Dash array for drawing tunnel border. | |
Static Protected Attributes | |
| static constexpr double | ShieldBackgroundClearance =1.0 |
| static constexpr double | ShieldBorderInset =2.0 |
Shared shield label geometry: the label text is expected to occupy exactly the label rectangle passed to DrawLabel(); the border is drawn ShieldBorderInset pixels away from the text and the background rectangle surrounds the border with ShieldBackgroundGap pixels of clearance (covering the 1 pixel border stroke). | |
Abstract base class of all renders (though you can always write your own renderer without inheriting from this class) It implements the general rendering algorithm.
Concrete renders are implemented by implementing the abstract methods defined by this class and used as callbacks to the concrete renderer.
| using osmscout::MapPainter::WayPathDataIndex = size_t |
| osmscout::MapPainter::MapPainter | ( | ) |
References osmscout::AfterPreprocessing, areaMarkStyle, osmscout::CalculatePaths, osmscout::CalculateWayShields, osmscout::Log::Debug(), debugLabel, osmscout::DrawAreaBorderLabels, osmscout::DrawAreaBorderSymbols, osmscout::DrawAreas, osmscout::DrawBaseMapTiles, osmscout::DrawContourLines, DrawContourLines(), osmscout::DrawGroundTiles, osmscout::DrawHillShading, DrawHillShading(), osmscout::DrawLabels, DrawLabels(), osmscout::DrawOSMTileGrids, osmscout::DrawWayContourLabels, osmscout::DrawWayDecorations, osmscout::DrawWays, osmscout::DumpStatistics, osmscout::FirstStep, osmscout::Initialize, landFill, osmscout::LastStep, osmscout::log, osmscout::TextStyle::normal, osmscout::Postrender, osmscout::PrepareAreaLabels, osmscout::PrepareNodeLabels, osmscout::PrepareRouteLabels, osmscout::Prerender, osmscout::ProcessAreas, osmscout::ProcessRoutes, seaFill, osmscout::FillStyle::SetFillColor(), and tunnelDash.
|
virtual |
References osmscout::Log::Debug(), and osmscout::log.
|
protectedvirtual |
Reimplemented in osmscout::MapPainterSVG.
|
protectedvirtual |
Reimplemented in osmscout::MapPainterSVG.
|
protectedvirtual |
Reimplemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, and osmscout::MapPainterSVG.
|
protected |
Conservative early decision for ways: returns true when a way of the given database can contribute a pixel to the current frame.
The decision uses the widest line reach a way of the level can draw, so it returns false only for ways that no line style of the level could bring into the view; it is therefore safe to skip the whole preparation of a way it rejects. The additional pixel offset leaves room for geometry that is placed relative to the way, such as the label of a shield.
References databaseCache, osmscout::Way::GetBoundingBox(), and IsVisibleWay().
| bool osmscout::MapPainter::Draw | ( | const Projection & | projection, |
| const MapParameter & | parameter, | ||
| const std::vector< MapData > & | data | ||
| ) |
References Draw(), osmscout::FirstStep, and osmscout::LastStep.
| bool osmscout::MapPainter::Draw | ( | const Projection & | projection, |
| const MapParameter & | parameter, | ||
| const std::vector< MapData > & | data, | ||
| RenderSteps | startStep, | ||
| RenderSteps | endStep | ||
| ) |
References osmscout::FirstStep, osmscout::MapParameter::IsAborted(), and osmscout::LastStep.
Referenced by Draw(), osmscout::MapPainterQt::DrawGroundTiles(), osmscout::MapPainterAgg::DrawMap(), osmscout::MapPainterCairo::DrawMap(), osmscout::MapPainterQt::DrawMap(), osmscout::MapPainterNoOp::DrawMap(), and osmscout::MapPainterSVG::DrawMap().
|
protectedpure virtual |
Draw the given area using the given FillStyle for the area outline.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
Referenced by DrawContourLines(), and DrawHillShading().
|
protectedvirtual |
References osmscout::DrawContourLines.
|
protectedvirtual |
References osmscout::MapPainter::AreaData::borderStyle, osmscout::MapPainter::AreaData::boundingBox, osmscout::MapPainter::WayData::buffer, osmscout::MapPainter::WayData::color, osmscout::Projection::ConvertWidthToPixel(), coordBuffer, osmscout::MapPainter::WayData::coordRange, osmscout::MapPainter::AreaData::coordRange, osmscout::CrossesElevationLine(), databaseCache, osmscout::MapPainter::WayData::dbIndex, osmscout::MapPainter::AreaData::dbIndex, DrawArea(), DrawWay(), osmscout::MapPainter::WayData::endIsClosed, osmscout::GeoBox::GetBottomLeft(), osmscout::GeoBox::GetBottomRight(), osmscout::Projection::GetDimensions(), osmscout::GeoBox::GetDisplayText(), osmscout::GeoBox::GetMaxLat(), osmscout::GeoBox::GetMaxLon(), osmscout::GeoBox::GetMinLat(), osmscout::GeoBox::GetMinLon(), GetProjectedWidth(), osmscout::MapParameter::GetRenderContourLines(), osmscout::GeoBox::GetTopLeft(), osmscout::GeoBox::GetTopRight(), osmscout::Log::Info(), osmscout::GeoBox::Intersects(), osmscout::MapPainter::WayData::layer, osmscout::MapPainter::WayData::lineStyle, osmscout::MapPainter::WayData::lineWidth, osmscout::log, osmscout::SRTM::nodata, osmscout::TransPolygon::none, osmscout::MapPainter::AreaData::ref, osmscout::RoundDown(), osmscout::RoundUp(), osmscout::FeatureValueBuffer::SetType(), osmscout::MapData::srtmTile, osmscout::MapPainter::WayData::startIsClosed, transBuffer, osmscout::TransformBoundingBox(), osmscout::TransformWay(), osmscout::Log::Warn(), and osmscout::MapPainter::WayData::wayPriority.
Referenced by MapPainter().
|
protectedpure virtual |
Draw the given Symbol on top of the contour of the given path.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
|
protectedpure virtual |
(Optionally) fills the area with the given default color for ground.
In 2D backends this just fills the given area, 3D backends might draw a sphere or an infinite plane.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
|
protectedvirtual |
References osmscout::DrawHillShading.
|
protectedvirtual |
References osmscout::LabelData::alpha, osmscout::MapPainter::AreaData::boundingBox, coordBuffer, osmscout::MapPainter::AreaData::coordRange, DrawArea(), osmscout::MapPainter::AreaData::fillStyle, osmscout::LabelData::fontSize, osmscout::Projection::GeoToPixel(), osmscout::GeoBox::GetCenter(), osmscout::Projection::GetDimensions(), osmscout::GeoBox::GetDisplayText(), osmscout::GeoCoord::GetLat(), osmscout::GeoCoord::GetLon(), osmscout::GeoBox::GetMaxLat(), osmscout::GeoBox::GetMaxLon(), osmscout::GeoBox::GetMinLat(), osmscout::GeoBox::GetMinLon(), osmscout::MapParameter::GetRenderHillShading(), osmscout::Log::Info(), osmscout::GeoBox::Intersects(), osmscout::log, osmscout::TransPolygon::none, osmscout::LabelData::priority, osmscout::MapPainter::AreaData::ref, RegisterRegularLabel(), osmscout::RoundDown(), osmscout::RoundUp(), osmscout::FeatureValueBuffer::SetType(), osmscout::MapData::srtmTile, osmscout::LabelData::style, osmscout::LabelData::text, transBuffer, osmscout::TransformBoundingBox(), and osmscout::Log::Warn().
Referenced by MapPainter().
|
protectedpure virtual |
Draw the Icon as defined by the IconStyle at the given pixel coordinate (icon center).
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
|
protectedpure virtual |
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
References osmscout::DrawContourLines, and osmscout::DrawHillShading.
Referenced by MapPainter().
|
protectedpure virtual |
Draw simple line with the given style,the given color, the given width and the given untransformed nodes.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
Referenced by DrawWay().
|
protectedpure virtual |
Draw the Symbol as defined by the SymbolStyle at the given pixel coordinate (symbol center).
Implemented in osmscout::MapPainterSVG, osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, and osmscout::MapPainterNoOp.
|
protectedvirtual |
Reimplemented in osmscout::MapPainterSVG.
References osmscout::MapPainter::WayData::color, osmscout::MapPainter::WayData::coordRange, DrawPath(), emptyDash, osmscout::MapPainter::WayData::endIsClosed, osmscout::MapPainter::WayData::lineStyle, osmscout::MapPainter::WayData::lineWidth, and osmscout::MapPainter::WayData::startIsClosed.
Referenced by DrawContourLines().
|
inlineprotected |
Return the prepared areas of the current frame in draw order.
Referenced by osmscout::MapPainterSVG::AfterPreprocessingCallback().
|
protectedpure virtual |
Returns the height of the font.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
|
protected |
References osmscout::Projection::GetPixelSize().
Referenced by osmscout::MapPainterSVG::AfterPreprocessingCallback(), DrawContourLines(), and UpdateVisibilityBounds().
|
inlineprotected |
References osmscout::Projection::GetPixelSize().
|
protectedvirtual |
Compute suggested label width for given parameters.
It may be used by backend for layout labels with wrapping words.
References osmscout::MapParameter::GetLabelLineFitToArea(), osmscout::MapParameter::GetLabelLineFitToWidth(), osmscout::MapParameter::GetLabelLineMaxCharCount(), and osmscout::MapParameter::GetLabelLineMinCharCount().
Referenced by osmscout::MapPainterQt::Layout().
|
inlineprotected |
|
inlineprotected |
Return the prepared ways of the current frame in draw order.
Referenced by osmscout::MapPainterSVG::AfterPreprocessingCallback().
|
protectedpure virtual |
Return true, if the icon in the IconStyle is available and can be drawn.
If this method returns false, possibly a fallback (using a Symbol) will be chosen.
Icon style dimensions and iconId may be setup for later usage.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
|
protected |
Conservative early decision for point objects: returns true when an object that is drawn at the given screen position with the given reach can contribute a pixel to the current frame.
The reach is the distance the icon, the symbol and the labels of the object can extend beyond its position, so the decision returns false only for objects that provably cannot be visible.
References osmscout::Projection::GetHeight(), osmscout::Projection::GetWidth(), osmscout::Vertex2D::GetX(), osmscout::Vertex2D::GetY(), and osmscout::ScreenVectorRectangle::Intersects().
|
protected |
Useful global helper functions.
Visibility test for an area's bounding box: the box is transformed to the frame's screen space, enlarged by pixelOffset screen pixels and intersected with the screen box. A width that a style sheet declares is a length in millimetres and has to be converted with the frame's projection (Projection::ConvertWidthToPixel) before it is passed as the offset, the same way the backends convert it before drawing.
References osmscout::Projection::BoundingBoxToPixel(), osmscout::ScreenBox::GetHeight(), osmscout::Projection::GetScreenBox(), osmscout::ScreenBox::GetWidth(), osmscout::ScreenBox::Intersects(), osmscout::GeoBox::IsValid(), and osmscout::ScreenBox::Resize().
|
protected |
Visibility test for a way's bounding box, using the same screen offset in pixels as IsVisibleArea.
References osmscout::Projection::BoundingBoxToPixel(), osmscout::Projection::GetScreenBox(), osmscout::ScreenBox::Intersects(), and osmscout::ScreenBox::Resize().
Referenced by CanWayBeVisible().
|
inlineprotected |
Build text metrics from a layouted label and a per-glyph bounding box function.
Shared by all backends' MeasureText() implementations: the backends only differ in the concrete label type returned by their Layout() and the signature of their GlyphBoundingBox().
References osmscout::TextMetrics::Glyph::box, osmscout::TextMetrics::glyphs, osmscout::TextMetrics::height, osmscout::TextMetrics::Glyph::position, and osmscout::TextMetrics::width.
Referenced by osmscout::MapPainterAgg::MeasureText(), osmscout::MapPainterCairo::MeasureText(), osmscout::MapPainterQt::MeasureText(), and osmscout::MapPainterSVG::MeasureText().
|
virtual |
Measure the label dimensions and per-glyph bounding boxes for the given text, font and font size.
The default implementation returns empty metrics; backends that support measurement override it.
Reimplemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, and osmscout::MapPainterSVG.
|
protected |
References osmscout::base, osmscout::LanesFeatureValue::GetBackwardLanes(), osmscout::LanesFeatureValue::GetForwardLanes(), osmscout::LanesFeatureValue::GetLanes(), osmscout::LanesFeatureValue::GetTurnBackward(), osmscout::LanesFeatureValue::GetTurnForward(), lanes, osmscout::ParseBackwardTurnStringToOffset(), and osmscout::ParseForwardTurnStringToOffset().
|
protectedpure virtual |
Register contour label.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
|
protectedpure virtual |
Register regular label with given text at the given pixel coordinate in a style defined by the given LabelStyle.
Implemented in osmscout::MapPainterAgg, osmscout::MapPainterCairo, osmscout::MapPainterQt, osmscout::MapPainterSVG, and osmscout::MapPainterNoOp.
Referenced by DrawHillShading().
|
protectedvirtual |
Low level drawing routines that have to be implemented by the concrete drawing engine.
Some optional callbacks between individual processing steps. Stylesheet at least of one of the databases has changed, so the renderer can clear caches and similar.
Reimplemented in osmscout::MapPainterCairo, and osmscout::MapPainterQt.
|
protected |
Updates the conservative style reach of all databases for the level of the given frame.
Called once per frame, before the objects of the frame are prepared.
References osmscout::Projection::ConvertWidthToPixel(), databaseCache, osmscout::Projection::GetMagnification(), GetProjectedWidth(), osmscout::VisibilityBounds::maxIconHeight, osmscout::VisibilityBounds::maxIconWidth, osmscout::VisibilityBounds::maxWayDisplayWidth, osmscout::VisibilityBounds::maxWayLineWidth, osmscout::maxWidthFeatureWidth, and osmscout::VisibilityBounds::symbols.
|
protected |
Marker fill style for internal debugging.
Referenced by MapPainter().
|
protected |
|
protected |
Same value as in MapParameter but converted to pixel.
|
protected |
Same value as in MapParameter but converted to pixel.
|
protected |
|
protected |
Cache of database specific data for rendering, such as attribute readers and style config reference.
The index of the entry corresponds to MapData provided for rendering.
Referenced by CanWayBeVisible(), DrawContourLines(), and UpdateVisibilityBounds().
|
protected |
Referenced by MapPainter().
|
protected |
Presets, precalculations and similar.
Empty dash array
Referenced by DrawWay(), and osmscout::MapPainterSVG::DrawWay().
|
protected |
Fallback styles in case they are missing for the style sheet.
Referenced by osmscout::MapPainterSVG::AfterPreprocessingCallback(), and MapPainter().
|
staticconstexpr |
Suggested layer value for overlay ways that must be drawn above all map ways (OSM layer values are typically -5..5).
Callers set this value via the layer feature (LayerFeatureValue) on the way; the renderer is generic and just honors the layer of each way.
|
protected |
Referenced by osmscout::MapPainterSVG::AfterPreprocessingCallback(), and MapPainter().
|
staticconstexprprotected |
|
staticconstexprprotected |
Shared shield label geometry: the label text is expected to occupy exactly the label rectangle passed to DrawLabel(); the border is drawn ShieldBorderInset pixels away from the text and the background rectangle surrounds the border with ShieldBackgroundGap pixels of clearance (covering the 1 pixel border stroke).
All backends use the same values, so shields are drawn identically across backends.
|
protected |
Width of a cell for shield label placement.
|
protected |
Height of a cell for shield label placement.
|
protected |
Internal coordinate transformation data structures.
Internal buffer for coordinate transformation from geo coordinates to display coordinates
Referenced by DrawContourLines(), and DrawHillShading().
|
protected |
Dash array for drawing tunnel border.
Referenced by MapPainter().