|
A library for working with phylogenetic and population genetic data.
v0.27.0
|
|
Go to the documentation of this file.
106 : position( position )
146 if(
rx != 0.0 ||
ry != 0.0 ) {
178 double cx,
double cy,
227 double rx,
double ry,
239 double cx,
double cy,
240 double rx,
double ry,
296 std::vector< SvgPoint > points,
327 if(
points.size() == 0 ) {
334 auto minmax_x = std::minmax_element(
338 auto minmax_y = std::minmax_element(
344 SvgPoint( minmax_x.first->x, minmax_y.first->y ),
345 SvgPoint( minmax_x.second->x, minmax_y.second->y )
359 for(
size_t i = 0; i <
points.size(); ++i ) {
391 std::vector< SvgPoint >
const& points,
422 if(
points.size() == 0 ) {
429 auto minmax_x = std::minmax_element(
433 auto minmax_y = std::minmax_element(
439 SvgPoint( minmax_x.first->x, minmax_y.first->y ),
440 SvgPoint( minmax_x.second->x, minmax_y.second->y )
454 for(
size_t i = 0; i <
points.size(); ++i ) {
486 std::vector< std::string >
const& elements,
528 for(
size_t i = 0; i <
elements.size(); ++i ) {
SvgBox bounding_box() const
std::vector< SvgPoint > points
std::vector< std::string > elements
std::string indent(std::string const &text, std::string const &indentation)
Indent each line of text with indentation and return the result.
SvgEllipse(SvgPoint const ¢er, double rx, double ry, SvgStroke const &stroke=SvgStroke(), SvgFill const &fill=SvgFill())
self_type & operator<<(std::string elem)
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
self_type & operator<<(SvgPoint p)
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
SvgBox bounding_box() const
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
self_type & add(double x, double y)
SvgBox bounding_box() const
SvgBox bounding_box() const
SvgBox bounding_box() const
self_type & add(double x, double y)
static std::string indentation_string
Provides some commonly used string utility functions.
SvgLine(SvgPoint const &point_1, SvgPoint const &point_2, SvgStroke const &stroke=SvgStroke())
std::vector< SvgPoint > points
SvgBox bounding_box() const
SvgPolyline(SvgStroke const &stroke=SvgStroke(), SvgFill const &fill=SvgFill())
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
Container namespace for all symbols of genesis in order to keep them separate when used as a library.
SvgPolygon(SvgStroke const &stroke=SvgStroke(), SvgFill const &fill=SvgFill())
std::string svg_attribute(std::string const &name, T const &value, std::string const &unit="")
SvgPath(SvgStroke const &stroke=SvgStroke(), SvgFill const &fill=SvgFill())
void write(std::ostream &out) const
SvgBox bounding_box() const
SvgBox bounding_box() const
SvgRect(SvgPoint const &position, SvgSize const &size, SvgStroke const &stroke=SvgStroke(), SvgFill const &fill=SvgFill())
SvgCircle(SvgPoint const ¢er, double radius, SvgStroke const &stroke=SvgStroke(), SvgFill const &fill=SvgFill())
self_type & add(std::string elem)
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
self_type & operator<<(SvgPoint p)
std::string repeat(std::string const &word, size_t times)
Take a string and repeat it a given number of times.
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const
void write(std::ostream &out) const
std::string referenced_id
void write(std::ostream &out, size_t indent=0, SvgDrawingOptions const &options=SvgDrawingOptions()) const