26 const bool &horizontally_flipped,
27 const Color &color_filter) {
30 tx0 = horizontally_flipped ? 1.0f : 0.0f,
33 Material material(image_name, color_filter);
49 const float &radians_ccw,
50 const float &scaling_factor,
52 const bool &horizontally_flipped,
53 const Color &color_filter) {
58 ulv =
Point3f(upper_left) - about3,
59 llv =
Point3f(upper_left.
x, lower_right.
y, 0.0f) - about3,
60 lrv =
Point3f(lower_right) - about3,
61 urv =
Point3f(lower_right.
x, upper_left.
y, 0.0f) - about3;
64 llv.set_spherical(llv.theta() - radians_ccw, llv.phi(), llv.magnitude() * scaling_factor);
65 lrv.set_spherical(lrv.theta() - radians_ccw, lrv.phi(), lrv.magnitude() * scaling_factor);
66 urv.set_spherical(urv.theta() - radians_ccw, urv.phi(), urv.magnitude() * scaling_factor);
69 tx0 = horizontally_flipped ? 1.0f : 0.0f,
72 Material material(image_name, color_filter);
100 const int &frame_number) {
108 const String &sprite_name) {
122 if(frameno == framecap - 1)
129 const String &sprite_name) {
void set_spherical(const float &theta, const float &phi, const float &magnitude=1)
Set the vector using spherical coordinates.
void set_current_frame(const unsigned long &id, const int &frame_number)
Set the frame number for a Sprite.
An Abstraction of a Material.
unsigned long get_id(const String &name) const
Get an id by name, possibly throwing an Error.
void increment_sprite_frame(const String &sprite_name)
An Abstraction of a Quadrilateral.
int get_num_frames(const unsigned long &id)
Get the number of frames; returns 0 if it is not a Sprite.
void render_image(const String &image_name, const Point2f &upper_left, const Point2f &lower_right, const bool &horizontally_flipped, const Color &color_filter)
float magnitude() const
Get the magnitude of the vector.
A 3D Point represented with floats.
An Abstraction of a Texture.
A Featureful 3-Space Vector Class.
void set_current_frame(const int &frame_number)
Set this frame.
virtual void render(const Renderable &renderable)=0
Render a Renderable.
float theta() const
theta == radians north of vector i
void decrement_sprite_frame(const String &sprite_name)
Textures & get_Textures()
Get access to the singleton.
GLenum GLenum GLuint texture
An Abstraction of a Vertex in 2-space, textured.
bool is_sprite(const String &sprite)
int get_current_frame() const
Get the currently selected frame number.
float phi() const
phi == radians down from k
GLdouble GLdouble GLdouble GLdouble q
int get_num_frames() const
Get the number of frames.
int sprite_num_frames(const String &sprite)
bool is_Sprite(const unsigned long &id)
Does this id point to a Sprite.
Video & get_Video()
Get access to the singleton.
void set_sprite_frame(const String &sprite, const int &frame_number)
void lend_Material(const Material *const &material)
Set the Material, giving the Renderable no ownership.
A 2D Point represented with floats.