1 #ifndef OSMSCOUT_STYLES_H 2 #define OSMSCOUT_STYLES_H 95 bool preferColorFeature;
102 std::vector<double> dash;
111 void SetColorValue(
int attribute,
const Color& value)
override;
112 void SetDoubleValue(
int attribute,
double value)
override;
113 void SetDoubleArrayValue(
int attribute,
const std::vector<double>& value)
override;
114 void SetIntValue(
int attribute,
int value)
override;
115 void SetBoolValue(
int attribute,
bool value)
override;
117 LineStyle& SetSlot(
const std::string& slot);
119 LineStyle& SetLineColor(
const Color& color);
120 LineStyle& SetGapColor(
const Color& color);
121 LineStyle& SetPreferColorFeature(
bool value);
122 LineStyle& SetDisplayWidth(
double value);
124 LineStyle& SetDisplayOffset(
double value);
128 LineStyle& SetDashes(
const std::vector<double>& dashes);
135 return (displayWidth>0.0 ||
137 lineColor.IsVisible();
157 return preferColorFeature;
172 return displayOffset;
192 return !dash.empty();
217 void CopyAttributes(
const LineStyle& other,
218 const std::set<Attribute>& attributes);
269 AddEnumValue(name, static_cast<int>(value));
292 mutable size_t patternId;
293 Magnification patternMinMag;
299 void SetStringValue(
int attribute,
const std::string& value)
override;
300 void SetColorValue(
int attribute,
const Color& value)
override;
301 void SetMagnificationValue(
int attribute,
const Magnification& value)
override;
303 FillStyle& SetFillColor(
const Color& color);
304 FillStyle& SetPattern(
const std::string& pattern);
305 void SetPatternId(
size_t id)
const;
306 FillStyle& SetPatternMinMag(
const Magnification& mag);
310 return (fillColor.IsVisible() ||
321 return !pattern.empty();
336 return patternMinMag;
341 void CopyAttributes(
const FillStyle& other,
342 const std::set<Attribute>& attributes);
374 std::vector<double> dash;
375 double displayOffset;
383 void SetColorValue(
int attribute,
const Color& value)
override;
384 void SetDoubleValue(
int attribute,
double value)
override;
385 void SetDoubleArrayValue(
int attribute,
const std::vector<double>& value)
override;
386 void SetIntValue(
int attribute,
int value)
override;
393 BorderStyle& SetDashes(
const std::vector<double>& dashes);
400 return width>0 && color.IsVisible();
425 return !dash.empty();
435 return displayOffset;
451 const std::set<Attribute>& attributes);
478 virtual bool IsVisible()
const = 0;
479 virtual double GetAlpha()
const = 0;
528 Magnification scaleAndFadeMag;
535 void SetBoolValue(
int attribute,
bool value)
override;
536 void SetColorValue(
int attribute,
const Color& value)
override;
537 void SetMagnificationValue(
int attribute,
const Magnification& value)
override;
538 void SetDoubleValue(
int attribute,
double value)
override;
539 void SetIntValue(
int attribute,
int value)
override;
540 void SetUIntValue(
int attribute,
size_t value)
override;
543 TextStyle& SetSlot(
const std::string& slot);
545 TextStyle& SetSize(
double size)
override;
548 TextStyle& SetTextColor(
const Color& color);
550 TextStyle& SetScaleAndFadeMag(
const Magnification& mag);
556 GetTextColor().IsVisible();
561 return textColor.GetA();
591 return scaleAndFadeMag;
601 void CopyAttributes(
const TextStyle& other,
602 const std::set<Attribute>& attributes);
660 GetTextColor().IsVisible();
665 return textColor.GetA();
689 const std::set<Attribute>& attributes);
723 void SetColorValue(
int attribute,
const Color& value)
override;
724 void SetDoubleValue(
int attribute,
double value)
override;
725 void SetUIntValue(
int attribute,
size_t value)
override;
737 return shieldStyle->IsVisible();
742 return shieldStyle->GetAlpha();
747 return shieldStyle->GetPriority();
752 return shieldStyle->GetSize();
757 return shieldStyle->GetLabel();
762 return shieldStyle->GetTextColor();
767 return shieldStyle->GetBgColor();
772 return shieldStyle->GetBorderColor();
788 const std::set<Attribute>& attributes);
815 double displayOffset;
823 void SetColorValue(
int attribute,
const Color& value)
override;
824 void SetDoubleValue(
int attribute,
double value)
override;
826 void SetUIntValue(
int attribute,
size_t value)
override;
838 textColor.IsVisible();
858 return displayOffset;
874 const std::set<Attribute>& attributes);
897 std::string iconName;
909 void SetBoolValue(
int attribute,
bool value)
override;
910 void SetStringValue(
int attribute,
const std::string& value)
override;
911 void SetSymbolValue(
int attribute,
const SymbolRef& value)
override;
912 void SetUIntValue(
int attribute,
size_t value)
override;
915 IconStyle& SetIconName(
const std::string& iconName);
930 return !iconName.empty() ||
971 void CopyAttributes(
const IconStyle& other,
972 const std::set<Attribute>& attributes);
990 ProjectionMode projectionMode;
1002 return projectionMode;
1018 double& maxY)
const = 0;
1030 std::list<Vertex2D> coords;
1037 void AddCoord(
const Vertex2D& coord);
1047 double& maxY)
const override;
1065 const Vertex2D& topLeft,
1089 double& maxY)
const override;
1106 const Vertex2D& center,
1124 double& maxY)
const override;
1139 std::list<DrawPrimitiveRef> primitives;
1147 double GetWidth()
const 1152 double GetHeight()
const 1157 void Update(
double minX,
double minY,
double maxX,
double maxY)
1159 this->minX = std::min(this->minX, minX);
1160 this->minY = std::min(this->minY, minY);
1162 this->maxX = std::max(this->maxX, maxX);
1163 this->maxY = std::max(this->maxY, maxY);
1167 BoundingBox mapBoundingBox;
1168 BoundingBox groundBoundingBox;
1171 explicit Symbol(
const std::string& name);
1246 double displayOffset;
1252 PathSymbolStyle(
const PathSymbolStyle& style);
1254 void SetDoubleValue(
int attribute,
double value)
override;
1255 void SetSymbolValue(
int attribute,
const SymbolRef& value)
override;
1256 void SetIntValue(
int attribute,
int value)
override;
1258 PathSymbolStyle& SetSlot(
const std::string& slot);
1260 PathSymbolStyle& SetSymbol(
const SymbolRef& symbol);
1261 PathSymbolStyle& SetSymbolSpace(
double space);
1262 PathSymbolStyle& SetDisplayOffset(
double value);
1263 PathSymbolStyle& SetOffset(
double value);
1264 PathSymbolStyle& SetOffsetRel(
OffsetRel offsetRel);
1268 return (
bool)symbol;
1288 return displayOffset;
1304 const std::set<Attribute>& attributes);
const Color & GetTextColor() const
Definition: Styles.h:760
Attribute
Definition: Styles.h:359
double ConvertWidthToPixel(double width) const
Definition: Projection.h:280
Definition: Styles.h:1230
const std::string & GetSlot() const
Definition: Styles.h:140
TextStyleEnumAttributeDescriptor(const std::string &name, int attribute)
Definition: Styles.h:612
Attribute
Definition: Styles.h:75
const FillStyleRef & GetFillStyle() const
Definition: Styles.h:1005
std::string GetIconName() const
Definition: Styles.h:939
double GetWidth() const
Definition: Styles.h:418
const Color & GetGapColor() const
Definition: Styles.h:413
const std::vector< double > & GetDash() const
Definition: Styles.h:195
special offset for routes, line are stacked next to way, same colors are "collapsed" ...
Attribute
Definition: Styles.h:1234
std::shared_ptr< FillStyle > FillStyleRef
Definition: Styles.h:349
Definition: StyleDescription.h:229
size_t GetPriority() const
Definition: Styles.h:866
Attribute
Definition: Styles.h:887
const SymbolRef & GetSymbol() const
Definition: Styles.h:934
std::shared_ptr< PathSymbolStyle > PathSymbolStyleRef
Definition: Styles.h:1307
double GetAlpha() const override
Definition: Styles.h:663
const LabelProviderRef & GetLabel() const
Definition: Styles.h:841
OffsetRelAttributeDescriptor(const std::string &name, int attribute)
Definition: Styles.h:242
unsigned int GetHeight() const
Definition: Styles.h:954
const ShieldStyleRef & GetShieldStyle() const
Definition: Styles.h:780
std::string GetName() const
Definition: Styles.h:1175
std::shared_ptr< LineStyle > LineStyleRef
Definition: Styles.h:273
ProjectionMode GetProjectionMode() const
Definition: Styles.h:1000
const std::list< Vertex2D > & GetCoords() const
Definition: Styles.h:1039
bool IsVisible() const override
Definition: Styles.h:553
const Color & GetGapColor() const
Definition: Styles.h:150
bool IsVisible() const
Definition: Styles.h:735
const LabelProviderRef & GetLabel() const
Definition: Styles.h:569
double GetOffset() const
Definition: Styles.h:175
size_t GetPriority() const
Definition: Styles.h:745
bool HasDashes() const
Definition: Styles.h:423
bool IsVisible() const
Definition: Styles.h:1266
const Color & GetTextColor() const
Definition: Styles.h:673
double GetSymbolSpace() const
Definition: Styles.h:1281
bool IsVisible() const override
Definition: Styles.h:657
Definition: Styles.h:1236
double GetAlpha() const override
Definition: Styles.h:559
std::shared_ptr< BorderStyle > BorderStyleRef
Definition: Styles.h:458
const Color & GetBorderColor() const
Definition: Styles.h:683
bool operator!=(const MapViewStruct &r1, const MapViewStruct &r2)
Definition: DBThread.h:61
bool IsVisible() const
Definition: Styles.h:308
Attribute
Definition: Styles.h:632
double GetOffset() const
Definition: Styles.h:438
void GetBoundingBox(const std::vector< N > &nodes, double &minLon, double &maxLon, double &minLat, double &maxLat)
Definition: Geometry.h:107
double GetOffset() const
Definition: Styles.h:861
double GetDisplayOffset() const
Definition: Styles.h:856
const Vertex2D & GetCenter() const
Definition: Styles.h:1111
std::shared_ptr< RectanglePrimitive > RectanglePrimitiveRef
Definition: Styles.h:1092
Magnification GetScaleAndFadeMag() const
Definition: Styles.h:589
std::shared_ptr< LabelProvider > LabelProviderRef
Definition: LabelProvider.h:61
bool IsVisible() const
Definition: Styles.h:398
when way has multiple lanes, line is rendered as its divider
CapStyle GetJoinCap() const
Definition: Styles.h:180
size_t GetPriority() const
Definition: Styles.h:923
int GetPriority() const
Definition: Styles.h:200
double GetOffset() const
Definition: Styles.h:1291
const Color & GetBgColor() const
Definition: Styles.h:765
std::string GetPatternName() const
Definition: Styles.h:324
const std::vector< double > & GetDash() const
Definition: Styles.h:428
bool IsVisible() const
Definition: Styles.h:835
double GetMeterInPixel() const
Definition: Projection.h:259
Definition: Projection.h:43
double GetSize() const
Definition: Styles.h:846
Attribute
Definition: Styles.h:802
std::shared_ptr< PathTextStyle > PathTextStyleRef
Definition: Styles.h:877
double GetWidth() const
Definition: Styles.h:165
const LabelProviderRef & GetLabel() const
Definition: Styles.h:668
Attribute
Definition: Styles.h:283
Definition: Styles.h:1135
bool IsVisible() const
Definition: Styles.h:133
std::shared_ptr< PolygonPrimitive > PolygonPrimitiveRef
Definition: Styles.h:1050
CapStyle GetEndCap() const
Definition: Styles.h:185
Definition: Styles.h:1056
int GetPriority() const
Definition: Styles.h:443
Definition: Styles.h:1098
#define CLASS_FINAL
Definition: Compiler.h:26
std::shared_ptr< PathShieldStyle > PathShieldStyleRef
Definition: Styles.h:791
bool HasDashes() const
Definition: Styles.h:190
bool operator<(const TileCacheKey &a, const TileCacheKey &b)
int GetZIndex() const
Definition: Styles.h:205
double GetSize() const
Definition: Styles.h:750
#define OSMSCOUT_MAP_API
Definition: MapImportExport.h:45
void GetBoundingBox(const Projection &projection, double &minX, double &minY, double &maxX, double &maxY) const
Definition: Styles.h:1188
double GetWidth(const Projection &projection) const
Definition: Styles.h:1208
const std::string & GetSlot() const
Definition: Styles.h:1271
double GetDisplayOffset() const
Definition: Styles.h:1286
const Color & GetTextColor() const
Definition: Styles.h:851
const Color & GetBgColor() const
Definition: Styles.h:678
bool GetPreferColorFeature() const
Definition: Styles.h:155
OffsetRel
Definition: Styles.h:40
const std::list< DrawPrimitiveRef > & GetPrimitives() const
Definition: Styles.h:1180
const Magnification & GetPatternMinMag() const
Definition: Styles.h:334
size_t GetIconId() const
Definition: Styles.h:944
double GetSize() const
Definition: Styles.h:490
size_t GetPatternId() const
Definition: Styles.h:329
size_t GetPosition() const
Definition: Styles.h:959
const Color & GetBorderColor() const
Definition: Styles.h:770
bool IsOverlay() const
Definition: Styles.h:964
const Color & GetColor() const
Definition: Styles.h:408
double GetAlpha() const
Definition: Styles.h:740
const Vertex2D & GetTopLeft() const
Definition: Styles.h:1071
Definition: StyleDescription.h:51
bool operator==(const MapView &a, const MapView &b)
Definition: InputHandler.h:222
double GetShieldSpace() const
Definition: Styles.h:775
const std::string & GetSlot() const
Definition: Styles.h:564
const SymbolRef & GetSymbol() const
Definition: Styles.h:1276
Style
Definition: Styles.h:506
const Color & GetTextColor() const
Definition: Styles.h:579
double GetDisplayOffset() const
Definition: Styles.h:170
const Color & GetLineColor() const
Definition: Styles.h:145
std::shared_ptr< Symbol > SymbolRef
Definition: StyleDescription.h:37
const Color & GetFillColor() const
Definition: Styles.h:314
const BorderStyleRef & GetBorderStyle() const
Definition: Styles.h:1010
size_t GetPriority() const
Definition: Styles.h:485
double GetDisplayWidth() const
Definition: Styles.h:160
const LabelProviderRef & GetLabel() const
Definition: Styles.h:755
unsigned int GetWidth() const
Definition: Styles.h:949
Attribute
Definition: Styles.h:704
const Style & GetStyle() const
Definition: Styles.h:584
ProjectionMode
Definition: Styles.h:984
std::shared_ptr< StyleDescriptor > StyleDescriptorRef
Definition: StyleDescription.h:495
const double & GetRadius() const
Definition: Styles.h:1116
std::shared_ptr< LabelStyle > LabelStyleRef
Definition: Styles.h:496
const std::string & GetSlot() const
Definition: Styles.h:403
Definition: Styles.h:1027
double GetHeight(const Projection &projection) const
Definition: Styles.h:1217
bool GetAutoSize() const
Definition: Styles.h:594
bool HasPattern() const
Definition: Styles.h:319
const double & GetHeight() const
Definition: Styles.h:1081
std::shared_ptr< ShieldStyle > ShieldStyleRef
Definition: Styles.h:692
double GetDisplayOffset() const
Definition: Styles.h:433
OffsetRel GetOffsetRel() const
Definition: Styles.h:1296
OffsetRel GetOffsetRel() const
Definition: Styles.h:210
CapStyleEnumAttributeDescriptor(const std::string &name, int attribute)
Definition: Styles.h:228
Definition: Styles.h:1238
std::shared_ptr< DrawPrimitive > DrawPrimitiveRef
Definition: Styles.h:1021
size_t GetPosition() const
Definition: Styles.h:574
Definition: Styles.h:1235
std::shared_ptr< CirclePrimitive > CirclePrimitiveRef
Definition: Styles.h:1127
const double & GetWidth() const
Definition: Styles.h:1076
Definition: Styles.h:1237
Attribute
Definition: Styles.h:511
void AddEnumValue2(const std::string &name, OffsetRel value)
Definition: Styles.h:266
std::shared_ptr< IconStyle > IconStyleRef
Definition: Styles.h:975
std::shared_ptr< TextStyle > TextStyleRef
Definition: Styles.h:622
bool IsVisible() const
Definition: Styles.h:928
CapStyle
Definition: Styles.h:69