GDAL
ogr_featurestyle.h
Go to the documentation of this file.
1 /******************************************************************************
2  * $Id: ogr_featurestyle.h 36501 2016-11-25 14:09:24Z rouault $
3  *
4  * Project: OpenGIS Simple Features Reference Implementation
5  * Purpose: Define of Feature Representation
6  * Author: Stephane Villeneuve, stephane.v@videtron.ca
7  *
8  ******************************************************************************
9  * Copyright (c) 1999, Frank Warmerdam
10  *
11  * Permission is hereby granted, free of charge, to any person obtaining a
12  * copy of this software and associated documentation files (the "Software"),
13  * to deal in the Software without restriction, including without limitation
14  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
15  * and/or sell copies of the Software, and to permit persons to whom the
16  * Software is furnished to do so, subject to the following conditions:
17  *
18  * The above copyright notice and this permission notice shall be included
19  * in all copies or substantial portions of the Software.
20  *
21  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
22  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
24  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27  * DEALINGS IN THE SOFTWARE.
28  ****************************************************************************/
29 
30 #ifndef OGR_FEATURESTYLE_INCLUDE
31 #define OGR_FEATURESTYLE_INCLUDE
32 
33 #include "cpl_conv.h"
34 #include "cpl_string.h"
35 #include "ogr_core.h"
36 
37 class OGRFeature;
38 
45 /*
46  * All OGRStyleTool param lists are defined in ogr_core.h.
47  */
48 
50 typedef enum ogr_style_type
51 {
52  OGRSTypeString,
53  OGRSTypeDouble,
54  OGRSTypeInteger,
55  OGRSTypeBoolean
56 } OGRSType;
57 
59 typedef struct ogr_style_param
60 {
61  int eParam;
62  const char *pszToken;
63  GBool bGeoref;
64  OGRSType eType;
65 } OGRStyleParamId;
66 
67 typedef struct ogr_style_value
68 {
69  char *pszValue;
70  double dfValue;
71  int nValue; // Used for both integer and boolean types
72  GBool bValid;
73  OGRSTUnitId eUnit;
74 } OGRStyleValue;
76 
77 // Every time a pszStyleString given in parameter is NULL,
78 // the StyleString defined in the Mgr will be use.
79 
83 class CPL_DLL OGRStyleTable
84 {
85  private:
86  char **m_papszStyleTable;
87 
88  CPLString osLastRequestedStyleName;
89  int iNextStyle;
90 
91  public:
92  OGRStyleTable();
93  ~OGRStyleTable();
94  GBool AddStyle(const char *pszName,const char *pszStyleString);
95  GBool RemoveStyle(const char *pszName);
96  GBool ModifyStyle(const char *pszName, const char *pszStyleString);
97 
98  GBool SaveStyleTable(const char *pszFilename);
99  GBool LoadStyleTable(const char *pszFilename);
100  const char *Find(const char *pszStyleString);
101  GBool IsExist(const char *pszName);
102  const char *GetStyleName(const char *pszName);
103  void Print(FILE *fpOut);
104  void Clear();
105  OGRStyleTable *Clone();
106  void ResetStyleStringReading();
107  const char *GetNextStyle();
108  const char *GetLastStyleName();
109 };
110 
111 class OGRStyleTool;
112 
116 class CPL_DLL OGRStyleMgr
117 {
118  private:
119  OGRStyleTable *m_poDataSetStyleTable;
120  char *m_pszStyleString;
121 
122  public:
123  explicit OGRStyleMgr(OGRStyleTable *poDataSetStyleTable = NULL);
124  ~OGRStyleMgr();
125 
126  GBool SetFeatureStyleString(OGRFeature *,const char *pszStyleString=NULL,
127  GBool bNoMatching = FALSE);
128  /* It will set in the given feature the pszStyleString with
129  the style or will set the style name found in
130  dataset StyleTable (if bNoMatching == FALSE). */
131 
132  const char *InitFromFeature(OGRFeature *);
133  GBool InitStyleString(const char *pszStyleString = NULL);
134 
135  const char *GetStyleName(const char *pszStyleString= NULL);
136  const char *GetStyleByName(const char *pszStyleName);
137 
138  GBool AddStyle(const char *pszStyleName, const char *pszStyleString=NULL);
139 
140  const char *GetStyleString(OGRFeature * = NULL);
141 
142  GBool AddPart(OGRStyleTool *);
143  GBool AddPart(const char *);
144 
145  int GetPartCount(const char *pszStyleString = NULL);
146  OGRStyleTool *GetPart(int hPartId, const char *pszStyleString = NULL);
147 
148  /* It could have a reference counting process us for the OGRStyleTable, if
149  needed. */
151  OGRStyleTable *GetDataSetStyleTable(){return m_poDataSetStyleTable;}
152 
153  OGRStyleTool *CreateStyleToolFromStyleString(const char *pszStyleString);
155 };
156 
160 class CPL_DLL OGRStyleTool
161 {
162  private:
163  GBool m_bModified;
164  GBool m_bParsed;
165  double m_dfScale;
166  OGRSTUnitId m_eUnit;
167  OGRSTClassId m_eClassId;
168  char *m_pszStyleString;
169 
170  virtual GBool Parse() = 0;
171 
172  protected:
173 #ifndef DOXYGEN_SKIP
174  GBool Parse(const OGRStyleParamId* pasStyle,
175  OGRStyleValue* pasValue,
176  int nCount);
177 #endif
178 
179  public:
180 
181  OGRStyleTool() :
182  m_bModified(FALSE),
183  m_bParsed(FALSE),
184  m_dfScale(0.0),
185  m_eUnit(OGRSTUGround),
186  m_eClassId(OGRSTCNone),
187  m_pszStyleString(NULL)
188  {}
189  explicit OGRStyleTool(OGRSTClassId eClassId);
190  virtual ~OGRStyleTool();
191 
192  static GBool GetRGBFromString(const char *pszColor, int &nRed, int &nGreen,
193  int &nBlue, int &nTransparence);
194  static int GetSpecificId(const char *pszId, const char *pszWanted);
195 
196 #ifndef DOXYGEN_SKIP
197  GBool IsStyleModified() {return m_bModified;}
198  void StyleModified() {m_bModified = TRUE;}
199 
200  GBool IsStyleParsed() {return m_bParsed;}
201  void StyleParsed() {m_bParsed = TRUE;}
202 #endif
203 
204  OGRSTClassId GetType();
205 
206 #ifndef DOXYGEN_SKIP
207  void SetInternalInputUnitFromParam(char *pszString);
208 #endif
209 
210  void SetUnit(OGRSTUnitId,double dfScale = 1.0); //the dfScale will be
211  //used if we are working with Ground Unit ( ground = paper * scale);
212 
213  OGRSTUnitId GetUnit(){return m_eUnit;}
214 
215  // There are two way to set the parameters in the Style, with generic
216  // methods (using a defined enumeration) or with the reel method specific
217  // for Each style tools.
218 
219  virtual const char *GetStyleString() = 0;
220  void SetStyleString(const char *pszStyleString);
221  const char *GetStyleString(const OGRStyleParamId *pasStyleParam ,
222  OGRStyleValue *pasStyleValue, int nSize);
223 
224  const char *GetParamStr(const OGRStyleParamId &sStyleParam ,
225  OGRStyleValue &sStyleValue,
226  GBool &bValueIsNull);
227 
228  int GetParamNum(const OGRStyleParamId &sStyleParam ,
229  OGRStyleValue &sStyleValue,
230  GBool &bValueIsNull);
231 
232  double GetParamDbl(const OGRStyleParamId &sStyleParam ,
233  OGRStyleValue &sStyleValue,
234  GBool &bValueIsNull);
235 
236  void SetParamStr(const OGRStyleParamId &sStyleParam ,
237  OGRStyleValue &sStyleValue,
238  const char *pszParamString);
239 
240  void SetParamNum(const OGRStyleParamId &sStyleParam ,
241  OGRStyleValue &sStyleValue,
242  int nParam);
243 
244  void SetParamDbl(const OGRStyleParamId &sStyleParam ,
245  OGRStyleValue &sStyleValue,
246  double dfParam);
247 #ifndef DOXYGEN_SKIP
248  double ComputeWithUnit(double, OGRSTUnitId);
249  int ComputeWithUnit(int , OGRSTUnitId);
250 #endif
251 };
252 
254 
258 class CPL_DLL OGRStylePen : public OGRStyleTool
259 {
260  private:
261 
262  OGRStyleValue *m_pasStyleValue;
263 
264  GBool Parse() CPL_OVERRIDE;
265 
266  public:
267 
268  OGRStylePen();
269  virtual ~OGRStylePen();
270 
271  /**********************************************************************/
272  /* Explicit fct for all parameters defined in the Drawing tools Pen */
273  /**********************************************************************/
274 
275  const char *Color(GBool &bDefault){return GetParamStr(OGRSTPenColor,bDefault);}
276  void SetColor(const char *pszColor){SetParamStr(OGRSTPenColor,pszColor);}
277  double Width(GBool &bDefault){return GetParamDbl(OGRSTPenWidth,bDefault);}
278  void SetWidth(double dfWidth){SetParamDbl(OGRSTPenWidth,dfWidth);}
279  const char *Pattern(GBool &bDefault){return (const char *)GetParamStr(OGRSTPenPattern,bDefault);}
280  void SetPattern(const char *pszPattern){SetParamStr(OGRSTPenPattern,pszPattern);}
281  const char *Id(GBool &bDefault){return GetParamStr(OGRSTPenId,bDefault);}
282  void SetId(const char *pszId){SetParamStr(OGRSTPenId,pszId);}
283  double PerpendicularOffset(GBool &bDefault){return GetParamDbl(OGRSTPenPerOffset,bDefault);}
284  void SetPerpendicularOffset(double dfPerp){SetParamDbl(OGRSTPenPerOffset,dfPerp);}
285  const char *Cap(GBool &bDefault){return GetParamStr(OGRSTPenCap,bDefault);}
286  void SetCap(const char *pszCap){SetParamStr(OGRSTPenCap,pszCap);}
287  const char *Join(GBool &bDefault){return GetParamStr(OGRSTPenJoin,bDefault);}
288  void SetJoin(const char *pszJoin){SetParamStr(OGRSTPenJoin,pszJoin);}
289  int Priority(GBool &bDefault){return GetParamNum(OGRSTPenPriority,bDefault);}
290  void SetPriority(int nPriority){SetParamNum(OGRSTPenPriority,nPriority);}
291 
292  /*****************************************************************/
293 
294  const char *GetParamStr(OGRSTPenParam eParam, GBool &bValueIsNull);
295  int GetParamNum(OGRSTPenParam eParam,GBool &bValueIsNull);
296  double GetParamDbl(OGRSTPenParam eParam,GBool &bValueIsNull);
297  void SetParamStr(OGRSTPenParam eParam, const char *pszParamString);
298  void SetParamNum(OGRSTPenParam eParam, int nParam);
299  void SetParamDbl(OGRSTPenParam eParam, double dfParam);
300  const char *GetStyleString() CPL_OVERRIDE;
301 };
302 
306 class CPL_DLL OGRStyleBrush : public OGRStyleTool
307 {
308  private:
309 
310  OGRStyleValue *m_pasStyleValue;
311 
312  GBool Parse() CPL_OVERRIDE;
313 
314  public:
315 
316  OGRStyleBrush();
317  virtual ~OGRStyleBrush();
318 
319  /* Explicit fct for all parameters defined in the Drawing tools Brush */
320 
321  const char *ForeColor(GBool &bDefault){return GetParamStr(OGRSTBrushFColor,bDefault);}
322  void SetForeColor(const char *pszColor){SetParamStr(OGRSTBrushFColor,pszColor);}
323  const char *BackColor(GBool &bDefault){return GetParamStr(OGRSTBrushBColor,bDefault);}
324  void SetBackColor(const char *pszColor){SetParamStr(OGRSTBrushBColor,pszColor);}
325  const char *Id(GBool &bDefault){ return GetParamStr(OGRSTBrushId,bDefault);}
326  void SetId(const char *pszId){SetParamStr(OGRSTBrushId,pszId);}
327  double Angle(GBool &bDefault){return GetParamDbl(OGRSTBrushAngle,bDefault);}
328  void SetAngle(double dfAngle){SetParamDbl(OGRSTBrushAngle,dfAngle );}
329  double Size(GBool &bDefault){return GetParamDbl(OGRSTBrushSize,bDefault);}
330  void SetSize(double dfSize){SetParamDbl(OGRSTBrushSize,dfSize );}
331  double SpacingX(GBool &bDefault){return GetParamDbl(OGRSTBrushDx,bDefault);}
332  void SetSpacingX(double dfX){SetParamDbl(OGRSTBrushDx,dfX );}
333  double SpacingY(GBool &bDefault){return GetParamDbl(OGRSTBrushDy,bDefault);}
334  void SetSpacingY(double dfY){SetParamDbl(OGRSTBrushDy,dfY );}
335  int Priority(GBool &bDefault){ return GetParamNum(OGRSTBrushPriority,bDefault);}
336  void SetPriority(int nPriority){ SetParamNum(OGRSTBrushPriority,nPriority);}
337 
338  /*****************************************************************/
339 
340  const char *GetParamStr(OGRSTBrushParam eParam, GBool &bValueIsNull);
341  int GetParamNum(OGRSTBrushParam eParam,GBool &bValueIsNull);
342  double GetParamDbl(OGRSTBrushParam eParam,GBool &bValueIsNull);
343  void SetParamStr(OGRSTBrushParam eParam, const char *pszParamString);
344  void SetParamNum(OGRSTBrushParam eParam, int nParam);
345  void SetParamDbl(OGRSTBrushParam eParam, double dfParam);
346  const char *GetStyleString() CPL_OVERRIDE;
347 };
348 
352 class CPL_DLL OGRStyleSymbol : public OGRStyleTool
353 {
354  private:
355 
356  OGRStyleValue *m_pasStyleValue;
357 
358  GBool Parse() CPL_OVERRIDE;
359 
360  public:
361 
362  OGRStyleSymbol();
363  virtual ~OGRStyleSymbol();
364 
365  /*****************************************************************/
366  /* Explicit fct for all parameters defined in the Drawing tools */
367  /*****************************************************************/
368 
369  const char *Id(GBool &bDefault){return GetParamStr(OGRSTSymbolId,bDefault);}
370  void SetId(const char *pszId){ SetParamStr(OGRSTSymbolId,pszId);}
371  double Angle(GBool &bDefault){ return GetParamDbl(OGRSTSymbolAngle,bDefault);}
372  void SetAngle(double dfAngle){SetParamDbl(OGRSTSymbolAngle,dfAngle );}
373  const char *Color(GBool &bDefault){return GetParamStr(OGRSTSymbolColor,bDefault);}
374  void SetColor(const char *pszColor){SetParamStr(OGRSTSymbolColor,pszColor);}
375  double Size(GBool &bDefault){ return GetParamDbl(OGRSTSymbolSize,bDefault);}
376  void SetSize(double dfSize){ SetParamDbl(OGRSTSymbolSize,dfSize );}
377  double SpacingX(GBool &bDefault){return GetParamDbl(OGRSTSymbolDx,bDefault);}
378  void SetSpacingX(double dfX){SetParamDbl(OGRSTSymbolDx,dfX );}
379  double SpacingY(GBool &bDefault){return GetParamDbl(OGRSTSymbolDy,bDefault);}
380  void SetSpacingY(double dfY){SetParamDbl(OGRSTSymbolDy,dfY );}
381  double Step(GBool &bDefault){return GetParamDbl(OGRSTSymbolStep,bDefault);}
382  void SetStep(double dfStep){SetParamDbl(OGRSTSymbolStep,dfStep );}
383  double Offset(GBool &bDefault){return GetParamDbl(OGRSTSymbolOffset,bDefault);}
384  void SetOffset(double dfOffset){SetParamDbl(OGRSTSymbolOffset,dfOffset );}
385  double Perp(GBool &bDefault){return GetParamDbl(OGRSTSymbolPerp,bDefault);}
386  void SetPerp(double dfPerp){SetParamDbl(OGRSTSymbolPerp,dfPerp );}
387  int Priority(GBool &bDefault){return GetParamNum(OGRSTSymbolPriority,bDefault);}
388  void SetPriority(int nPriority){SetParamNum(OGRSTSymbolPriority,nPriority);}
389  const char *FontName(GBool &bDefault)
390  {return GetParamStr(OGRSTSymbolFontName,bDefault);}
391  void SetFontName(const char *pszFontName)
392  {SetParamStr(OGRSTSymbolFontName,pszFontName);}
393  const char *OColor(GBool &bDefault){return GetParamStr(OGRSTSymbolOColor,bDefault);}
394  void SetOColor(const char *pszColor){SetParamStr(OGRSTSymbolOColor,pszColor);}
395 
396  /*****************************************************************/
397 
398  const char *GetParamStr(OGRSTSymbolParam eParam, GBool &bValueIsNull);
399  int GetParamNum(OGRSTSymbolParam eParam,GBool &bValueIsNull);
400  double GetParamDbl(OGRSTSymbolParam eParam,GBool &bValueIsNull);
401  void SetParamStr(OGRSTSymbolParam eParam, const char *pszParamString);
402  void SetParamNum(OGRSTSymbolParam eParam, int nParam);
403  void SetParamDbl(OGRSTSymbolParam eParam, double dfParam);
404  const char *GetStyleString() CPL_OVERRIDE;
405 };
406 
410 class CPL_DLL OGRStyleLabel : public OGRStyleTool
411 {
412  private:
413 
414  OGRStyleValue *m_pasStyleValue;
415 
416  GBool Parse() CPL_OVERRIDE;
417 
418  public:
419 
420  OGRStyleLabel();
421  virtual ~OGRStyleLabel();
422 
423  /*****************************************************************/
424  /* Explicit fct for all parameters defined in the Drawing tools */
425  /*****************************************************************/
426 
427  const char *FontName(GBool &bDefault){return GetParamStr(OGRSTLabelFontName,bDefault);}
428  void SetFontName(const char *pszFontName){SetParamStr(OGRSTLabelFontName,pszFontName);}
429  double Size(GBool &bDefault){return GetParamDbl(OGRSTLabelSize,bDefault);}
430  void SetSize(double dfSize){SetParamDbl(OGRSTLabelSize,dfSize);}
431  const char *TextString(GBool &bDefault){return GetParamStr(OGRSTLabelTextString,bDefault);}
432  void SetTextString(const char *pszTextString){SetParamStr(OGRSTLabelTextString,pszTextString);}
433  double Angle(GBool &bDefault){return GetParamDbl(OGRSTLabelAngle,bDefault);}
434  void SetAngle(double dfAngle){SetParamDbl(OGRSTLabelAngle,dfAngle);}
435  const char *ForeColor(GBool &bDefault){return GetParamStr(OGRSTLabelFColor,bDefault);}
436  void SetForColor(const char *pszForColor){SetParamStr(OGRSTLabelFColor,pszForColor);}
437  const char *BackColor(GBool &bDefault){return GetParamStr(OGRSTLabelBColor,bDefault);}
438  void SetBackColor(const char *pszBackColor){SetParamStr(OGRSTLabelBColor,pszBackColor);}
439  const char *Placement(GBool &bDefault){return GetParamStr(OGRSTLabelPlacement,bDefault);}
440  void SetPlacement(const char *pszPlacement){SetParamStr(OGRSTLabelPlacement,pszPlacement);}
441  int Anchor(GBool &bDefault){return GetParamNum(OGRSTLabelAnchor,bDefault);}
442  void SetAnchor(int nAnchor){SetParamNum(OGRSTLabelAnchor,nAnchor);}
443  double SpacingX(GBool &bDefault){return GetParamDbl(OGRSTLabelDx,bDefault);}
444  void SetSpacingX(double dfX){SetParamDbl(OGRSTLabelDx,dfX);}
445  double SpacingY(GBool &bDefault){return GetParamDbl(OGRSTLabelDy,bDefault);}
446  void SetSpacingY(double dfY){SetParamDbl(OGRSTLabelDy,dfY);}
447  double Perp(GBool &bDefault){return GetParamDbl(OGRSTLabelPerp,bDefault);}
448  void SetPerp(double dfPerp){SetParamDbl(OGRSTLabelPerp,dfPerp);}
449  GBool Bold(GBool &bDefault){return GetParamNum(OGRSTLabelBold,bDefault);}
450  void SetBold(GBool bBold){SetParamNum(OGRSTLabelBold,bBold);}
451  GBool Italic(GBool &bDefault){return GetParamNum(OGRSTLabelItalic,bDefault);}
452  void SetItalic(GBool bItalic){SetParamNum(OGRSTLabelItalic,bItalic);}
453  GBool Underline(GBool &bDefault){return GetParamNum(OGRSTLabelUnderline,bDefault);}
454  void SetUnderline(GBool bUnderline){SetParamNum(OGRSTLabelUnderline,bUnderline);}
455  int Priority(GBool &bDefault){return GetParamNum(OGRSTLabelPriority,bDefault);}
456  void SetPriority(int nPriority){SetParamNum(OGRSTLabelPriority,nPriority);}
457  GBool Strikeout(GBool &bDefault){return GetParamNum(OGRSTLabelStrikeout,bDefault);}
458  void SetStrikeout(GBool bStrikeout){SetParamNum(OGRSTLabelStrikeout,bStrikeout);}
459  double Stretch(GBool &bDefault){return GetParamDbl(OGRSTLabelStretch,bDefault);}
460  void SetStretch(double dfStretch){SetParamDbl(OGRSTLabelStretch,dfStretch);}
461  const char *AdjustmentHor(GBool &bDefault){return GetParamStr(OGRSTLabelAdjHor,bDefault);}
462  void SetAdjustmentHor(const char *pszAdjustmentHor){SetParamStr(OGRSTLabelAdjHor,pszAdjustmentHor);}
463  const char *AdjustmentVert(GBool &bDefault){return GetParamStr(OGRSTLabelAdjVert,bDefault);}
464  void SetAdjustmentVert(const char *pszAdjustmentVert){SetParamStr(OGRSTLabelAdjHor,pszAdjustmentVert);}
465  const char *ShadowColor(GBool &bDefault){return GetParamStr(OGRSTLabelHColor,bDefault);}
466  void SetShadowColor(const char *pszShadowColor){SetParamStr(OGRSTLabelHColor,pszShadowColor);}
467  const char *OutlineColor(GBool &bDefault){return GetParamStr(OGRSTLabelOColor,bDefault);}
468  void SetOutlineColor(const char *pszOutlineColor){SetParamStr(OGRSTLabelOColor,pszOutlineColor);}
469 
470  /*****************************************************************/
471 
472  const char *GetParamStr(OGRSTLabelParam eParam, GBool &bValueIsNull);
473  int GetParamNum(OGRSTLabelParam eParam,GBool &bValueIsNull);
474  double GetParamDbl(OGRSTLabelParam eParam,GBool &bValueIsNull);
475  void SetParamStr(OGRSTLabelParam eParam, const char *pszParamString);
476  void SetParamNum(OGRSTLabelParam eParam, int nParam);
477  void SetParamDbl(OGRSTLabelParam eParam, double dfParam);
478  const char *GetStyleString() CPL_OVERRIDE;
479 };
480 
482 
483 #endif /* OGR_FEATURESTYLE_INCLUDE */
Dy.
Definition: ogr_core.h:843
Outline color.
Definition: ogr_core.h:880
Id.
Definition: ogr_core.h:838
Dx.
Definition: ogr_core.h:824
Font name.
Definition: ogr_core.h:860
enum ogr_style_tool_param_symbol_id OGRSTSymbolParam
List of parameters for use with OGRStyleSymbol.
Highlight color.
Definition: ogr_core.h:879
int GetParamNum(const OGRStyleParamId &sStyleParam, OGRStyleValue &sStyleValue, GBool &bValueIsNull)
Undocumented.
Definition: ogrfeaturestyle.cpp:2082
Foreground color.
Definition: ogr_core.h:819
void SetParamDbl(const OGRStyleParamId &sStyleParam, OGRStyleValue &sStyleValue, double dfParam)
Undocumented.
Definition: ogrfeaturestyle.cpp:2239
Color.
Definition: ogr_core.h:801
const char * GetParamStr(const OGRStyleParamId &sStyleParam, OGRStyleValue &sStyleValue, GBool &bValueIsNull)
Undocumented.
Definition: ogrfeaturestyle.cpp:2028
Background color.
Definition: ogr_core.h:820
int GBool
Type for boolean values (alias to int)
Definition: cpl_port.h:215
Anchor.
Definition: ogr_core.h:867
#define CPL_OVERRIDE
To be used in public headers only.
Definition: cpl_port.h:1055
Size.
Definition: ogr_core.h:841
Priority.
Definition: ogr_core.h:826
Offset.
Definition: ogr_core.h:846
Angle.
Definition: ogr_core.h:863
Join.
Definition: ogr_core.h:807
Color.
Definition: ogr_core.h:840
Underline.
Definition: ogr_core.h:873
enum ogr_style_tool_param_brush_id OGRSTBrushParam
List of parameters for use with OGRStyleBrush.
Vectical adjustment.
Definition: ogr_core.h:878
Dy.
Definition: ogr_core.h:825
enum ogr_style_tool_param_label_id OGRSTLabelParam
List of parameters for use with OGRStyleLabel.
Bold.
Definition: ogr_core.h:871
void SetParamNum(const OGRStyleParamId &sStyleParam, OGRStyleValue &sStyleValue, int nParam)
Undocumented.
Definition: ogrfeaturestyle.cpp:2199
Ground unit.
Definition: ogr_core.h:788
Id.
Definition: ogr_core.h:821
Cap.
Definition: ogr_core.h:806
Perpendicular.
Definition: ogr_core.h:845
Convenient string class based on std::string.
Definition: cpl_string.h:338
Perpendicular offset.
Definition: ogr_core.h:805
Dx.
Definition: ogr_core.h:868
This class represents a style manager.
Definition: ogr_featurestyle.h:116
Angle.
Definition: ogr_core.h:822
virtual const char * GetStyleString()=0
Get the style string for this Style Tool.
Size.
Definition: ogr_core.h:861
Various convenience functions for working with strings and string lists.
enum ogr_style_tool_class_id OGRSTClassId
OGRStyleTool derived class types (returned by GetType()).
Outline color.
Definition: ogr_core.h:849
Id.
Definition: ogr_core.h:804
enum ogr_style_tool_param_pen_id OGRSTPenParam
List of parameters for use with OGRStylePen.
OGRSTUnitId GetUnit()
Get Style Tool units.
Definition: ogr_featurestyle.h:213
enum ogr_style_tool_units_id OGRSTUnitId
List of units supported by OGRStyleTools.
Step.
Definition: ogr_core.h:844
Priority.
Definition: ogr_core.h:847
Size.
Definition: ogr_core.h:823
Pattern.
Definition: ogr_core.h:803
Priority.
Definition: ogr_core.h:808
Horizontal adjustment.
Definition: ogr_core.h:877
Core portability services for cross-platform OGR code.
void SetParamStr(const OGRStyleParamId &sStyleParam, OGRStyleValue &sStyleValue, const char *pszParamString)
Undocumented.
Definition: ogrfeaturestyle.cpp:2160
Strike out.
Definition: ogr_core.h:875
Stretch.
Definition: ogr_core.h:876
Placement.
Definition: ogr_core.h:866
Various convenience functions for CPL.
Text string.
Definition: ogr_core.h:862
Foreground color.
Definition: ogr_core.h:864
Dx.
Definition: ogr_core.h:842
Perpendicular.
Definition: ogr_core.h:870
Italic.
Definition: ogr_core.h:872
Width.
Definition: ogr_core.h:802
This class represents a style tool.
Definition: ogr_featurestyle.h:160
Angle.
Definition: ogr_core.h:839
A simple feature, including geometry and attributes.
Definition: ogr_feature.h:279
This class represents a style table.
Definition: ogr_featurestyle.h:83
Background color.
Definition: ogr_core.h:865
Font name.
Definition: ogr_core.h:848
None.
Definition: ogr_core.h:775
Dy.
Definition: ogr_core.h:869
ogr_style_type
OGR Style type.
Definition: ogr_featurestyle.h:50
enum ogr_style_type OGRSType
OGR Style type.
Priority.
Definition: ogr_core.h:874
double GetParamDbl(const OGRStyleParamId &sStyleParam, OGRStyleValue &sStyleValue, GBool &bValueIsNull)
Undocumented.
Definition: ogrfeaturestyle.cpp:2103

Generated for GDAL by doxygen 1.8.8.