diff options
author | Teravus Ovares | 2008-12-08 07:19:26 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-12-08 07:19:26 +0000 |
commit | e61dacb92896567083e8fa78837f2911a167aef2 (patch) | |
tree | 70f51ed40275e3d2293f694185ce030a6a6e3570 /OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | |
parent | * Fixes control issue at the root of the boat turning problem. (diff) | |
download | opensim-SC-e61dacb92896567083e8fa78837f2911a167aef2.zip opensim-SC-e61dacb92896567083e8fa78837f2911a167aef2.tar.gz opensim-SC-e61dacb92896567083e8fa78837f2911a167aef2.tar.bz2 opensim-SC-e61dacb92896567083e8fa78837f2911a167aef2.tar.xz |
* Adds some rudimentary error handling to the physics debug drawstuff tool.
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin/OdePlugin.cs')
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs index a50c5ae..031848c 100644 --- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs +++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | |||
@@ -2475,10 +2475,15 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2475 | switch ((Char)ch) | 2475 | switch ((Char)ch) |
2476 | { | 2476 | { |
2477 | case 'w': | 2477 | case 'w': |
2478 | Vector3 rotate = (new Vector3(1, 0, 0) * Quaternion.CreateFromEulers(hpr.Z * Utils.DEG_TO_RAD, hpr.Y * Utils.DEG_TO_RAD, hpr.X * Utils.DEG_TO_RAD)); | 2478 | try |
2479 | { | ||
2480 | Vector3 rotate = (new Vector3(1, 0, 0) * Quaternion.CreateFromEulers(hpr.Z * Utils.DEG_TO_RAD, hpr.Y * Utils.DEG_TO_RAD, hpr.X * Utils.DEG_TO_RAD)); | ||
2479 | 2481 | ||
2480 | xyz.X += rotate.X; xyz.Y += rotate.Y; xyz.Z += rotate.Z; | 2482 | xyz.X += rotate.X; xyz.Y += rotate.Y; xyz.Z += rotate.Z; |
2481 | ds.SetViewpoint(ref xyz, ref hpr); | 2483 | ds.SetViewpoint(ref xyz, ref hpr); |
2484 | } | ||
2485 | catch (ArgumentException) | ||
2486 | { hpr.X = 0; } | ||
2482 | break; | 2487 | break; |
2483 | 2488 | ||
2484 | case 'a': | 2489 | case 'a': |
@@ -2487,10 +2492,15 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2487 | break; | 2492 | break; |
2488 | 2493 | ||
2489 | case 's': | 2494 | case 's': |
2490 | Vector3 rotate2 = (new Vector3(-1, 0, 0) * Quaternion.CreateFromEulers(hpr.Z * Utils.DEG_TO_RAD, hpr.Y * Utils.DEG_TO_RAD, hpr.X * Utils.DEG_TO_RAD)); | 2495 | try |
2496 | { | ||
2497 | Vector3 rotate2 = (new Vector3(-1, 0, 0) * Quaternion.CreateFromEulers(hpr.Z * Utils.DEG_TO_RAD, hpr.Y * Utils.DEG_TO_RAD, hpr.X * Utils.DEG_TO_RAD)); | ||
2491 | 2498 | ||
2492 | xyz.X += rotate2.X; xyz.Y += rotate2.Y; xyz.Z += rotate2.Z; | 2499 | xyz.X += rotate2.X; xyz.Y += rotate2.Y; xyz.Z += rotate2.Z; |
2493 | ds.SetViewpoint(ref xyz, ref hpr); | 2500 | ds.SetViewpoint(ref xyz, ref hpr); |
2501 | } | ||
2502 | catch (ArgumentException) | ||
2503 | { hpr.X = 0; } | ||
2494 | break; | 2504 | break; |
2495 | case 'd': | 2505 | case 'd': |
2496 | hpr.X--; | 2506 | hpr.X--; |