X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fdesigner%2Fsvgexporter.h;h=20af4d3eda370c0fb7f287efa7951dc6929ab583;hb=4c8c03d25ec4d58772ceb5b287deab645fdae19f;hp=6e93ca4de5f881a639b8a716a420e027a2adfd45;hpb=6ba6af3637c299ab00828c49de9151429488cc17;p=r2c2.git diff --git a/source/designer/svgexporter.h b/source/designer/svgexporter.h index 6e93ca4..20af4d3 100644 --- a/source/designer/svgexporter.h +++ b/source/designer/svgexporter.h @@ -1,29 +1,31 @@ -/* $Id$ - -This file is part of the MSP Märklin suite -Copyright © 2010 Mikkosoft Productions, Mikko Rasa -Distributed under the GPL -*/ - #ifndef SVGEXPORTER_H_ #define SVGEXPORTER_H_ #include -#include "libmarklin/layout.h" +#include "libr2c2/layout.h" class SvgExporter { private: - const Marklin::Layout &layout; + const R2C2::Layout &layout; float gauge; - float rail_width; + xmlpp::Element *root; + xmlpp::Element *defs; + std::set tracks_created; + std::set appearances_created; + std::list styles; public: - SvgExporter(const Marklin::Layout &); + SvgExporter(const R2C2::Layout &); void save(const std::string &); private: - void save_track(const Marklin::Track &, xmlpp::Element &); + std::string create_appearance(const R2C2::TrackAppearance &); + std::string create_point_data(const R2C2::Vector &); + std::string create_line_data(const R2C2::Vector &, const R2C2::Vector &); + std::string create_curve_data(const R2C2::Vector &, const R2C2::Vector &, const R2C2::Vector &, const R2C2::Vector &); + std::string create_track_type(const R2C2::TrackType &); + void save_track(const R2C2::Track &); }; #endif