![]() |
![]() |
![]() |
libchamplain Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties |
ChamplainMemphisRendererChamplainMemphisRenderer — A renderer that renders tiles from OSM vector XML data |
struct ChamplainMemphisRenderer; struct ChamplainMemphisRule; struct ChamplainMemphisRuleAttr; enum ChamplainMemphisRuleType; ChamplainMemphisRenderer * champlain_memphis_renderer_new_full (guint tile_size
); void champlain_memphis_renderer_load_rules (ChamplainMemphisRenderer *renderer
,const gchar *rules_path
); ClutterColor * champlain_memphis_renderer_get_background_color (ChamplainMemphisRenderer *renderer
); void champlain_memphis_renderer_set_background_color (ChamplainMemphisRenderer *renderer
,const ClutterColor *color
); GList * champlain_memphis_renderer_get_rule_ids (ChamplainMemphisRenderer *renderer
); void champlain_memphis_renderer_set_rule (ChamplainMemphisRenderer *renderer
,ChamplainMemphisRule *rule
); ChamplainMemphisRule * champlain_memphis_renderer_get_rule (ChamplainMemphisRenderer *renderer
,const gchar *id
); void champlain_memphis_renderer_remove_rule (ChamplainMemphisRenderer *renderer
,const gchar *id
); ChamplainBoundingBox * champlain_memphis_renderer_get_bounding_box (ChamplainMemphisRenderer *renderer
); void champlain_memphis_renderer_set_tile_size (ChamplainMemphisRenderer *renderer
,guint size
); guint champlain_memphis_renderer_get_tile_size (ChamplainMemphisRenderer *renderer
);
GObject +----GInitiallyUnowned +----ChamplainRenderer +----ChamplainMemphisRenderer
The ChamplainMemphisRenderer uses the rendering library LibMemphis to render tiles based on OpenStreetMap data. Tiles are rendered in separate threads. It supports zoom levels 12 to 18.
The output of the renderer can be configured with a Memphis rules XML file. (TODO: link to the specification) The default rules only show highways as thin black lines. Once loaded, rules can be queried and edited.
struct ChamplainMemphisRenderer;
The ChamplainMemphisRenderer structure contains only private data and should be accessed using the provided API
Since 0.8
struct ChamplainMemphisRule { gchar **keys; gchar **values; ChamplainMemphisRuleType type; ChamplainMemphisRuleAttr *polygon; ChamplainMemphisRuleAttr *line; ChamplainMemphisRuleAttr *border; ChamplainMemphisRuleAttr *text; };
A wrapper of the MemphisRule structure. For details see the libmemphis documentation.
gchar ** |
keys |
gchar ** |
values |
ChamplainMemphisRuleType |
type |
ChamplainMemphisRuleAttr * |
polygon |
ChamplainMemphisRuleAttr * |
line |
ChamplainMemphisRuleAttr * |
border |
ChamplainMemphisRuleAttr * |
text |
Since 0.8
struct ChamplainMemphisRuleAttr { guint8 z_min; guint8 z_max; guint8 color_red; guint8 color_green; guint8 color_blue; guint8 color_alpha; gchar *style; gdouble size; };
A wrapper of the MemphisRuleAttr structure. For details see the libmemphis documentation.
Since 0.8
typedef enum { CHAMPLAIN_MEMPHIS_RULE_TYPE_UNKNOWN, CHAMPLAIN_MEMPHIS_RULE_TYPE_NODE, CHAMPLAIN_MEMPHIS_RULE_TYPE_WAY, CHAMPLAIN_MEMPHIS_RULE_TYPE_RELATION } ChamplainMemphisRuleType;
A wrapper of the MemphisRuleType union. For details see the libmemphis documentation.
MEMPHIS_RULE_TYPE_UNKNOWN | |
MEMPHIS_RULE_TYPE_NODE | |
MEMPHIS_RULE_TYPE_WAY | |
MEMPHIS_RULE_TYPE_RELATION |
Since 0.8
ChamplainMemphisRenderer * champlain_memphis_renderer_new_full
(guint tile_size
);
Constructor of a ChamplainMemphisRenderer.
|
the size of the rendered error tile |
Returns : |
a constructed ChamplainMemphisRenderer object |
Since 0.8
void champlain_memphis_renderer_load_rules (ChamplainMemphisRenderer *renderer
,const gchar *rules_path
);
Loads a Memphis rules file.
|
a ChamplainMemphisRenderer |
|
a path to a rules file |
Since 0.8
ClutterColor * champlain_memphis_renderer_get_background_color
(ChamplainMemphisRenderer *renderer
);
Gets the background color of the map.
|
a ChamplainMemphisRenderer |
Returns : |
the background color of the map as a newly-allocated ClutterColor. |
Since 0.8
void champlain_memphis_renderer_set_background_color (ChamplainMemphisRenderer *renderer
,const ClutterColor *color
);
Sets the background color of the map from a ClutterColor.
|
a ChamplainMemphisRenderer |
|
a ClutterColor |
Since 0.8
GList * champlain_memphis_renderer_get_rule_ids
(ChamplainMemphisRenderer *renderer
);
Get a list of rule id's.
|
a ChamplainMemphisRenderer |
Returns : |
a GList of id strings of the form: key1|key2|...|keyN:value1|value2|...|valueM Example: "waterway:river|stream|canal". [transfer full][element-type utf8] |
Since 0.8
void champlain_memphis_renderer_set_rule (ChamplainMemphisRenderer *renderer
,ChamplainMemphisRule *rule
);
Edits or adds a ChamplainMemphisRule to the rules-set. New rules are appended to the list.
|
a ChamplainMemphisRenderer |
|
a ChamplainMemphisRule |
Since 0.8
ChamplainMemphisRule * champlain_memphis_renderer_get_rule (ChamplainMemphisRenderer *renderer
,const gchar *id
);
Gets the requested ChamplainMemphisRule.
|
a ChamplainMemphisRenderer |
|
an id string |
Returns : |
the requested ChamplainMemphisRule or NULL if none is found. |
Since 0.8
void champlain_memphis_renderer_remove_rule (ChamplainMemphisRenderer *renderer
,const gchar *id
);
Removes the rule with the given id.
|
a ChamplainMemphisRenderer |
|
an id string |
Since 0.8
ChamplainBoundingBox * champlain_memphis_renderer_get_bounding_box
(ChamplainMemphisRenderer *renderer
);
Gets the bounding box of the area for which map data is available.
|
a ChamplainMemphisRenderer |
Returns : |
the bounding box |
Since 0.8
void champlain_memphis_renderer_set_tile_size (ChamplainMemphisRenderer *renderer
,guint size
);
Sets the size of the rendered tiles.
|
a ChamplainMemphisRenderer |
|
the size of the rendered tiles |
Since 0.8
guint champlain_memphis_renderer_get_tile_size
(ChamplainMemphisRenderer *renderer
);
Gets the size of the rendered tiles.
|
a ChamplainMemphisRenderer |
Returns : |
the size of the rendered tiles |
Since 0.8
"bounding-box"
property"bounding-box" ChamplainBoundingBox* : Read / Write
The bounding box of the area that contains map data.
Since 0.8
"tile-size"
property"tile-size" guint : Read / Write
The size of the rendered tile.
Allowed values: <= G_MAXINT
Default value: 256