Empirical
Public Member Functions | Protected Attributes | List of all members
D3::BaseLineGenerator Class Reference

#include <svg_shapes.h>

Inheritance diagram for D3::BaseLineGenerator:
D3::SvgShapeGenerator D3::D3_Base D3::LineGenerator D3::RadialLineGenerator D3::AreaGenerator D3::LinkGenerator D3::RadialAreaGenerator D3::ArcGenerator D3::ChordGenerator

Public Member Functions

 BaseLineGenerator ()
 
void SetCurve (std::string curve)
 
void SetTension (float tension)
 
void SetDefined (std::string defined)
 
template<typename T , size_t SIZE>
std::string Generate (emp::array< emp::array< T, 2 >, SIZE > &data)
 
template<typename T , std::size_t SIZE>
Selection DrawShape (emp::array< emp::array< T, 2 >, SIZE > &data, Selection &s)
 
Selection DrawShape (Dataset data, Selection s)
 DrawShape will also accept a D3::Dataset. More...
 
template<typename T , std::size_t SIZE, std::size_t SIZE2>
Selection DrawShape (emp::array< emp::array< emp::array< T, 2 >, SIZE >, SIZE2 > &data)
 If you pass a triple-nested array, it will be treated as an array of paths. More...
 
int GetID () const
 
void Log () const
 

Protected Attributes

int id
 

Detailed Description

Base class for generating both cartesian and radial lines You don't normally want to instantiate this - use LineGenerator or RadialLineGenerator instead.

Constructor & Destructor Documentation

D3::BaseLineGenerator::BaseLineGenerator ( )
inline

Member Function Documentation

template<typename T , std::size_t SIZE>
Selection D3::SvgShapeGenerator::DrawShape ( emp::array< emp::array< T, 2 >, SIZE > &  data,
Selection s 
)
inlineinherited

Draws the path associated with [data] onto the [s] selection (must contain a single SVG) element).

Selection D3::SvgShapeGenerator::DrawShape ( Dataset  data,
Selection  s 
)
inlineinherited

DrawShape will also accept a D3::Dataset.

template<typename T , std::size_t SIZE, std::size_t SIZE2>
Selection D3::SvgShapeGenerator::DrawShape ( emp::array< emp::array< emp::array< T, 2 >, SIZE >, SIZE2 > &  data)
inlineinherited

If you pass a triple-nested array, it will be treated as an array of paths.

template<typename T , size_t SIZE>
std::string D3::SvgShapeGenerator::Generate ( emp::array< emp::array< T, 2 >, SIZE > &  data)
inlineinherited

Generate the string describing the path associated with [data] Assumes [data] is an array of 2-element arrays describing (x,y) coordinates and makes the line that connects them

int D3::D3_Base::GetID ( ) const
inlineinherited
void D3::D3_Base::Log ( ) const
inlineinherited
void D3::BaseLineGenerator::SetCurve ( std::string  curve)
inline

Set the method used to interpolate a curve between points in the line. For allowed options, see the d3 documntation

void D3::BaseLineGenerator::SetDefined ( std::string  defined)
inline

Set a function indicating where the line is defined (i.e. valid) Can be a C++ function or a string indicating a Javascript function

void D3::BaseLineGenerator::SetTension ( float  tension)
inline

If interpolation is "bundle", "cardinal", "cardinal-open", or "cardinal-closed", a tension parameter is used.

Member Data Documentation

int D3::D3_Base::id
protectedinherited

The documentation for this class was generated from the following file: