[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash/server button_character_instance.cpp edit...
From: |
Vitaly Alexeev |
Subject: |
[Gnash-commit] gnash/server button_character_instance.cpp edit... |
Date: |
Sun, 27 Aug 2006 18:30:39 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Vitaly Alexeev <alexeev> 06/08/27 18:30:39
Modified files:
server : button_character_instance.cpp
edit_text_character.cpp sprite_instance.cpp
types.cpp
Log message:
Macromedia Flash changes infinite to zero when works a matrix
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.cpp?cvsroot=gnash&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/gnash/server/edit_text_character.cpp?cvsroot=gnash&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.45&r2=1.46
http://cvs.savannah.gnu.org/viewcvs/gnash/server/types.cpp?cvsroot=gnash&r1=1.9&r2=1.10
Patches:
Index: button_character_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- button_character_instance.cpp 27 Aug 2006 01:28:48 -0000 1.2
+++ button_character_instance.cpp 27 Aug 2006 18:30:38 -0000 1.3
@@ -541,7 +541,7 @@
{
// Set alpha modulate, in percent.
cxform cx = get_cxform();
- cx.m_[3][0] = float(val.to_number()) / 100.f;
+ cx.m_[3][0] = infinite_to_fzero(val.to_number()) / 100.f;
set_cxform(cx);
//m_accept_anim_moves = false;
return;
@@ -549,14 +549,14 @@
case M_X: // _x
{
matrix m = get_matrix(); // @@ get_world_matrix()???
- m.m_[0][2] = float(PIXELS_TO_TWIPS(val.to_number()));
+ m.m_[0][2] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
this->set_matrix(m);
return;
}
case M_Y: // _y
{
matrix m = get_matrix(); // @@ get_world_matrix()???
- m.m_[1][2] = float(PIXELS_TO_TWIPS(val.to_number()));
+ m.m_[1][2] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
this->set_matrix(m);
return;
}
Index: edit_text_character.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/edit_text_character.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- edit_text_character.cpp 26 Aug 2006 17:58:24 -0000 1.10
+++ edit_text_character.cpp 27 Aug 2006 18:30:38 -0000 1.11
@@ -287,7 +287,7 @@
//else if (name == "_x")
{
matrix m = get_matrix();
- m.m_[0][2] = (float) PIXELS_TO_TWIPS(val.to_number());
+ m.m_[0][2] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
set_matrix(m);
// m_accept_anim_moves = false;
@@ -298,7 +298,7 @@
//else if (name == "_y")
{
matrix m = get_matrix();
- m.m_[1][2] = (float) PIXELS_TO_TWIPS(val.to_number());
+ m.m_[1][2] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
set_matrix(m);
// m_accept_anim_moves = false;
@@ -317,7 +317,7 @@
// @@ TODO this should be generic to class character!
// Arg is in percent.
cxform cx = get_cxform();
- cx.m_[3][0] = fclamp(float(val.to_number()) / 100.f, 0, 1);
+ cx.m_[3][0] = fclamp(infinite_to_fzero(val.to_number()) /
100.f, 0, 1);
set_cxform(cx);
return;
}
Index: sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -b -r1.45 -r1.46
--- sprite_instance.cpp 26 Aug 2006 18:32:58 -0000 1.45
+++ sprite_instance.cpp 27 Aug 2006 18:30:38 -0000 1.46
@@ -903,7 +903,7 @@
//if (name == "_x")
{
matrix m = get_matrix();
- m.m_[0][2] = (float) PIXELS_TO_TWIPS(val.to_number());
+ m.m_[0][2] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
set_matrix(m);
m_accept_anim_moves = false;
@@ -914,7 +914,7 @@
//else if (name == "_y")
{
matrix m = get_matrix();
- m.m_[1][2] = (float) PIXELS_TO_TWIPS(val.to_number());
+ m.m_[1][2] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
set_matrix(m);
m_accept_anim_moves = false;
@@ -1006,7 +1006,7 @@
{
// Set alpha modulate, in percent.
cxform cx = get_cxform();
- cx.m_[3][0] = float(val.to_number()) / 100.f;
+ cx.m_[3][0] = infinite_to_fzero(val.to_number()) / 100.f;
set_cxform(cx);
m_accept_anim_moves = false;
return;
@@ -1023,7 +1023,7 @@
{
// @@ tulrich: is parameter in world-coords or local-coords?
matrix m = get_matrix();
- m.m_[0][0] = float(PIXELS_TO_TWIPS(val.to_number()));
+ m.m_[0][0] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
float w = get_width();
if (fabsf(w) > 1e-6f)
{
@@ -1038,7 +1038,7 @@
{
// @@ tulrich: is parameter in world-coords or local-coords?
matrix m = get_matrix();
- m.m_[1][1] = float(PIXELS_TO_TWIPS(val.to_number()));
+ m.m_[1][1] =
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
float h = get_width();
if (fabsf(h) > 1e-6f)
{
Index: types.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/types.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- types.cpp 25 Aug 2006 16:05:22 -0000 1.9
+++ types.cpp 27 Aug 2006 18:30:38 -0000 1.10
@@ -90,8 +90,8 @@
// matrix. When transforming points, the translation
// happens first, then our original xform.
{
- m_[0][2] += m_[0][0] * tx + m_[0][1] * ty;
- m_[1][2] += m_[1][0] * tx + m_[1][1] * ty;
+ m_[0][2] += infinite_to_fzero(m_[0][0] * tx + m_[0][1] * ty);
+ m_[1][2] += infinite_to_fzero(m_[1][0] * tx + m_[1][1] * ty);
}
@@ -100,10 +100,10 @@
// matrix. When transforming points, the scale
// happens first, then our original xform.
{
- m_[0][0] *= scale;
- m_[0][1] *= scale;
- m_[1][0] *= scale;
- m_[1][1] *= scale;
+ m_[0][0] *= infinite_to_fzero(scale);
+ m_[0][1] *= infinite_to_fzero(scale);
+ m_[1][0] *= infinite_to_fzero(scale);
+ m_[1][1] *= infinite_to_fzero(scale);
}
@@ -125,10 +125,10 @@
{
float cos_angle = cosf(angle);
float sin_angle = sinf(angle);
- m_[0][0] = x_scale * cos_angle;
- m_[0][1] = y_scale * -sin_angle;
- m_[1][0] = x_scale * sin_angle;
- m_[1][1] = y_scale * cos_angle;
+ m_[0][0] = infinite_to_fzero(x_scale * cos_angle);
+ m_[0][1] = infinite_to_fzero(y_scale * -sin_angle);
+ m_[1][0] = infinite_to_fzero(x_scale * sin_angle);
+ m_[1][1] = infinite_to_fzero(y_scale * cos_angle);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash/server button_character_instance.cpp edit...,
Vitaly Alexeev <=