[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pingus-CVS] r3914 - in trunk/pingus/src: . display editor screen worldo
From: |
grumbel at BerliOS |
Subject: |
[Pingus-CVS] r3914 - in trunk/pingus/src: . display editor screen worldobjs |
Date: |
Sun, 27 Jul 2008 16:20:14 +0200 |
Author: grumbel
Date: 2008-07-27 16:20:12 +0200 (Sun, 27 Jul 2008)
New Revision: 3914
Modified:
trunk/pingus/src/display/scene_context.cpp
trunk/pingus/src/display/scene_context.hpp
trunk/pingus/src/editor/editor_screen.cpp
trunk/pingus/src/font_test_screen.cpp
trunk/pingus/src/font_test_screen.hpp
trunk/pingus/src/graphic_context_state.cpp
trunk/pingus/src/screen/screen_manager.cpp
trunk/pingus/src/screen/screen_manager.hpp
trunk/pingus/src/worldobjs/surface_background.cpp
Log:
Some more float/int cleanup
Modified: trunk/pingus/src/display/scene_context.cpp
===================================================================
--- trunk/pingus/src/display/scene_context.cpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/display/scene_context.cpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -79,7 +79,7 @@
/** Translate the drawing context */
void
-SceneContext::translate(float x, float y)
+SceneContext::translate(int x, int y)
{
impl->color.translate(x, y);
impl->light.translate(x, y);
Modified: trunk/pingus/src/display/scene_context.hpp
===================================================================
--- trunk/pingus/src/display/scene_context.hpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/display/scene_context.hpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -54,7 +54,7 @@
DrawingContext& highlight();
/** Translate the drawing context */
- void translate(float x, float y);
+ void translate(int x, int y);
/** Set the rotation of the drawing context */
void rotate(float angel);
Modified: trunk/pingus/src/editor/editor_screen.cpp
===================================================================
--- trunk/pingus/src/editor/editor_screen.cpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/editor/editor_screen.cpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -250,8 +250,8 @@
{
case Input::SCROLLER_EVENT_TYPE:
viewport->set_scroll_pos(viewport->get_scroll_pos() -
- Vector2i(event.scroll.x_delta,
- event.scroll.y_delta));
+
Vector2i(static_cast<int>(event.scroll.x_delta),
+
static_cast<int>(event.scroll.y_delta)));
break;
default:
Modified: trunk/pingus/src/font_test_screen.cpp
===================================================================
--- trunk/pingus/src/font_test_screen.cpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/font_test_screen.cpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -26,8 +26,6 @@
FontTestScreen::FontTestScreen(const Pathname& fontfile)
: Screen(Display::get_size()),
- scrollx(0),
- scrolly(0),
dark(true)
{
std::cout << "### Loading font file: " << fontfile << std::endl;
@@ -55,7 +53,7 @@
gc.print_left(Fonts::chalk_large, Vector2i(10, 10), "Pingus - Font Test");
gc.push_modelview();
- gc.translate(scrollx, scrolly);
+ gc.translate(scroll.x, scroll.y);
for(int i = 0; i < 256; ++i)
{
@@ -109,8 +107,8 @@
break;
case Input::SCROLLER_EVENT_TYPE:
- scrollx += event.scroll.x_delta;
- scrolly += event.scroll.y_delta;
+ scroll.x += static_cast<int>(event.scroll.x_delta);
+ scroll.y += static_cast<int>(event.scroll.y_delta);
break;
default:
Modified: trunk/pingus/src/font_test_screen.hpp
===================================================================
--- trunk/pingus/src/font_test_screen.hpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/font_test_screen.hpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -26,8 +26,7 @@
private:
Font font;
Font reference;
- float scrollx;
- float scrolly;
+ Vector2i scroll;
bool dark;
public:
FontTestScreen(const Pathname& fontfile);
Modified: trunk/pingus/src/graphic_context_state.cpp
===================================================================
--- trunk/pingus/src/graphic_context_state.cpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/graphic_context_state.cpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -21,11 +21,8 @@
class GraphicContextStateImpl
{
public:
- Rect rect;
-
+ Rect rect;
Vector2i offset;
- float zoom;
- float rotation;
bool have_limit;
Rect limit;
@@ -36,8 +33,6 @@
{
impl->rect = Rect(Vector2i(0,0), Size(Display::get_width(),
Display::get_height()));
impl->offset = Vector2i(0,0);
- impl->zoom = 1.0f;
- impl->rotation = 0;
impl->have_limit = false;
}
@@ -46,8 +41,6 @@
{
impl->rect = Rect(Vector2i(0,0), Size(w, h));
impl->offset = Vector2i(0,0);
- impl->zoom = 1.0f;
- impl->rotation = 0;
impl->have_limit = false;
}
@@ -56,8 +49,6 @@
{
impl->rect = rect;
impl->offset = Vector2i(0,0);
- impl->zoom = 1.0f;
- impl->rotation = 0;
impl->have_limit = false;
}
@@ -113,42 +104,39 @@
Rect
GraphicContextState::get_clip_rect()
{
- return Rect(Vector2i(int(-impl->offset.x),
- int(-impl->offset.y)),
- Size(int(get_width() / impl->zoom),
- int(get_height() / impl->zoom)));
+ return Rect(-impl->offset, impl->rect.get_size());
}
void
GraphicContextState::set_pos(const Vector2i& pos)
{
- impl->offset.x = -pos.x + (get_width()/2 / impl->zoom);
- impl->offset.y = -pos.y + (get_height()/2 / impl->zoom);
+ impl->offset.x = -pos.x + (get_width()/2);
+ impl->offset.y = -pos.y + (get_height()/2);
if (impl->have_limit)
{
if (-impl->offset.x < impl->limit.left)
{
- impl->offset.x = (float)-(impl->limit.left);
+ impl->offset.x = -(impl->limit.left);
}
else if (-impl->offset.x + get_width() > impl->limit.right)
{
if (impl->limit.right - impl->limit.left > get_width())
- impl->offset.x = (float)-(impl->limit.right - get_width());
+ impl->offset.x = -(impl->limit.right - get_width());
else
- impl->offset.x = (float)-(impl->limit.left);
+ impl->offset.x = -(impl->limit.left);
}
if (-impl->offset.y < impl->limit.top)
{
- impl->offset.y = (float)-(impl->limit.top);
+ impl->offset.y = -(impl->limit.top);
}
else if (-impl->offset.y + get_height() > impl->limit.bottom)
{
if (impl->limit.bottom - impl->limit.top > get_height())
- impl->offset.y = (float)-(impl->limit.bottom - get_height());
+ impl->offset.y = -(impl->limit.bottom - get_height());
else
- impl->offset.y = (float)-(impl->limit.top);
+ impl->offset.y = -(impl->limit.top);
}
}
}
@@ -156,29 +144,19 @@
Vector2i
GraphicContextState::get_pos() const
{
- return Vector2i(-impl->offset.x + (get_width()/2 / impl->zoom),
- -impl->offset.y + (get_height()/2 / impl->zoom));
+ return Vector2i(-impl->offset.x + (get_width()/2),
+ -impl->offset.y + (get_height()/2));
}
Vector2i
GraphicContextState::screen2world(const Vector2i& pos_) const
{
- Vector2i pos(float(pos_.x - impl->rect.left),
- float(pos_.y - impl->rect.top));
+ Vector2i pos(pos_.x - impl->rect.left,
+ pos_.y - impl->rect.top);
- float sa = Math::sin(-impl->rotation/180.0f*Math::pi);
- float ca = Math::cos(-impl->rotation/180.0f*Math::pi);
-
- float dx = pos.x - (float)get_width()/2;
- float dy = pos.y - (float)get_height()/2;
-
- pos.x = get_width()/2 + (ca * dx - sa * dy);
- pos.y = get_height()/2 + (sa * dx + ca * dy);
-
- Vector2i p((float(pos.x) / impl->zoom) - impl->offset.x,
- (float(pos.y) / impl->zoom) - impl->offset.y);
-
- return p;
+ return pos
+ - Vector2i(impl->rect.left, impl->rect.top)
+ - impl->offset;
}
int
Modified: trunk/pingus/src/screen/screen_manager.cpp
===================================================================
--- trunk/pingus/src/screen/screen_manager.cpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/screen/screen_manager.cpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -244,7 +244,8 @@
for(std::vector<Input::Event>::const_iterator i = events.begin(); i !=
events.end(); ++i)
{
if (i->type == Input::POINTER_EVENT_TYPE && i->pointer.name ==
Input::STANDARD_POINTER)
- mouse_pos = Vector2f(i->pointer.x, i->pointer.y);
+ mouse_pos = Vector2i(static_cast<int>(i->pointer.x),
+ static_cast<int>(i->pointer.y));
last_screen->update(*i);
if (last_screen != get_current_screen())
Modified: trunk/pingus/src/screen/screen_manager.hpp
===================================================================
--- trunk/pingus/src/screen/screen_manager.hpp 2008-07-27 14:16:02 UTC (rev
3913)
+++ trunk/pingus/src/screen/screen_manager.hpp 2008-07-27 14:20:12 UTC (rev
3914)
@@ -55,7 +55,7 @@
or replaced) */
std::vector<ScreenPtr> screens;
- Vector2f mouse_pos;
+ Vector2i mouse_pos;
bool record_input;
bool playback_input;
Modified: trunk/pingus/src/worldobjs/surface_background.cpp
===================================================================
--- trunk/pingus/src/worldobjs/surface_background.cpp 2008-07-27 14:16:02 UTC
(rev 3913)
+++ trunk/pingus/src/worldobjs/surface_background.cpp 2008-07-27 14:20:12 UTC
(rev 3914)
@@ -155,8 +155,7 @@
x < world->get_width();
x += bg_sprite.get_width())
{
- gc.color().draw(bg_sprite, Vector3f(x - offset.x,
- y - offset.y, pos.z));
+ gc.color().draw(bg_sprite, Vector2i(x - offset.x, y - offset.y),
pos.z);
}
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Pingus-CVS] r3914 - in trunk/pingus/src: . display editor screen worldobjs,
grumbel at BerliOS <=