* (c) 2014 Martin Mares <mj@ucw.cz>
*/
-#ifndef _BRUM_SYM_H
-#define _BRUM_SYM_H
+#ifndef _LEO_SYM_H
+#define _LEO_SYM_H
#include "osm.h"
#include "style.h"
void (*draw)(struct symbol *sym, struct svg *svg);
void (*gen)(struct osm_object *o, struct style_info *si, struct svg *svg);
void (*init)(void);
+ struct symbol* (*copy)(struct symbol *sym);
+ bool (*look_same)(struct symbol *s1, struct symbol *s2);
};
extern struct mempool *sym_mp;
void sym_from_style(struct osm_object *o, struct style_results *sr, struct svg *svg);
z_index_t sym_zindex(struct osm_object *o, struct style_info *si, double default_mzi);
+struct symbol * sym_copy(struct symbol *sym);
+bool sym_look_same(struct symbol *s1, struct symbol *s2);
+
/* sym-point.c handles point symbols and icons */
struct sym_point {
double fill_opacity;
bool do_stroke;
bool do_fill;
+ double x;
+ double y;
};
// FIXME: Make sym_*_new() and symbolizer structs internal
color_t text_color;
double x;
double y;
+ double rotate; // Rotation in degrees CCW
struct text_font *font;
double opacity;
color_t halo_color;