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;