#include <papyrus/regularpolygon.h>
Inheritance diagram for Papyrus::RegularPolygon:
Public Types | |
enum | Style { ZERO_RADIUS, ZERO_APOTHEM } |
typedef PapyrusSmartPointer< RegularPolygon > | pointer |
Public Member Functions | |
RegularPolygon (unsigned int sides=3, double radius=1.0, Style style=ZERO_RADIUS) | |
unsigned int | sides () |
void | set_sides (unsigned int s) |
double | radius () |
void | set_radius (double r) |
void | set_sides_radius (unsigned int s, double r) |
double | edge_length () |
void | set_edge_length (double e) |
void | set_sides_edge_length (unsigned int s, double e) |
double | apothem_length () |
void | set_apothem_length (double a) |
void | set_sides_apothem_length (unsigned int s, double a) |
Style | style () |
void | set_style (Style) |
sigc::signal< void > | signal_sides () |
signal emitted when the number of sides changes | |
sigc::signal< void > | signal_size () |
signal emitted when the radius, edge length, or apothem length changes | |
sigc::signal< void > | signal_style () |
signal emitted when the style changes | |
PAPYRUS_CLASS_NAME ("Regular Polygon") | |
PAPYRUS_CLONE_METHOD (RegularPolygon) | |
Static Public Member Functions | |
static RegularPolygon::pointer | create (unsigned int sides=3, double radius=1.0, Style style=ZERO_RADIUS) |
Protected Member Functions | |
void | create_vertices () |
Protected Attributes | |
unsigned int | m_sides |
double | m_radius |
Style | m_style |
sigc::signal< void > | m_signal_sides |
sigc::signal< void > | m_signal_size |
sigc::signal< void > | m_signal_style |