opal-commits Mailing List for Open Physics Abstraction Layer (Page 10)
Status: Inactive
Brought to you by:
tylerstreeter
You can subscribe to this list here.
| 2005 |
Jan
|
Feb
(162) |
Mar
(134) |
Apr
(113) |
May
(13) |
Jun
(60) |
Jul
(18) |
Aug
(25) |
Sep
|
Oct
(2) |
Nov
(35) |
Dec
(76) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2008 |
Jan
|
Feb
|
Mar
(3) |
Apr
(8) |
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2009 |
Jan
|
Feb
(1) |
Mar
(12) |
Apr
(16) |
May
(2) |
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
(3) |
Oct
|
Nov
|
Dec
(3) |
| 2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(15) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: tylerstreeter <tyl...@us...> - 2005-07-19 17:53:43
|
Update of /cvsroot/opal/opal/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1099/src Modified Files: Simulator.cpp Log Message: Performance improvement, especially for simulations with a lot of sleeping Solids. (In Simulator::simulate(), we were previously copying an updated transform matrix for each dynamic Solid every time step. Now we only perform this operation for dynamic, awake Solids.) Index: Simulator.cpp =================================================================== RCS file: /cvsroot/opal/opal/src/Simulator.cpp,v retrieving revision 1.65 retrieving revision 1.66 diff -C2 -d -r1.65 -r1.66 *** Simulator.cpp 16 May 2005 18:07:29 -0000 1.65 --- Simulator.cpp 19 Jul 2005 17:53:30 -0000 1.66 *************** *** 150,155 **** Solid* solid = *solidIter; ! // Get each Solid's new transform from the physics engine. ! solid->internal_updateOPALTransform(); // Update the sleeping value from the physics engine. This --- 150,159 ---- Solid* solid = *solidIter; ! // Get each dynamic, awake Solid's new transform from the ! // physics engine. ! if (!solid->isStatic() && !solid->isSleeping()) ! { ! solid->internal_updateOPALTransform(); ! } // Update the sleeping value from the physics engine. This |
|
From: tylerstreeter <tyl...@us...> - 2005-07-19 17:53:43
|
Update of /cvsroot/opal/opal/src/ODE In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1099/src/ODE Modified Files: ODESolid.cpp Log Message: Performance improvement, especially for simulations with a lot of sleeping Solids. (In Simulator::simulate(), we were previously copying an updated transform matrix for each dynamic Solid every time step. Now we only perform this operation for dynamic, awake Solids.) Index: ODESolid.cpp =================================================================== RCS file: /cvsroot/opal/opal/src/ODE/ODESolid.cpp,v retrieving revision 1.88 retrieving revision 1.89 diff -C2 -d -r1.88 -r1.89 *** ODESolid.cpp 24 Jun 2005 19:04:22 -0000 1.88 --- ODESolid.cpp 19 Jul 2005 17:53:29 -0000 1.89 *************** *** 183,198 **** void ODESolid::internal_updateOPALTransform() { ! if (!mData.isStatic) ! { ! const real* R = (const real*)dBodyGetRotation(mBodyID); ! const real* P = (const real*)dBodyGetPosition(mBodyID); ! ! mData.transform.set(R[0], R[1], R[2], P[0], ! R[4], R[5], R[6], P[1], ! R[8], R[9], R[10], P[2], ! 0, 0, 0, 1); ! } ! // Do nothing if this is a static solid. } --- 183,193 ---- void ODESolid::internal_updateOPALTransform() { ! const real* R = (const real*)dBodyGetRotation(mBodyID); ! const real* P = (const real*)dBodyGetPosition(mBodyID); ! mData.transform.set(R[0], R[1], R[2], P[0], ! R[4], R[5], R[6], P[1], ! R[8], R[9], R[10], P[2], ! 0, 0, 0, 1); } |
|
From: tylerstreeter <tyl...@us...> - 2005-07-19 17:29:22
|
Update of /cvsroot/opal/opal/vc71 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27989/vc71 Modified Files: opal.suo Log Message: Cleaned up more Visual Studio warnings in Matrix44r::getQuaternion(). Index: opal.suo =================================================================== RCS file: /cvsroot/opal/opal/vc71/opal.suo,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 Binary files /tmp/cvsvQvveZ and /tmp/cvsHTkMyo differ |
|
From: tylerstreeter <tyl...@us...> - 2005-07-19 17:29:22
|
Update of /cvsroot/opal/opal In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27989 Modified Files: changelog.txt todo.txt Log Message: Cleaned up more Visual Studio warnings in Matrix44r::getQuaternion(). Index: changelog.txt =================================================================== RCS file: /cvsroot/opal/opal/changelog.txt,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** changelog.txt 26 Jun 2005 16:57:34 -0000 1.32 --- changelog.txt 19 Jul 2005 17:29:12 -0000 1.33 *************** *** 15,19 **** --- 15,22 ---- ------------------------------------------ + * 7-19-05: Cleaned up more Visual Studio warnings in Matrix44r::getQuaternion(). (Tyler Streeter) + * 6-26-05: Fixed ServoMotor's calculation of the angular velocity needed to bring the joint to the desired angle. Cleaned up some warning-generating code in Matrix44r::getQuaternion() (Oleksandr Lozitskiy) + * 6-24-05: Added 'simple' sample app. (Tyler Streeter) *************** *** 26,35 **** * 6-24-05: Added a compile-time flag OPAL_USE_DOUBLE which determines whether OPAL's reals are floats or doubles. Also added a run-time check when a physics engine-specific Simulator (e.g. ODESimulator) is created to make sure OPAL's reals are the same size as the physics engine's reals. (Tyler Streeter) - * 6-19-05: Added Spaces tutorial to website. (Tyler Streeter) - * 6-19-05: New Spaces are now automatically children of the Simulator root Space. Previously, there was no way for new Spaces to be children of the Simulator root Space. (Tyler Streeter) - * 6-18-05: Added page to OPAL website describing bug report, feature request, and patch submission process. (Alan Fischer, Andres Reinot, Tyler Streeter) - * 6-4-05: Fixed bug in ServoMotor::init() that kept it from being enabled without explicitly enabling it. (Tyler Streeter) --- 29,34 ---- *************** *** 63,67 **** * Overhauled XML loading system; now all Solid, Joint, Motor, and Sensor data can be loaded from OPAL XML files (Tyler Streeter) ! * Increased stability for freely-spinning objects with non-symmetric inertia tensors (Tyler Streeter) * Added contact group system to give users more control over contact generation (Tyler Streeter) --- 62,66 ---- * Overhauled XML loading system; now all Solid, Joint, Motor, and Sensor data can be loaded from OPAL XML files (Tyler Streeter) ! * Increased stability when using ODE for freely-spinning objects with non-symmetric inertia tensors (Tyler Streeter) * Added contact group system to give users more control over contact generation (Tyler Streeter) *************** *** 71,76 **** * Added an option to allow or ignore contacts between static and sleeping Solids (Tyler Streeter) - * Added tutorials and API documentation to OPAL website (Tyler Streeter) - * Numerous API changes (Tyler Streeter) --- 70,73 ---- Index: todo.txt =================================================================== RCS file: /cvsroot/opal/opal/todo.txt,v retrieving revision 1.84 retrieving revision 1.85 diff -C2 -d -r1.84 -r1.85 *** todo.txt 24 Jun 2005 23:38:06 -0000 1.84 --- todo.txt 19 Jul 2005 17:29:12 -0000 1.85 *************** *** 12,18 **** --- 12,33 ---- * add option for SpringMotor to depend on mass/inertia or not + * and more support for spaces; support more spaces; support more options for spaces + * make defaults not const? - people can then do this: opal::defaults::motor::enabled = false; ... to affect all future motor creation + * In Simulator::simulate(), replace this: + + // Get each Solid's new transform from the physics engine. + solid->internal_updateOPALTransform(); + + ...with this: + + // Get each dynamic, awake Solid's new transform from the physics engine. + if (!solid->isStatic() && !solid->isSleeping()) + { + solid->internal_updateOPALTransform(); + } + For Version 0.4.0 ================= *************** *** 21,25 **** * handle blown frame cases (important especially for things like big towers of blocks that slow the simulation way down) ! - desired frame rate (max dt)? - partially complete frame; stop simulation early, resulting in a slow-motion look - complete frame, resulting in a jerky frame rate --- 36,40 ---- * handle blown frame cases (important especially for things like big towers of blocks that slow the simulation way down) ! - desired frame rate (max support through spaces)? - partially complete frame; stop simulation early, resulting in a slow-motion look - complete frame, resulting in a jerky frame rate |
|
From: tylerstreeter <tyl...@us...> - 2005-07-19 17:29:22
|
Update of /cvsroot/opal/opal/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27989/src Modified Files: Matrix44r.h Log Message: Cleaned up more Visual Studio warnings in Matrix44r::getQuaternion(). Index: Matrix44r.h =================================================================== RCS file: /cvsroot/opal/opal/src/Matrix44r.h,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** Matrix44r.h 26 Jun 2005 16:57:34 -0000 1.35 --- Matrix44r.h 19 Jul 2005 17:29:13 -0000 1.36 *************** *** 287,292 **** if((*this)(0,0) > (*this)(1,1) && (*this)(0,0) > (*this)(2,2)) { ! real s = 2.0 * sqrt(static_cast<real>(1.0 + (*this)(0,0) - (*this)(1,1) - ! (*this)(2,2))); q[1] = 0.25f * s; q[2] = ((*this)(0,1) + (*this)(1,0)) / s; --- 287,292 ---- if((*this)(0,0) > (*this)(1,1) && (*this)(0,0) > (*this)(2,2)) { ! real s = 2 * sqrt(static_cast<real>(1 + (*this)(0,0) - ! (*this)(1,1) - (*this)(2,2))); q[1] = 0.25f * s; q[2] = ((*this)(0,1) + (*this)(1,0)) / s; *************** *** 296,301 **** else if ((*this)(1,1) > (*this)(2,2)) { ! real s = 2.0 * sqrt(static_cast<real>(1.0 + (*this)(1,1) - (*this)(0,0) - ! (*this)(2,2))); q[1] = ((*this)(0,1) + (*this)(1,0)) / s; q[2] = 0.25f * s; --- 296,301 ---- else if ((*this)(1,1) > (*this)(2,2)) { ! real s = 2 * sqrt(static_cast<real>(1 + (*this)(1,1) - ! (*this)(0,0) - (*this)(2,2))); q[1] = ((*this)(0,1) + (*this)(1,0)) / s; q[2] = 0.25f * s; *************** *** 305,310 **** else { ! real s = 2.0 * sqrt(static_cast<real>(1.0 + (*this)(2,2) - (*this)(0,0) - ! (*this)(1,1))); q[1] = ((*this)(0,2) + (*this)(2,0)) / s; q[2] = ((*this)(1,2) + (*this)(2,1)) / s; --- 305,310 ---- else { ! real s = 2 * sqrt(static_cast<real>(1 + (*this)(2,2) - ! (*this)(0,0) - (*this)(1,1))); q[1] = ((*this)(0,2) + (*this)(2,0)) / s; q[2] = ((*this)(1,2) + (*this)(2,1)) / s; |
|
From: tylerstreeter <tyl...@us...> - 2005-07-13 16:42:41
|
Update of /cvsroot/opal/web In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24296 Modified Files: developers.html Log Message: updated Olex's website link on the developer page Index: developers.html =================================================================== RCS file: /cvsroot/opal/web/developers.html,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** developers.html 27 Jun 2005 23:43:29 -0000 1.3 --- developers.html 13 Jul 2005 16:42:32 -0000 1.4 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>107</o:Revision> ! <o:TotalTime>202</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-27T23:41:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>411</o:Words> ! <o:Characters>2348</o:Characters> <o:Company>none</o:Company> ! <o:Lines>19</o:Lines> <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2754</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>108</o:Revision> ! <o:TotalTime>203</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-07-13T16:41:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>422</o:Words> ! <o:Characters>2408</o:Characters> <o:Company>none</o:Company> ! <o:Lines>20</o:Lines> <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2825</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 101,105 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="55298"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 101,105 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="56322"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 247,252 **** mr dot olexander at gmail dot com<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>Website: ! <a href="http://www.speedacm.org/~o0lozi01">www.speedacm.org/~o0lozi01</a></span><span ! style='font-family:"Book Antiqua";mso-bidi-font-family:Arial;color:black'><o:p></o:p></span></p> </td> </tr> --- 247,252 ---- mr dot olexander at gmail dot com<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>Website: ! <a href="http://ox.slug.louisville.edu/~o0lozi01/wiki/index.php/Main_Page">http://ox.slug.louisville.edu/~o0lozi01/wiki/index.php/Main_Page</a></span><span ! style='mso-bidi-font-size:10.0pt;font-family:"Book Antiqua";color:black'><o:p></o:p></span></p> </td> </tr> |
|
From: tylerstreeter <tyl...@us...> - 2005-06-27 23:43:50
|
Update of /cvsroot/opal/web In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2574 Modified Files: developers.html documentation.html downloads.html index.html license.html users.html Log Message: Updated forum link. Index: developers.html =================================================================== RCS file: /cvsroot/opal/web/developers.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** developers.html 25 Jun 2005 04:52:55 -0000 1.2 --- developers.html 27 Jun 2005 23:43:29 -0000 1.3 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>105</o:Revision> <o:TotalTime>202</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>410</o:Words> ! <o:Characters>2341</o:Characters> <o:Company>none</o:Company> <o:Lines>19</o:Lines> <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2746</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>107</o:Revision> <o:TotalTime>202</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-27T23:41:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>411</o:Words> ! <o:Characters>2348</o:Characters> <o:Company>none</o:Company> <o:Lines>19</o:Lines> <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2754</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 101,105 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="54274"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 101,105 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="55298"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 138,142 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 138,142 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/opal/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; Index: license.html =================================================================== RCS file: /cvsroot/opal/web/license.html,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** license.html 25 Jun 2005 04:52:55 -0000 1.4 --- license.html 27 Jun 2005 23:43:30 -0000 1.5 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>84</o:Revision> <o:TotalTime>78</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>157</o:Words> ! <o:Characters>896</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1051</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>86</o:Revision> <o:TotalTime>78</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-27T23:42:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>158</o:Words> ! <o:Characters>903</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1059</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 99,103 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="46082"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="47106"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 136,140 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/opal/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; Index: index.html =================================================================== RCS file: /cvsroot/opal/web/index.html,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** index.html 25 Jun 2005 22:13:48 -0000 1.15 --- index.html 27 Jun 2005 23:43:30 -0000 1.16 *************** *** 3,7 **** xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" - xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40"> --- 3,6 ---- *************** *** 22,42 **** <![endif]--> <title>OPAL: Open Physics Abstraction Layer</title> [...1177 lines suppressed...] color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 793,800 **** Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file saving<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for Blender<o:p></o:p></span></li> --- 781,788 ---- Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file saving<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for Blender<o:p></o:p></span></li> Index: users.html =================================================================== RCS file: /cvsroot/opal/web/users.html,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** users.html 25 Jun 2005 04:52:55 -0000 1.7 --- users.html 27 Jun 2005 23:43:30 -0000 1.8 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>116</o:Revision> ! <o:TotalTime>139</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:51:00Z</o:LastSaved> <o:Pages>2</o:Pages> ! <o:Words>628</o:Words> ! <o:Characters>3583</o:Characters> <o:Company>none</o:Company> <o:Lines>29</o:Lines> <o:Paragraphs>8</o:Paragraphs> ! <o:CharactersWithSpaces>4203</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>118</o:Revision> ! <o:TotalTime>140</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-27T23:42:00Z</o:LastSaved> <o:Pages>2</o:Pages> ! <o:Words>629</o:Words> ! <o:Characters>3590</o:Characters> <o:Company>none</o:Company> <o:Lines>29</o:Lines> <o:Paragraphs>8</o:Paragraphs> ! <o:CharactersWithSpaces>4211</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 99,103 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="55298"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="56322"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 136,140 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/opal/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; Index: documentation.html =================================================================== RCS file: /cvsroot/opal/web/documentation.html,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** documentation.html 25 Jun 2005 04:52:55 -0000 1.21 --- documentation.html 27 Jun 2005 23:43:30 -0000 1.22 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>128</o:Revision> <o:TotalTime>125</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>2</o:Pages> ! <o:Words>373</o:Words> ! <o:Characters>2129</o:Characters> <o:Company>none</o:Company> <o:Lines>17</o:Lines> ! <o:Paragraphs>4</o:Paragraphs> ! <o:CharactersWithSpaces>2498</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>130</o:Revision> <o:TotalTime>125</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-27T23:41:00Z</o:LastSaved> <o:Pages>2</o:Pages> ! <o:Words>374</o:Words> ! <o:Characters>2136</o:Characters> <o:Company>none</o:Company> <o:Lines>17</o:Lines> ! <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2505</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 99,103 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="70658"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="71682"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 136,140 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/opal/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; Index: downloads.html =================================================================== RCS file: /cvsroot/opal/web/downloads.html,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** downloads.html 25 Jun 2005 04:52:55 -0000 1.5 --- downloads.html 27 Jun 2005 23:43:30 -0000 1.6 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>82</o:Revision> <o:TotalTime>76</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>159</o:Words> ! <o:Characters>909</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1066</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>84</o:Revision> <o:TotalTime>76</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-27T23:41:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>160</o:Words> ! <o:Characters>916</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1074</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 99,103 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="46082"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="47106"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 136,140 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/opal/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; |
|
From: Olex <ole...@us...> - 2005-06-26 16:57:43
|
Update of /cvsroot/opal/opal/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3634/src Modified Files: Matrix44r.h ServoMotor.cpp Log Message: Fixed ServoMotor's calculation of the angular velocity needed to bring the joint to the desired angle. Cleaned up some warning-generating code in Matrix44r::getQuaternion() Index: ServoMotor.cpp =================================================================== RCS file: /cvsroot/opal/opal/src/ServoMotor.cpp,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** ServoMotor.cpp 4 Jun 2005 20:20:21 -0000 1.17 --- ServoMotor.cpp 26 Jun 2005 16:57:35 -0000 1.18 *************** *** 133,136 **** --- 133,140 ---- real velocity = mData.desiredAngle - mData.joint->getAngle(mData.jointAxisNum); + if ( velocity > 180.0 ) + velocity = -360 + velocity; + if ( velocity < -180.0 ) + velocity = 360 + velocity; mData.joint->internal_setDesiredVel(mData.jointAxisNum, mData.restoreSpeed * velocity); Index: Matrix44r.h =================================================================== RCS file: /cvsroot/opal/opal/src/Matrix44r.h,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** Matrix44r.h 27 Apr 2005 02:28:18 -0000 1.34 --- Matrix44r.h 26 Jun 2005 16:57:34 -0000 1.35 *************** *** 287,292 **** if((*this)(0,0) > (*this)(1,1) && (*this)(0,0) > (*this)(2,2)) { ! real s = 2.0f * sqrtf(1.0f + (*this)(0,0) - (*this)(1,1) - ! (*this)(2,2)); q[1] = 0.25f * s; q[2] = ((*this)(0,1) + (*this)(1,0)) / s; --- 287,292 ---- if((*this)(0,0) > (*this)(1,1) && (*this)(0,0) > (*this)(2,2)) { ! real s = 2.0 * sqrt(static_cast<real>(1.0 + (*this)(0,0) - (*this)(1,1) - ! (*this)(2,2))); q[1] = 0.25f * s; q[2] = ((*this)(0,1) + (*this)(1,0)) / s; *************** *** 296,301 **** else if ((*this)(1,1) > (*this)(2,2)) { ! real s = 2.0f * sqrtf(1.0f + (*this)(1,1) - (*this)(0,0) - ! (*this)(2,2)); q[1] = ((*this)(0,1) + (*this)(1,0)) / s; q[2] = 0.25f * s; --- 296,301 ---- else if ((*this)(1,1) > (*this)(2,2)) { ! real s = 2.0 * sqrt(static_cast<real>(1.0 + (*this)(1,1) - (*this)(0,0) - ! (*this)(2,2))); q[1] = ((*this)(0,1) + (*this)(1,0)) / s; q[2] = 0.25f * s; *************** *** 305,310 **** else { ! real s = 2.0f * sqrtf(1.0f + (*this)(2,2) - (*this)(0,0) - ! (*this)(1,1)); q[1] = ((*this)(0,2) + (*this)(2,0)) / s; q[2] = ((*this)(1,2) + (*this)(2,1)) / s; --- 305,310 ---- else { ! real s = 2.0 * sqrt(static_cast<real>(1.0 + (*this)(2,2) - (*this)(0,0) - ! (*this)(1,1))); q[1] = ((*this)(0,2) + (*this)(2,0)) / s; q[2] = ((*this)(1,2) + (*this)(2,1)) / s; |
|
From: Olex <ole...@us...> - 2005-06-26 16:57:43
|
Update of /cvsroot/opal/opal In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3634 Modified Files: changelog.txt Log Message: Fixed ServoMotor's calculation of the angular velocity needed to bring the joint to the desired angle. Cleaned up some warning-generating code in Matrix44r::getQuaternion() Index: changelog.txt =================================================================== RCS file: /cvsroot/opal/opal/changelog.txt,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** changelog.txt 24 Jun 2005 23:38:05 -0000 1.31 --- changelog.txt 26 Jun 2005 16:57:34 -0000 1.32 *************** *** 15,18 **** --- 15,19 ---- ------------------------------------------ + * 6-26-05: Fixed ServoMotor's calculation of the angular velocity needed to bring the joint to the desired angle. Cleaned up some warning-generating code in Matrix44r::getQuaternion() (Oleksandr Lozitskiy) * 6-24-05: Added 'simple' sample app. (Tyler Streeter) |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 22:13:59
|
Update of /cvsroot/opal/web In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23834 Modified Files: index.html Log Message: added note about retrieving some of the old forum data Index: index.html =================================================================== RCS file: /cvsroot/opal/web/index.html,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** index.html 25 Jun 2005 04:52:55 -0000 1.14 --- index.html 25 Jun 2005 22:13:48 -0000 1.15 *************** *** 28,42 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>113</o:Revision> ! <o:TotalTime>207</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>454</o:Words> ! <o:Characters>2592</o:Characters> <o:Company>none</o:Company> ! <o:Lines>21</o:Lines> <o:Paragraphs>6</o:Paragraphs> ! <o:CharactersWithSpaces>3040</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 28,42 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>114</o:Revision> ! <o:TotalTime>210</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T22:12:00Z</o:LastSaved> <o:Pages>1</o:Pages> ! <o:Words>465</o:Words> ! <o:Characters>2657</o:Characters> <o:Company>none</o:Company> ! <o:Lines>22</o:Lines> <o:Paragraphs>6</o:Paragraphs> ! <o:CharactersWithSpaces>3116</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 90,95 **** /* List Definitions */ @list l0 ! {mso-list-id:135997276; ! mso-list-template-ids:1828865328;} @list l0:level1 {mso-level-number-format:bullet; --- 90,96 ---- /* List Definitions */ @list l0 ! {mso-list-id:503857615; ! mso-list-type:hybrid; ! mso-list-template-ids:-1557992790 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l0:level1 {mso-level-number-format:bullet; *************** *** 98,106 **** mso-level-number-position:left; text-indent:-.25in; - mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l1 ! {mso-list-id:442310063; ! mso-list-template-ids:-435415262;} @list l1:level1 {mso-level-number-format:bullet; --- 99,138 ---- mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} + @list l0:level2 + {mso-level-tab-stop:1.0in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level3 + {mso-level-tab-stop:1.5in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level4 + {mso-level-tab-stop:2.0in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level5 + {mso-level-tab-stop:2.5in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level6 + {mso-level-tab-stop:3.0in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level7 + {mso-level-tab-stop:3.5in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level8 + {mso-level-tab-stop:4.0in; + mso-level-number-position:left; + text-indent:-.25in;} + @list l0:level9 + {mso-level-tab-stop:4.5in; + mso-level-number-position:left; + text-indent:-.25in;} @list l1 ! {mso-list-id:694500086; ! mso-list-template-ids:2118187174;} @list l1:level1 {mso-level-number-format:bullet; *************** *** 112,117 **** font-family:Symbol;} @list l2 ! {mso-list-id:452603475; ! mso-list-template-ids:-1352868342;} @list l2:level1 {mso-level-number-format:bullet; --- 144,149 ---- font-family:Symbol;} @list l2 ! {mso-list-id:930313840; ! mso-list-template-ids:-247953754;} @list l2:level1 {mso-level-number-format:bullet; *************** *** 123,129 **** font-family:Symbol;} @list l3 ! {mso-list-id:503857615; ! mso-list-type:hybrid; ! mso-list-template-ids:-1557992790 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l3:level1 {mso-level-number-format:bullet; --- 155,160 ---- font-family:Symbol;} @list l3 ! {mso-list-id:1260794623; ! mso-list-template-ids:1389149938;} @list l3:level1 {mso-level-number-format:bullet; *************** *** 132,182 **** mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} ! @list l3:level2 ! {mso-level-tab-stop:1.0in; mso-level-number-position:left; ! text-indent:-.25in;} ! @list l3:level3 ! {mso-level-tab-stop:1.5in; mso-level-number-position:left; ! text-indent:-.25in;} ! @list l3:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} ! @list l3:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} ! @list l3:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} ! @list l3:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} ! @list l3:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} ! @list l3:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} - @list l4 - {mso-list-id:858935904; - mso-list-template-ids:-37191186;} - @list l4:level1 - {mso-level-number-format:bullet; - mso-level-text:\F0B7; - mso-level-tab-stop:.5in; - mso-level-number-position:left; - text-indent:-.25in; - mso-ansi-font-size:10.0pt; - font-family:Symbol;} @list l5 ! {mso-list-id:958995756; ! mso-list-template-ids:-1642705320;} @list l5:level1 {mso-level-number-format:bullet; --- 163,221 ---- mso-level-number-position:left; text-indent:-.25in; + mso-ansi-font-size:10.0pt; font-family:Symbol;} ! @list l4 ! {mso-list-id:1390494904; ! mso-list-type:hybrid; ! mso-list-template-ids:-143351670 67698689 67698689 67698691 67698689 67698691 67698693 67698689 67698691 67698693;} ! @list l4:level1 ! {mso-level-number-format:bullet; ! mso-level-text:\F0B7; ! mso-level-tab-stop:.5in; mso-level-number-position:left; ! text-indent:-.25in; ! font-family:Symbol;} ! @list l4:level2 ! {mso-level-number-format:bullet; ! mso-level-text:\F0B7; ! mso-level-tab-stop:.5in; mso-level-number-position:left; ! margin-left:.5in; ! text-indent:-.25in; ! font-family:Symbol;} ! @list l4:level3 ! {mso-level-number-format:bullet; ! mso-level-text:o; ! mso-level-tab-stop:1.5in; ! mso-level-number-position:left; ! text-indent:-.25in; ! font-family:"Courier New";} ! @list l4:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} ! @list l4:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} ! @list l4:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} ! @list l4:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} ! @list l4:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} ! @list l4:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l5 ! {mso-list-id:1488285870; ! mso-list-template-ids:1027088294;} @list l5:level1 {mso-level-number-format:bullet; *************** *** 188,193 **** font-family:Symbol;} @list l6 ! {mso-list-id:965770203; ! mso-list-template-ids:-1485145084;} @list l6:level1 {mso-level-number-format:bullet; --- 227,232 ---- font-family:Symbol;} @list l6 ! {mso-list-id:1745880586; ! mso-list-template-ids:-1147401702;} @list l6:level1 {mso-level-number-format:bullet; *************** *** 199,205 **** font-family:Symbol;} @list l7 ! {mso-list-id:1390494904; mso-list-type:hybrid; ! mso-list-template-ids:-143351670 67698689 67698689 67698691 67698689 67698691 67698693 67698689 67698691 67698693;} @list l7:level1 {mso-level-number-format:bullet; --- 238,244 ---- font-family:Symbol;} @list l7 ! {mso-list-id:1754929923; mso-list-type:hybrid; ! mso-list-template-ids:339369474 67698689 67698689 67698691 67698689 67698691 67698693 67698689 67698691 67698693;} @list l7:level1 {mso-level-number-format:bullet; *************** *** 249,255 **** text-indent:-.25in;} @list l8 ! {mso-list-id:1754929923; mso-list-type:hybrid; ! mso-list-template-ids:339369474 67698689 67698689 67698691 67698689 67698691 67698693 67698689 67698691 67698693;} @list l8:level1 {mso-level-number-format:bullet; --- 288,294 ---- text-indent:-.25in;} @list l8 ! {mso-list-id:1756780587; mso-list-type:hybrid; ! mso-list-template-ids:1949436616 67698689 67698689 67698691 67698689 67698691 67698693 67698689 67698691 67698693;} @list l8:level1 {mso-level-number-format:bullet; *************** *** 299,305 **** text-indent:-.25in;} @list l9 ! {mso-list-id:1756780587; mso-list-type:hybrid; ! mso-list-template-ids:1949436616 67698689 67698689 67698691 67698689 67698691 67698693 67698689 67698691 67698693;} @list l9:level1 {mso-level-number-format:bullet; --- 338,344 ---- text-indent:-.25in;} @list l9 ! {mso-list-id:1774857287; mso-list-type:hybrid; ! mso-list-template-ids:-937668496 67698689 67698689 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l9:level1 {mso-level-number-format:bullet; *************** *** 318,327 **** font-family:Symbol;} @list l9:level3 ! {mso-level-number-format:bullet; ! mso-level-text:o; ! mso-level-tab-stop:1.5in; mso-level-number-position:left; ! text-indent:-.25in; ! font-family:"Courier New";} @list l9:level4 {mso-level-tab-stop:2.0in; --- 357,363 ---- font-family:Symbol;} @list l9:level3 ! {mso-level-tab-stop:1.5in; mso-level-number-position:left; ! text-indent:-.25in;} @list l9:level4 {mso-level-tab-stop:2.0in; *************** *** 349,355 **** text-indent:-.25in;} @list l10 ! {mso-list-id:1774857287; ! mso-list-type:hybrid; ! mso-list-template-ids:-937668496 67698689 67698689 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l10:level1 {mso-level-number-format:bullet; --- 385,390 ---- text-indent:-.25in;} @list l10 ! {mso-list-id:1803838168; ! mso-list-template-ids:1780528758;} @list l10:level1 {mso-level-number-format:bullet; *************** *** 358,401 **** mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} - @list l10:level2 - {mso-level-number-format:bullet; - mso-level-text:\F0B7; - mso-level-tab-stop:.5in; - mso-level-number-position:left; - margin-left:.5in; - text-indent:-.25in; - font-family:Symbol;} - @list l10:level3 - {mso-level-tab-stop:1.5in; - mso-level-number-position:left; - text-indent:-.25in;} - @list l10:level4 - {mso-level-tab-stop:2.0in; - mso-level-number-position:left; - text-indent:-.25in;} - @list l10:level5 - {mso-level-tab-stop:2.5in; - mso-level-number-position:left; - text-indent:-.25in;} - @list l10:level6 - {mso-level-tab-stop:3.0in; - mso-level-number-position:left; - text-indent:-.25in;} - @list l10:level7 - {mso-level-tab-stop:3.5in; - mso-level-number-position:left; - text-indent:-.25in;} - @list l10:level8 - {mso-level-tab-stop:4.0in; - mso-level-number-position:left; - text-indent:-.25in;} - @list l10:level9 - {mso-level-tab-stop:4.5in; - mso-level-number-position:left; - text-indent:-.25in;} @list l11 ! {mso-list-id:1790126722; ! mso-list-template-ids:-266143054;} @list l11:level1 {mso-level-number-format:bullet; --- 393,401 ---- mso-level-number-position:left; text-indent:-.25in; + mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l11 ! {mso-list-id:2027251623; ! mso-list-template-ids:-1741004636;} @list l11:level1 {mso-level-number-format:bullet; *************** *** 407,412 **** font-family:Symbol;} @list l12 ! {mso-list-id:1976253256; ! mso-list-template-ids:-770681902;} @list l12:level1 {mso-level-number-format:bullet; --- 407,412 ---- font-family:Symbol;} @list l12 ! {mso-list-id:2042438998; ! mso-list-template-ids:229127988;} @list l12:level1 {mso-level-number-format:bullet; *************** *** 418,423 **** font-family:Symbol;} @list l13 ! {mso-list-id:2021277955; ! mso-list-template-ids:-1022227442;} @list l13:level1 {mso-level-number-format:bullet; --- 418,423 ---- font-family:Symbol;} @list l13 ! {mso-list-id:2075659344; ! mso-list-template-ids:280783254;} @list l13:level1 {mso-level-number-format:bullet; *************** *** 451,455 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="58370"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 451,455 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="59394"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 543,547 **** style='font-family:"Book Antiqua";mso-bidi-font-family:Arial;color:black'>News<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l3 level1 lfo3;tab-stops: list .5in'><st1:date Year="2005" Day="24" Month="6"><span style='font-family:"Book Antiqua";mso-bidi-font-family:Arial'>June 24, --- 543,553 ---- style='font-family:"Book Antiqua";mso-bidi-font-family:Arial;color:black'>News<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l0 level1 lfo3;tab-stops: ! list .5in'><st1:date Year="2005" Day="25" Month="6"><span ! style='font-family:"Book Antiqua";mso-bidi-font-family:Arial'>June 25, ! 2005</span></st1:date><span style='font-family:"Book Antiqua"; ! mso-bidi-font-family:Arial'>: We have now retrieved the forum data from about ! a week back.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l0 level1 lfo3;tab-stops: list .5in'><st1:date Year="2005" Day="24" Month="6"><span style='font-family:"Book Antiqua";mso-bidi-font-family:Arial'>June 24, *************** *** 549,564 **** mso-bidi-font-family:Arial'>: The old forums server got hacked, and we lost all the old posts and account data.<span style='mso-spacerun:yes'> ! </span>The new forum is on a different server and uses the latest phpBB.<span ! style='mso-spacerun:yes'> </span>We apologize to the forum members for ! this inconvenience.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l3 level1 lfo3;tab-stops: ! list .5in'><st1:date Year="2005" Day="21" Month="4"><span ! style='font-family:"Book Antiqua";mso-bidi-font-family:Arial'>April 21, ! 2005</span></st1:date><span style='font-family:"Book Antiqua"; ! mso-bidi-font-family:Arial'>: Version 0.3.0 released.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l3 level1 lfo3;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>February 10, 2005: Version 0.2.0 released.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l3 level1 lfo3;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>November 1, 2004: Version 0.1.0 released.<o:p></o:p></span></li> --- 555,568 ---- mso-bidi-font-family:Arial'>: The old forums server got hacked, and we lost all the old posts and account data.<span style='mso-spacerun:yes'> ! </span>The new forum is on a different server and uses the latest ! phpBB.<span style='mso-spacerun:yes'> </span>We apologize to the forum ! members for this inconvenience.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l0 level1 lfo3;tab-stops: ! list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: ! Arial'>April 21, 2005: Version 0.3.0 released.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l0 level1 lfo3;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>February 10, 2005: Version 0.2.0 released.<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l0 level1 lfo3;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>November 1, 2004: Version 0.1.0 released.<o:p></o:p></span></li> *************** *** 570,574 **** Physics Engines<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l3 level1 lfo3;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'><a href="http://www.ode.org/">Open Dynamics Engine</a><o:p></o:p></span></li> --- 574,578 ---- Physics Engines<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l0 level1 lfo3;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'><a href="http://www.ode.org/">Open Dynamics Engine</a><o:p></o:p></span></li> *************** *** 580,616 **** Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Open Source<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Cross-platform<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Tested on Linux, Irix, Windows, and Mac OS X<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file loading<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for 3ds Max<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Breakable joints<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Linear and angular motion damping<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Per-shape material settings<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Contact groups (define which objects can interact physically)<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Collision detection primitive shapes<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 584,620 ---- Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Open Source<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Cross-platform<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Tested on Linux, Irix, Windows, and Mac OS X<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file loading<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for 3ds Max<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Breakable joints<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Linear and angular motion damping<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Per-shape material settings<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Contact groups (define which objects can interact physically)<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Collision detection primitive shapes<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 618,622 **** mso-bidi-font-family:Arial;color:black'>Boxes<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 622,626 ---- mso-bidi-font-family:Arial;color:black'>Boxes<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 624,628 **** mso-bidi-font-family:Arial;color:black'>Spheres<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 628,632 ---- mso-bidi-font-family:Arial;color:black'>Spheres<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 630,634 **** mso-bidi-font-family:Arial;color:black'>Capsules (i.e. capped cylinders)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 634,638 ---- mso-bidi-font-family:Arial;color:black'>Capsules (i.e. capped cylinders)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 636,640 **** mso-bidi-font-family:Arial;color:black'>Planes<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo9;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>User-defined triangular mesh collision detection (best for --- 640,644 ---- mso-bidi-font-family:Arial;color:black'>Planes<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l8 level1 lfo9;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>User-defined triangular mesh collision detection (best for *************** *** 642,651 **** </ul> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Joints<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 646,655 ---- </ul> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Joints<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 654,658 **** of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 658,662 ---- of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 661,665 **** degrees of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 665,669 ---- degrees of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 668,672 **** of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 672,676 ---- of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 675,679 **** of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 679,683 ---- of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 682,686 **** one translational degree of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 686,690 ---- one translational degree of freedom)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo13;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 689,698 **** freedom)<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Motors<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 693,702 ---- freedom)<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Motors<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l4 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 701,705 **** gravitational attraction between two objects)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 705,709 ---- gravitational attraction between two objects)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l4 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 708,712 **** engines)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 712,716 ---- engines)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l4 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 715,719 **** achieve a desired angle or velocity; similar to PD/PID controllers)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 719,723 ---- achieve a desired angle or velocity; similar to PD/PID controllers)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l4 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 722,726 **** pull objects to a desired position and/or orientation)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l7 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 726,730 ---- pull objects to a desired position and/or orientation)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l4 level3 lfo16;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 729,738 **** force on an object)<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Sensors<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 733,742 ---- force on an object)<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Sensors<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 740,744 **** mso-bidi-font-family:Arial;color:black'>Acceleration sensors<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 744,748 ---- mso-bidi-font-family:Arial;color:black'>Acceleration sensors<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 746,750 **** mso-bidi-font-family:Arial;color:black'>Incline sensors<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 750,754 ---- mso-bidi-font-family:Arial;color:black'>Incline sensors<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 752,756 **** mso-bidi-font-family:Arial;color:black'>Raycast sensors<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 756,760 ---- mso-bidi-font-family:Arial;color:black'>Raycast sensors<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 758,767 **** mso-bidi-font-family:Arial;color:black'>Volume sensors<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Event handlers<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 762,771 ---- mso-bidi-font-family:Arial;color:black'>Volume sensors<o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>Event handlers<o:p></o:p></span></li> </ul> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 770,774 **** when objects collide)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> --- 774,778 ---- when objects collide)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 777,786 **** when a joint breaks)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l9 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> </span></span></span><![endif]><span style='font-family:"Book Antiqua"; ! mso-bidi-font-family:Arial;color:black'>Post-step event handler (notified at the ! end of each time step)<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial;color:black'><o:p> </o:p></span></p> --- 781,790 ---- when a joint breaks)<o:p></o:p></span></p> <p class=MsoNormal style='margin-left:68.3pt;text-indent:-.25in;mso-list: ! l8 level3 lfo9;tab-stops:list 68.3pt 1.5in'><![if !supportLists]><span style='font-family:"Courier New";mso-fareast-font-family:"Courier New"; color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> </span></span></span><![endif]><span style='font-family:"Book Antiqua"; ! mso-bidi-font-family:Arial;color:black'>Post-step event handler (notified at ! the end of each time step)<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial;color:black'><o:p> </o:p></span></p> *************** *** 789,796 **** Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file saving<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for Blender<o:p></o:p></span></li> --- 793,800 ---- Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file saving<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l9 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for Blender<o:p></o:p></span></li> |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 06:45:51
|
Update of /cvsroot/opal/opal/vc71 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22427/vc71 Modified Files: opal.suo Log Message: Finished writing 'simple' sample app and its SConstruct file. Index: opal.suo =================================================================== RCS file: /cvsroot/opal/opal/vc71/opal.suo,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 Binary files /tmp/cvsMuEl1p and /tmp/cvsZtfdij differ |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 06:45:51
|
Update of /cvsroot/opal/opal/samples/simple In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22427/samples/simple Modified Files: SConstruct main.cpp simple.suo Log Message: Finished writing 'simple' sample app and its SConstruct file. Index: SConstruct =================================================================== RCS file: /cvsroot/opal/opal/samples/simple/SConstruct,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** SConstruct 24 Jun 2005 23:38:09 -0000 1.1 --- SConstruct 25 Jun 2005 06:45:41 -0000 1.2 *************** *** 13,17 **** env = Environment( ENV = os.environ, ! LIBS = ['opal-ode', 'OgreMain'], options = opts ) --- 13,17 ---- env = Environment( ENV = os.environ, ! LIBS = ['GL', 'GLU', 'SDL', 'SDLmain', 'opal-ode'], options = opts ) *************** *** 20,31 **** LIBPATH = env['extra_lib_path']) ! if env['PLATFORM'] != 'win32': ! env.Append(CXXFLAGS = ['-DGCC_3_1', '-DEXT_HASH']) # Build the executable. ! exe = env.Program('playpen', sources) # Install the executable. ! inst = env.Install('../bin/release', exe) # Tell scons to build and install the executable by default. --- 20,36 ---- LIBPATH = env['extra_lib_path']) ! # Note: This doesn't seem to build on Win32. Try the Visual Studio project file ! # or bug the developers to fix this SConstruct for Win32. ! if env['PLATFORM'] == 'win32': ! env.Replace(LIBS = ['opengl32', 'glu32', 'SDL', 'SDLmain', 'opal-ode']) ! ! # Generate command line help text ! env.Help(opts.GenerateHelpText(env)) # Build the executable. ! exe = env.Program('simple', sources) # Install the executable. ! inst = env.Install('../bin/simple', exe) # Tell scons to build and install the executable by default. Index: main.cpp =================================================================== RCS file: /cvsroot/opal/opal/samples/simple/main.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** main.cpp 24 Jun 2005 23:38:09 -0000 1.1 --- main.cpp 25 Jun 2005 06:45:41 -0000 1.2 *************** *** 32,38 **** // to simulated physics in general). It starts with a simple scene and // allows the user to create new physical objects via keypresses. This ! // application is very basic and contains extremely verbose comments. ! // Feel free to use this as a starting point for your own OPAL applications, ! // if you'd like. // // This application uses OpenGL for rendering and SDL (www.libsdl.org) for --- 32,38 ---- // to simulated physics in general). It starts with a simple scene and // allows the user to create new physical objects via keypresses. This ! // application is very basic and contains extremely verbose comments. The ! // major steps are numbered for your convenience. Feel free to use this ! // as a starting point for your own OPAL applications, if you'd like. // // This application uses OpenGL for rendering and SDL (www.libsdl.org) for *************** *** 44,49 **** --- 44,52 ---- // 'Timer' is a simple class used to measure elapsed time between frames.) + #include <time.h> + #include <opal/opal.h> #include <sdl/SDL.h> + #include "Timer.h" #include "BoxEntity.h" *************** *** 96,101 **** gSimulator->setGravity(opal::Vec3r(0, (opal::real)-9.81, 0)); ! // 3. Create some initial Solids and Entities, and connect each ! // Solid to an Entity. Solids can move around and collide with // other Solids, but they're essentially invisible without some sort // of visual representation. The Entity class used in this --- 99,104 ---- gSimulator->setGravity(opal::Vec3r(0, (opal::real)-9.81, 0)); ! // 3. Create a ground platform by making a Solid and an Entity and ! // connecting them together. Solids can move around and collide with // other Solids, but they're essentially invisible without some sort // of visual representation. The Entity class used in this *************** *** 111,121 **** // multiple OPAL Shapes attached to it, one Solid could use // multiple Entities: one for each Shape. opal::Solid* platformSolid = gSimulator->createSolid(); ! // Make the platform Solid static. Dynamic Solids can move; static // Solids cannot. platformSolid->setStatic(true); ! // Add a box Shape to the Solid. Shapes describe a Solid's physical // boundaries. A Solid can use any number of Shapes, and each Shape // can be offset from the Solid's center. --- 114,126 ---- // multiple OPAL Shapes attached to it, one Solid could use // multiple Entities: one for each Shape. + + // 3a. Create the Solid for the platform. opal::Solid* platformSolid = gSimulator->createSolid(); ! // 3b. Make the platform Solid static. Dynamic Solids can move; static // Solids cannot. platformSolid->setStatic(true); ! // 3c. Add a box Shape to the Solid. Shapes describe a Solid's physical // boundaries. A Solid can use any number of Shapes, and each Shape // can be offset from the Solid's center. *************** *** 124,129 **** platformSolid->addShape(boxShape); ! // Make an Entity for the ground platform, set its visual dimensions to ! // match the physical box, attach it to the Solid, and add it to our // global list of Entities so it can get drawn. opalSamples::BoxEntity* groundEntity = new opalSamples::BoxEntity(); --- 129,134 ---- platformSolid->addShape(boxShape); ! // 3d. Make an Entity for the ground platform, set its visual dimensions ! // to match the physical box, attach it to the Solid, and add it to our // global list of Entities so it can get drawn. opalSamples::BoxEntity* groundEntity = new opalSamples::BoxEntity(); *************** *** 142,146 **** opal::real dt = (opal::real)timer.getElapsedSeconds(); ! // 5b. Check for user input. gQuit = processInput(); --- 147,153 ---- opal::real dt = (opal::real)timer.getElapsedSeconds(); ! // 5b. Check for user input. In this application we only care ! // about keyboard input for creating new objects, pausing the ! // simulation, and quitting. gQuit = processInput(); *************** *** 181,185 **** } ! // 6. Destroy the Entities. while (!gEntities.empty()) { --- 188,195 ---- } ! // 6. Close the OpenGL window. ! destroyWindow(); ! ! // 7. Destroy the Entities. while (!gEntities.empty()) { *************** *** 188,192 **** } ! // 7. Destroy the Simulator. This will automatically destroy everything // contained within the Simulator. gSimulator->destroy(); --- 198,202 ---- } ! // 8. Destroy the Simulator. This will automatically destroy everything // contained within the Simulator. gSimulator->destroy(); *************** *** 226,230 **** // Set key repeat rate (initial delay and interval between repeats, // both in milliseconds). ! SDL_EnableKeyRepeat(50, 50); // Setup OpenGL. --- 236,240 ---- // Set key repeat rate (initial delay and interval between repeats, // both in milliseconds). ! SDL_EnableKeyRepeat(300, 300); // Setup OpenGL. *************** *** 322,325 **** --- 332,344 ---- void createRandomObject() { + // Seed the random number generator (if it hasn't already happened) + // with the current time. + static bool seeded = false; + if (!seeded) + { + srand((unsigned int)time(NULL)); + seeded = true; + } + // Create a new Solid. opal::Solid* solid = gSimulator->createSolid(); *************** *** 327,336 **** opalSamples::Entity* entity = NULL; ! // Choose a random initial position. opal::real xMax = (opal::real)0.5 * gGroundDimensions[0]; opal::real zMax = (opal::real)0.5 * gGroundDimensions[2]; ! opal::Point3r pos(randomRealUniform(-xMax, xMax), 15, ! randomRealUniform(-zMax, zMax)); ! solid->setPosition(pos); // Choose a random type of object. --- 346,359 ---- opalSamples::Entity* entity = NULL; ! // Choose a random initial position and orientation. ! opal::Matrix44r transform; opal::real xMax = (opal::real)0.5 * gGroundDimensions[0]; opal::real zMax = (opal::real)0.5 * gGroundDimensions[2]; ! transform.translate(randomRealUniform(-xMax, xMax), ! randomRealUniform(15, 30), randomRealUniform(-zMax, zMax)); ! transform.rotate(randomRealUniform(0, 360), 1, 0, 0); ! transform.rotate(randomRealUniform(0, 360), 0, 1, 0); ! transform.rotate(randomRealUniform(0, 360), 0, 0, 1); ! solid->setTransform(transform); // Choose a random type of object. *************** *** 338,341 **** --- 361,369 ---- int objectType = (int)(numObjectTypes * rand() / (RAND_MAX + 1.0)); + // Choose a random color for the object. + opal::Vec3r color(randomRealUniform(0, (opal::real)0.7), + randomRealUniform(0, (opal::real)0.7), + randomRealUniform(0, (opal::real)0.7)); + // Add Shapes to the Solid and attach an Entity. The Shapes and // visual representation depend on the object type. *************** *** 346,355 **** // Simple box. opal::BoxShapeData boxShape; ! boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, ! (opal::real)5); solid->addShape(boxShape); --- 374,380 ---- // Simple box. opal::BoxShapeData boxShape; ! boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, 7); ! boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, 7); ! boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, 7); solid->addShape(boxShape); *************** *** 357,361 **** ((opalSamples::BoxEntity*)entity)->setDimensions( boxShape.dimensions); - entity->attachToSolid(solid); break; } --- 382,385 ---- *************** *** 363,380 **** { // Simple sphere. ! // TODO ! opal::BoxShapeData boxShape; ! boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! solid->addShape(boxShape); ! entity = new opalSamples::BoxEntity(); ! ((opalSamples::BoxEntity*)entity)->setDimensions( ! boxShape.dimensions); ! entity->attachToSolid(solid); break; } --- 387,397 ---- { // Simple sphere. ! opal::SphereShapeData sphereShape; ! sphereShape.radius = randomRealUniform((opal::real)0.25, 3); ! solid->addShape(sphereShape); ! entity = new opalSamples::SphereEntity(); ! ((opalSamples::SphereEntity*)entity)->setRadius( ! sphereShape.radius); break; } *************** *** 382,399 **** { // Simple capsule. ! // TODO ! opal::BoxShapeData boxShape; ! boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, ! (opal::real)5); ! solid->addShape(boxShape); ! entity = new opalSamples::BoxEntity(); ! ((opalSamples::BoxEntity*)entity)->setDimensions( ! boxShape.dimensions); ! entity->attachToSolid(solid); break; } --- 399,410 ---- { // Simple capsule. ! opal::CapsuleShapeData capsuleShape; ! capsuleShape.radius = randomRealUniform((opal::real)0.25, 3); ! capsuleShape.length = randomRealUniform((opal::real)0.5, 7); ! solid->addShape(capsuleShape); ! entity = new opalSamples::CapsuleEntity(); ! ((opalSamples::CapsuleEntity*)entity)->setDimensions( ! capsuleShape.radius, capsuleShape.length); break; } *************** *** 402,405 **** --- 413,422 ---- } + // Set the new Entity's color. + entity->setColor(color[0], color[1], color[2]); + + // Attach the new Entity to the Solid. + entity->attachToSolid(solid); + // Add the new Entity to the global list so it can get drawn. gEntities.push_back(entity); Index: simple.suo =================================================================== RCS file: /cvsroot/opal/opal/samples/simple/simple.suo,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsk4CCaU and /tmp/cvsM7gm0M differ |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 06:45:50
|
Update of /cvsroot/opal/opal/samples/playpen In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22427/samples/playpen Modified Files: SConstruct playpen.suo Log Message: Finished writing 'simple' sample app and its SConstruct file. Index: SConstruct =================================================================== RCS file: /cvsroot/opal/opal/samples/playpen/SConstruct,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** SConstruct 21 Apr 2005 17:04:59 -0000 1.4 --- SConstruct 25 Jun 2005 06:45:41 -0000 1.5 *************** *** 23,26 **** --- 23,29 ---- env.Append(CXXFLAGS = ['-DGCC_3_1', '-DEXT_HASH']) + # Generate command line help text + env.Help(opts.GenerateHelpText(env)) + # Build the executable. exe = env.Program('playpen', sources) Index: playpen.suo =================================================================== RCS file: /cvsroot/opal/opal/samples/playpen/playpen.suo,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 Binary files /tmp/cvs8zicmL and /tmp/cvsQ9QZmD differ |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 06:45:50
|
Update of /cvsroot/opal/opal/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22427/samples Modified Files: readme.txt Log Message: Finished writing 'simple' sample app and its SConstruct file. Index: readme.txt =================================================================== RCS file: /cvsroot/opal/opal/samples/readme.txt,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** readme.txt 24 Jun 2005 23:38:07 -0000 1.4 --- readme.txt 25 Jun 2005 06:45:41 -0000 1.5 *************** *** 1,5 **** OPAL Sample Applications ! These applications demonstrate some of OPAL's features. Each application comes with a vc71 project for win32 and an SConstruct for all platforms. A template OPAL-Ogre application has been provided in the TemplateApp.cpp file. ------------------------------------ --- 1,5 ---- OPAL Sample Applications ! These applications demonstrate some of OPAL's features. Each application comes with a vc71 project for win32 and an SConstruct for all platforms. A template OPAL-Ogre application has been provided in the TemplateApp.cpp file for anyone wanting to write their own apps using OPAL with Ogre. ------------------------------------ *************** *** 9,17 **** Playpen* ------- ! An arena where objects can be created and manipulated. Uses a Raycast Sensor and Spring Motor to allow the user to pick and move any dynamic object in the scene. Click and drag the left mouse button to move objects, arrow or 'wasd' keys to move the camera, 1-9 to create objects, 'r' to reset the scene, 'h' to toggle shadows, and 'l' to toggle a second light source. Simple** ------- ! An extremely simple example for beginners. --- 9,17 ---- Playpen* ------- ! An arena where objects can be created and manipulated. Uses a Raycast Sensor and Spring Motor to allow the user to pick and move any dynamic object in the scene. Click and drag the left mouse button to move objects, arrow or 'wasd' keys to move the camera, 1-9 to create objects, 'r' to reset the scene, 'q' or 'esc' to quit, 'p' to pause, 'h' to toggle shadows, and 'l' to toggle a second light source. Simple** ------- ! A simple example for beginners. Keypresses from the user create random primitive objects in random locations. Press 'space' to create objects, 'q' or 'esc' to quit, and 'p' to pause. |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 06:45:50
|
Update of /cvsroot/opal/opal In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22427 Modified Files: gatherSrcRelease.bat gatherWin32BinaryRelease.bat Log Message: Finished writing 'simple' sample app and its SConstruct file. Index: gatherSrcRelease.bat =================================================================== RCS file: /cvsroot/opal/opal/gatherSrcRelease.bat,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gatherSrcRelease.bat 24 Jun 2005 17:50:47 -0000 1.2 --- gatherSrcRelease.bat 25 Jun 2005 06:45:40 -0000 1.3 *************** *** 1,4 **** ! mkdir opal-0.3.0-src ! cd opal-0.3.0-src copy ..\readme.txt . copy ..\changelog.txt . --- 1,4 ---- ! mkdir opal-0.3.1-src ! cd opal-0.3.1-src copy ..\readme.txt . copy ..\changelog.txt . *************** *** 59,62 **** copy ..\samples\playpen\playpen.vcproj samples\playpen copy ..\samples\playpen\main.cpp samples\playpen ! cd .. --- 59,67 ---- copy ..\samples\playpen\playpen.vcproj samples\playpen copy ..\samples\playpen\main.cpp samples\playpen ! mkdir samples\simple ! copy ..\samples\simple\SConstruct samples\simple ! copy ..\samples\simple\simple.sln samples\simple ! copy ..\samples\simple\simple.vcproj samples\simple ! copy ..\samples\simple\*.h samples\simple ! copy ..\samples\simple\*.cpp samples\simple cd .. Index: gatherWin32BinaryRelease.bat =================================================================== RCS file: /cvsroot/opal/opal/gatherWin32BinaryRelease.bat,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gatherWin32BinaryRelease.bat 18 Apr 2005 22:21:00 -0000 1.1 --- gatherWin32BinaryRelease.bat 25 Jun 2005 06:45:40 -0000 1.2 *************** *** 1,4 **** ! mkdir opal-0.3.0-win32 ! cd opal-0.3.0-win32 copy ..\win32BinaryReadme.txt . copy ..\changelog.txt . --- 1,4 ---- ! mkdir opal-0.3.1-win32 ! cd opal-0.3.1-win32 copy ..\win32BinaryReadme.txt . copy ..\changelog.txt . |
|
From: tylerstreeter <tyl...@us...> - 2005-06-25 04:53:06
|
Update of /cvsroot/opal/web In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4140 Modified Files: change_process.html developers.html documentation.html downloads.html index.html license.html todo.txt users.html Log Message: Updated link to new forum site. Index: change_process.html =================================================================== RCS file: /cvsroot/opal/web/change_process.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** change_process.html 18 Jun 2005 18:04:22 -0000 1.2 --- change_process.html 25 Jun 2005 04:52:55 -0000 1.3 *************** *** 23,27 **** <w:WordDocument> <w:Zoom>90</w:Zoom> - <w:GrammarState>Clean</w:GrammarState> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> --- 23,26 ---- *************** *** 77,83 **** font-family:"Courier New"; mso-fareast-font-family:"Times New Roman";} - span.GramE - {mso-style-name:""; - mso-gram-e:yes;} @page Section1 {size:8.5in 11.0in; --- 76,79 ---- *************** *** 107,111 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="7170"/> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> --- 103,107 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="8194"/> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> *************** *** 140,145 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'> </span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'> </span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>This page ! is a reference for those people wanting to submit bug reports, feature requests, or patches submissions to the OPAL source code.<span style='mso-spacerun:yes'> </span>Most of these processes are handled via --- 136,141 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'> </span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'> </span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>This ! page is a reference for those people wanting to submit bug reports, feature requests, or patches submissions to the OPAL source code.<span style='mso-spacerun:yes'> </span>Most of these processes are handled via *************** *** 180,186 **** of course, you can always make modifications to your own version of OPAL).<span style='mso-spacerun:yes'> </span>The OPAL development team makes ! the final decision of whether a patch gets applied or not, so it would be wise ! to discuss your idea on the forum with one of the developers before starting ! your implementation.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span --- 176,182 ---- of course, you can always make modifications to your own version of OPAL).<span style='mso-spacerun:yes'> </span>The OPAL development team makes ! the final decision of whether a patch gets applied or not, so it would be ! wise to discuss your idea on the forum with one of the developers before ! starting your implementation.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span *************** *** 192,199 **** <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span style='font-family:"Book Antiqua";color:black'>3.</span></b><span ! style='font-family:"Book Antiqua";color:black'> Create a CVS .diff or .patch ! file containing all of your changes.<span style='mso-spacerun:yes'> ! </span>If you are using UNIX and have simply changed some existing OPAL ! files, do the following: <o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 align=left --- 188,195 ---- <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span style='font-family:"Book Antiqua";color:black'>3.</span></b><span ! style='font-family:"Book Antiqua";color:black'> Create a CVS .diff or .patch file ! containing all of your changes.<span style='mso-spacerun:yes'> </span>If you ! are using UNIX and have simply changed some existing OPAL files, do the ! following: <o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 align=left *************** *** 221,226 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>If you ! are using UNIX and have added new files, do the following: <o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 align=left --- 217,222 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>If ! you are using UNIX and have added new files, do the following: <o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0 align=left *************** *** 237,241 **** style='mso-bidi-font-style:italic'>opal_directory<o:p></o:p></span></span></pre><pre><span style='font-size:12.0pt;font-family:Courier'>cvs diff -u -r -b -N -a --binary --exclude=CVS --exclude=build \ <o:p></o:p></span></pre><pre><span ! style='font-size:12.0pt;font-family:Courier'><span style='mso-spacerun:yes'> </span><span style='mso-spacerun:yes'> </span>/path/to/opal_directory . > <span style='mso-bidi-font-style:italic'>patch_name</span>.patch<o:p></o:p></span></pre> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> --- 233,237 ---- style='mso-bidi-font-style:italic'>opal_directory<o:p></o:p></span></span></pre><pre><span style='font-size:12.0pt;font-family:Courier'>cvs diff -u -r -b -N -a --binary --exclude=CVS --exclude=build \ <o:p></o:p></span></pre><pre><span ! style='font-size:12.0pt;font-family:Courier'><span style='mso-spacerun:yes'> </span>/path/to/opal_directory . > <span style='mso-bidi-font-style:italic'>patch_name</span>.patch<o:p></o:p></span></pre> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> *************** *** 249,255 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>If ! you are using TortoiseCVS in Windows, simply right-click on the project ! folder and go to CVS -> Make Patch...<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><span style='mso-spacerun:yes'> </span><o:p></o:p></span></p> --- 245,251 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>If you ! are using TortoiseCVS in Windows, simply right-click on the project folder ! and go to CVS -> Make Patch...<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><span style='mso-spacerun:yes'> </span><o:p></o:p></span></p> *************** *** 271,276 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>This section contains a short description of the overall design philosophy.<span ! style='mso-spacerun:yes'> </span>Remember, when in <span class=GramE>doubt,</span> ! look at the existing source code.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>The --- 267,282 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>This section contains a short description of the overall design philosophy.<span ! style='mso-spacerun:yes'> </span>Remember, when in doubt, look at the ! existing source code.<o:p></o:p></span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> ! <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>OPAL ! has two main goals: 1) to provide a high-level physics interface, and 2) to ! provide an abstract interface that is independent of the underlying physics ! engines.<span style='mso-spacerun:yes'> </span>Although some similar ! libraries focus mainly on #2, OPAL is more focused on #1.<span ! style='mso-spacerun:yes'> </span>Even though #2 it important for comparing physics ! engines or using multiple physics engines in the same application, OPALs ! primary concern is giving developers a simple, powerful interface with high-level ! constructs.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>The *************** *** 293,298 **** object needed to restore the state of the simulation should be added to that object's Data class.<span style='mso-spacerun:yes'> </span>All variables in ! an object's Data class should be handled by the BlueprintManager when ! loading/saving XML files.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span --- 299,304 ---- object needed to restore the state of the simulation should be added to that object's Data class.<span style='mso-spacerun:yes'> </span>All variables in ! an object's Data class should be handled by the BlueprintManager when loading/saving ! XML files.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span *************** *** 301,306 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>This section contains a set of coding conventions used in OPAL.<span ! style='mso-spacerun:yes'> </span>Remember, when in <span class=GramE>doubt,</span> ! look at the existing source code.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span --- 307,312 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>This section contains a set of coding conventions used in OPAL.<span ! style='mso-spacerun:yes'> </span>Remember, when in doubt, look at the ! existing source code.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span *************** *** 316,320 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><span style='mso-spacerun:yes'> </span>x = 5;<br> ! <span class=GramE>}</span><br> <br> Keep each line to 80 characters or fewer.<br> --- 322,326 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><span style='mso-spacerun:yes'> </span>x = 5;<br> ! }<br> <br> Keep each line to 80 characters or fewer.<br> *************** *** 355,359 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>All get/set functions begin with get and set except get functions that return ! a boolean, in which case the name should start with is.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span --- 361,365 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>All get/set functions begin with get and set except get functions that return ! a boolean, in which case the name should start with is or are.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span Index: developers.html =================================================================== RCS file: /cvsroot/opal/web/developers.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** developers.html 18 Jun 2005 19:19:46 -0000 1.1 --- developers.html 25 Jun 2005 04:52:55 -0000 1.2 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>103</o:Revision> <o:TotalTime>202</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-18T19:16:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>410</o:Words> ! <o:Characters>2343</o:Characters> <o:Company>none</o:Company> <o:Lines>19</o:Lines> <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2748</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>105</o:Revision> <o:TotalTime>202</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>410</o:Words> ! <o:Characters>2341</o:Characters> <o:Company>none</o:Company> <o:Lines>19</o:Lines> <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2746</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 101,105 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="53250"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 101,105 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="54274"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 138,142 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://www.speedacm.org/~o0lozi01/forum/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 138,142 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; Index: todo.txt =================================================================== RCS file: /cvsroot/opal/web/todo.txt,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** todo.txt 20 Jun 2005 01:28:48 -0000 1.14 --- todo.txt 25 Jun 2005 04:52:55 -0000 1.15 *************** *** 2,9 **** ================= - * add a basic integration tutorial - - shows how to update custom 'entities' from opal solids - - shows how to ignore updating an entity when the solid hasn't changed - * update doxygen api notes from source --- 2,5 ---- Index: index.html =================================================================== RCS file: /cvsroot/opal/web/index.html,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** index.html 18 Jun 2005 19:19:45 -0000 1.13 --- index.html 25 Jun 2005 04:52:55 -0000 1.14 *************** *** 28,42 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>111</o:Revision> ! <o:TotalTime>201</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-18T19:17:00Z</o:LastSaved> ! <o:Pages>2</o:Pages> ! <o:Words>421</o:Words> ! <o:Characters>2402</o:Characters> <o:Company>none</o:Company> [...1015 lines suppressed...] color:black'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'> *************** *** 782,789 **** Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l12 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file saving<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l12 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for Blender<o:p></o:p></span></li> --- 789,796 ---- Features<o:p></o:p></span></b></p> <ul style='margin-top:0in' type=disc> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>XML file saving<o:p></o:p></span></li> ! <li class=MsoNormal style='color:black;mso-list:l10 level1 lfo7;tab-stops: list .5in'><span style='font-family:"Book Antiqua";mso-bidi-font-family: Arial'>OPAL XML exporter for Blender<o:p></o:p></span></li> Index: users.html =================================================================== RCS file: /cvsroot/opal/web/users.html,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** users.html 18 Jun 2005 19:19:45 -0000 1.6 --- users.html 25 Jun 2005 04:52:55 -0000 1.7 *************** *** 3,7 **** xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" - xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40"> --- 3,6 ---- *************** *** 22,44 **** <![endif]--> <title>OPAL: Open Physics Abstraction Layer</title> - <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" - name="City"/> - <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" - name="place"/> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>114</o:Revision> <o:TotalTime>139</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-18T19:18:00Z</o:LastSaved> <o:Pages>2</o:Pages> <o:Words>628</o:Words> ! <o:Characters>3585</o:Characters> <o:Company>none</o:Company> <o:Lines>29</o:Lines> <o:Paragraphs>8</o:Paragraphs> ! <o:CharactersWithSpaces>4205</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 21,39 ---- <![endif]--> <title>OPAL: Open Physics Abstraction Layer</title> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>116</o:Revision> <o:TotalTime>139</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:51:00Z</o:LastSaved> <o:Pages>2</o:Pages> <o:Words>628</o:Words> ! <o:Characters>3583</o:Characters> <o:Company>none</o:Company> <o:Lines>29</o:Lines> <o:Paragraphs>8</o:Paragraphs> ! <o:CharactersWithSpaces>4203</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 48,57 **** <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> ! </xml><![endif]--><!--[if !mso]><object ! classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object> ! <style> ! st1\:*{behavior:url(#ieooui) } ! </style> ! <![endif]--> <style> <!-- --- 43,47 ---- <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> ! </xml><![endif]--> <style> <!-- *************** *** 109,113 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="54274"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="55298"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 146,150 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://www.speedacm.org/~o0lozi01/forum/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; *************** *** 192,199 **** <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>If ! you would like to have your OPAL project added to this list, email </span><st1:City><st1:place><span ! style='font-family:"Book Antiqua";color:black'>Tyler</span></st1:place></st1:City><span ! style='font-family:"Book Antiqua";color:black'> with the projects name, a ! short description, a link to the projects website, and screenshot.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal align=center style='text-align:center'><span --- 182,188 ---- <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'>If ! you would like to have your OPAL project added to this list, email Tyler with ! the projects name, a short description, a link to the projects website, and ! screenshot.<o:p></o:p></span></p> <p class=MsoNormal><span style='font-family:"Book Antiqua";color:black'><o:p> </o:p></span></p> <p class=MsoNormal align=center style='text-align:center'><span Index: documentation.html =================================================================== RCS file: /cvsroot/opal/web/documentation.html,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** documentation.html 20 Jun 2005 01:28:48 -0000 1.20 --- documentation.html 25 Jun 2005 04:52:55 -0000 1.21 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>126</o:Revision> <o:TotalTime>125</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-20T00:54:00Z</o:LastSaved> ! <o:Pages>1</o:Pages> ! <o:Words>381</o:Words> ! <o:Characters>2178</o:Characters> <o:Company>none</o:Company> ! <o:Lines>18</o:Lines> ! <o:Paragraphs>5</o:Paragraphs> ! <o:CharactersWithSpaces>2554</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>128</o:Revision> <o:TotalTime>125</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> ! <o:Pages>2</o:Pages> ! <o:Words>373</o:Words> ! <o:Characters>2129</o:Characters> <o:Company>none</o:Company> ! <o:Lines>17</o:Lines> ! <o:Paragraphs>4</o:Paragraphs> ! <o:CharactersWithSpaces>2498</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 41,46 **** <w:WordDocument> <w:Zoom>90</w:Zoom> - <w:SpellingState>Clean</w:SpellingState> - <w:GrammarState>Clean</w:GrammarState> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> --- 41,44 ---- *************** *** 74,80 **** text-decoration:underline; text-underline:single;} - span.SpellE - {mso-style-name:""; - mso-spl-e:yes;} @page Section1 {size:8.5in 11.0in; --- 72,75 ---- *************** *** 104,108 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="69634"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="70658"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 141,145 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://www.speedacm.org/~o0lozi01/forum/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; *************** *** 256,261 **** people wanting to request/submit changes to OPAL via bug reports, feature requests, or actual patch submissions.<span style='mso-spacerun:yes'> ! </span>Also contains information on <span class=SpellE>OPALs</span> design ! philosophy and coding conventions for those writing patches.</span></p> </td> </tr> --- 251,256 ---- people wanting to request/submit changes to OPAL via bug reports, feature requests, or actual patch submissions.<span style='mso-spacerun:yes'> ! </span>Also contains information on OPALs design philosophy and coding ! conventions for those writing patches.</span></p> </td> </tr> Index: license.html =================================================================== RCS file: /cvsroot/opal/web/license.html,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** license.html 18 Jun 2005 19:19:45 -0000 1.3 --- license.html 25 Jun 2005 04:52:55 -0000 1.4 *************** *** 25,44 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>82</o:Revision> <o:TotalTime>78</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-18T19:17:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>157</o:Words> ! <o:Characters>898</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1053</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> ! <w:Zoom>BestFit</w:Zoom> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> --- 25,44 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>84</o:Revision> <o:TotalTime>78</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>157</o:Words> ! <o:Characters>896</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1051</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> ! <w:Zoom>90</w:Zoom> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> *************** *** 99,103 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="45058"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="46082"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 136,140 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://www.speedacm.org/~o0lozi01/forum/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; Index: downloads.html =================================================================== RCS file: /cvsroot/opal/web/downloads.html,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** downloads.html 18 Jun 2005 19:19:45 -0000 1.4 --- downloads.html 25 Jun 2005 04:52:55 -0000 1.5 *************** *** 25,39 **** <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>80</o:Revision> <o:TotalTime>76</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-18T19:17:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>159</o:Words> ! <o:Characters>911</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1068</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> --- 25,39 ---- <o:Author>Tyler Streeter</o:Author> <o:LastAuthor>Tyler Streeter</o:LastAuthor> ! <o:Revision>82</o:Revision> <o:TotalTime>76</o:TotalTime> <o:Created>2004-06-05T15:20:00Z</o:Created> ! <o:LastSaved>2005-06-25T04:50:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>159</o:Words> ! <o:Characters>909</o:Characters> <o:Company>none</o:Company> <o:Lines>7</o:Lines> <o:Paragraphs>2</o:Paragraphs> ! <o:CharactersWithSpaces>1066</o:CharactersWithSpaces> <o:Version>10.6714</o:Version> </o:DocumentProperties> *************** *** 99,103 **** </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="45058"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> --- 99,103 ---- </style> <![endif]--><!--[if gte mso 9]><xml> ! <o:shapedefaults v:ext="edit" spidmax="46082"> <o:colormenu v:ext="edit" fillcolor="white"/> </o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> *************** *** 136,140 **** <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://www.speedacm.org/~o0lozi01/forum/index.php">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; --- 136,140 ---- <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; mso-bidi-font-family:Arial;color:#333333'><a ! href="http://ox.slug.louisville.edu/~o0lozi01/forum/">Forum</a></span><span style='color:#333333'><o:p></o:p></span></p> <p class=MsoNormal><span style='font-size:14.0pt;font-family:"Book Antiqua"; |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 23:38:45
|
Update of /cvsroot/opal/opal In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7464 Modified Files: changelog.txt todo.txt Log Message: Added 'simple' sample app. Index: changelog.txt =================================================================== RCS file: /cvsroot/opal/opal/changelog.txt,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** changelog.txt 24 Jun 2005 19:04:20 -0000 1.30 --- changelog.txt 24 Jun 2005 23:38:05 -0000 1.31 *************** *** 15,18 **** --- 15,20 ---- ------------------------------------------ + * 6-24-05: Added 'simple' sample app. (Tyler Streeter) + * 6-24-05: Removed the OPAL_USE_MESH compile-time flag because it isn't needed. (It was originally intended for IRIX usage because ODE's trimesh support doesn't compile on IRIX with certain versions of the MipsPro compiler. However, the ODE trimesh function calls can still be used without trimeshes compiled into ODE; they just don't do anything.) (Tyler Streeter) Index: todo.txt =================================================================== RCS file: /cvsroot/opal/opal/todo.txt,v retrieving revision 1.83 retrieving revision 1.84 diff -C2 -d -r1.83 -r1.84 *** todo.txt 24 Jun 2005 19:04:20 -0000 1.83 --- todo.txt 24 Jun 2005 23:38:06 -0000 1.84 *************** *** 12,15 **** --- 12,18 ---- * add option for SpringMotor to depend on mass/inertia or not + * make defaults not const? + - people can then do this: opal::defaults::motor::enabled = false; ... to affect all future motor creation + For Version 0.4.0 ================= |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 23:38:45
|
Update of /cvsroot/opal/opal/samples/playpen In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7464/samples/playpen Modified Files: playpen.suo Log Message: Added 'simple' sample app. Index: playpen.suo =================================================================== RCS file: /cvsroot/opal/opal/samples/playpen/playpen.suo,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 Binary files /tmp/cvs4uT67B and /tmp/cvsejli1L differ |
Update of /cvsroot/opal/opal/samples/simple In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7464/samples/simple Added Files: BoxEntity.h CapsuleEntity.h Entity.h SConstruct SphereEntity.h Timer.h main.cpp simple.sln simple.suo simple.vcproj Log Message: Added 'simple' sample app. --- NEW FILE: main.cpp --- /************************************************************************* * * * Open Physics Abstraction Layer * * Copyright (C) 2004-2005 * * Alan Fischer ala...@gm... * * Andres Reinot an...@re... * * Tyler Streeter tyl...@gm... * * All rights reserved. * * Web: opal.sourceforge.net * * * * This library is free software; you can redistribute it and/or * * modify it under the terms of EITHER: * * (1) The GNU Lesser General Public License as published by the Free * * Software Foundation; either version 2.1 of the License, or (at * * your option) any later version. The text of the GNU Lesser * * General Public License is included with this library in the * * file license-LGPL.txt. * * (2) The BSD-style license that is included with this library in * * the file license-BSD.txt. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files * * license-LGPL.txt and license-BSD.txt for more details. * * * *************************************************************************/ // -------------------------------- // OPAL 'Simple' sample application // -------------------------------- // This sample application is intended for people who are new to OPAL (or // to simulated physics in general). It starts with a simple scene and // allows the user to create new physical objects via keypresses. This // application is very basic and contains extremely verbose comments. // Feel free to use this as a starting point for your own OPAL applications, // if you'd like. // // This application uses OpenGL for rendering and SDL (www.libsdl.org) for // cross-platform input handling and window management (note that SDL is // required in order to build this sample). It uses a very minimal set of // classes to connect the OPAL Solids with drawable objects ('Entity' is a // base class for physically simulated drawable objects, such as the // included 'BoxEntity,' 'SphereEntity,' and 'CapsuleEntity' classes. // 'Timer' is a simple class used to measure elapsed time between frames.) #include <opal/opal.h> #include <sdl/SDL.h> #include "Timer.h" #include "BoxEntity.h" #include "SphereEntity.h" #include "CapsuleEntity.h" // A global list of all the drawable objects. std::vector<opalSamples::Entity*> gEntities; // A global pointer to the OPAL Simulator. opal::Simulator* gSimulator = NULL; // Used to determine when to quit. bool gQuit = false; // Used to keep track of when the simulation is paused. bool gPaused = false; // Dimensions of the ground platform. Used when creating the ground // platform and when determining random positions of new objects. opal::Vec3r gGroundDimensions(25, 5, 25); // Creates a window with an OpenGL context. void setupWindow(); // Destroys the OpenGL window. void destroyWindow(); // Gets new input from the user. Returns false if we should quit. bool processInput(); // Creates a random object at a semi-random location in the scene. void createRandomObject(); /// Returns a random real value between min and max using a uniform /// probability distribution. opal::real randomRealUniform(opal::real min, opal::real max); int main(int argc, char **argv) { // 1. Setup a window with an OpenGL context so we can see what's // happening. setupWindow(); // 2. Create a Simulator. This will enable us to create other OPAL // objects. As the name implies, it also simulates the interactions // among the various objects it contains. Also, we set the gravity // vector to be something other than the default (0, 0, 0). gSimulator = opal::createSimulator(); gSimulator->setGravity(opal::Vec3r(0, (opal::real)-9.81, 0)); // 3. Create some initial Solids and Entities, and connect each // Solid to an Entity. Solids can move around and collide with // other Solids, but they're essentially invisible without some sort // of visual representation. The Entity class used in this // sample represents drawable objects that can be associated with // Solids, thus making it possible to see how the Solids are moving // and interacting. (Of course you could run a simulation without // any visuals if you wanted.) Note that the visual representation // doesn't have to match the physical representation exactly: you // could have an intricate visual mesh for a simulated // television object and use a simple box shape for its physical // representation. Also note that there is not a strict one-to-one // relationship between Solids and Entities; since a Solid can have // multiple OPAL Shapes attached to it, one Solid could use // multiple Entities: one for each Shape. opal::Solid* platformSolid = gSimulator->createSolid(); // Make the platform Solid static. Dynamic Solids can move; static // Solids cannot. platformSolid->setStatic(true); // Add a box Shape to the Solid. Shapes describe a Solid's physical // boundaries. A Solid can use any number of Shapes, and each Shape // can be offset from the Solid's center. opal::BoxShapeData boxShape; boxShape.dimensions = gGroundDimensions; platformSolid->addShape(boxShape); // Make an Entity for the ground platform, set its visual dimensions to // match the physical box, attach it to the Solid, and add it to our // global list of Entities so it can get drawn. opalSamples::BoxEntity* groundEntity = new opalSamples::BoxEntity(); groundEntity->setDimensions(boxShape.dimensions); groundEntity->attachToSolid(platformSolid); gEntities.push_back(groundEntity); // 4. Make a Timer object to track elapsed time between frames. opalSamples::Timer timer; // 5. Start the main loop. while (!gQuit) { // 5a. Find out how much time has elapsed since the last time we // were here (i.e. the duration of the previous frame). opal::real dt = (opal::real)timer.getElapsedSeconds(); // 5b. Check for user input. gQuit = processInput(); // 5c. Now call 'simulate.' This will perform collision detection // and advance the simulation ahead by the given amount of time. // We will pass in the duration of the previous frame. This is // a fairly common way to visualize real-time simulations. (Note // that internally, the Simulator breaks the given time interval // into small, constant-sized steps and processes them iteratively. // Most real-time physics simulations need constant step sizes in // order to produce stable, repeatable results.) Note how we can // pause the simulation by simply not telling the Simulator to // advance. if (!gPaused) { gSimulator->simulate(dt); } // 5d. Clear the OpenGL color and depth buffers, and position/orient // the camera before drawing the Entities. In this application we // simply set it to the same position/orientation each frame. glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glLoadIdentity(); float camPos[3] = {0, 5, 40}; glTranslatef(-camPos[0], -camPos[1], -camPos[2]); glRotatef(10, 1, 0, 0); // 5e. Redraw the updated Entities using the latest // positions and orientations of the Solids. std::vector<opalSamples::Entity*>::iterator iter; for (iter = gEntities.begin(); iter != gEntities.end(); ++iter) { (*iter)->draw(); } // 5f. Do OpenGL swap buffers (via SDL). SDL_GL_SwapBuffers(); } // 6. Destroy the Entities. while (!gEntities.empty()) { delete gEntities.back(); gEntities.pop_back(); } // 7. Destroy the Simulator. This will automatically destroy everything // contained within the Simulator. gSimulator->destroy(); return 0; } void setupWindow() { // Setup SDL. unsigned int windowWidth = 800; unsigned int windowHeight = 600; float aspectRatio = (float)windowWidth / (float)windowHeight; if (SDL_Init(SDL_INIT_VIDEO) < 0) { std::cerr << "SDL initialization failed: " << SDL_GetError() << std::endl; SDL_Quit(); return; } // Enable double buffering. SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); SDL_Surface *SDLSurface = SDL_SetVideoMode(windowWidth, windowHeight, 0, SDL_OPENGL|SDL_RESIZABLE); if (NULL == SDLSurface) { fprintf(stderr, "Video mode initialization failed: %s\n", SDL_GetError()); SDL_Quit(); return; } // Set key repeat rate (initial delay and interval between repeats, // both in milliseconds). SDL_EnableKeyRepeat(50, 50); // Setup OpenGL. glClearColor(0.9f, 0.9f, 0.8f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glColor3f(0.0f, 0.0f, 0.0f); glViewport(0, 0, windowWidth, windowHeight); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(40.0f, aspectRatio, 1, 5000.0f); glMatrixMode(GL_MODELVIEW); glEnable(GL_DEPTH_TEST); // Don't draw the back of faces. glCullFace(GL_BACK); glEnable(GL_CULL_FACE); glEnable(GL_NORMALIZE); // Don't light the back of faces. glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, 0); glEnable(GL_LIGHTING); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Create a light source. GLfloat ambient[] = {0.5f, 0.5f, 0.3f, 1.0f}; GLfloat diffuse[] = {0.9f, 0.9f, 0.9f, 1.0f}; GLfloat specular[] = {1.0f, 1.0f, 1.0f, 1.0f}; GLfloat light_position[] = {-50, 10, 50, 0.0f}; glEnable(GL_LIGHT0); glLightfv(GL_LIGHT0, GL_AMBIENT, ambient); glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse); glLightfv(GL_LIGHT0, GL_SPECULAR, specular); glLightfv(GL_LIGHT0, GL_POSITION, light_position); } void destroyWindow() { if(SDL_WasInit(SDL_INIT_VIDEO)) { SDL_Quit(); } } bool processInput() { bool quit = false; SDL_Event event; // Wandle events until the SDL event queue is empty. while (SDL_PollEvent(&event)) { switch(event.type) { case SDL_KEYDOWN: { switch(event.key.keysym.sym) { case SDLK_ESCAPE: quit = true; break; case SDLK_q: quit = true; break; case SDLK_p: // Pauses the simulation. gPaused = !gPaused; break; case SDLK_SPACE: createRandomObject(); break; default: break; } break; } case SDL_QUIT: { quit = true; break; } default: break; } } return quit; } void createRandomObject() { // Create a new Solid. opal::Solid* solid = gSimulator->createSolid(); opalSamples::Entity* entity = NULL; // Choose a random initial position. opal::real xMax = (opal::real)0.5 * gGroundDimensions[0]; opal::real zMax = (opal::real)0.5 * gGroundDimensions[2]; opal::Point3r pos(randomRealUniform(-xMax, xMax), 15, randomRealUniform(-zMax, zMax)); solid->setPosition(pos); // Choose a random type of object. unsigned int numObjectTypes = 3; int objectType = (int)(numObjectTypes * rand() / (RAND_MAX + 1.0)); // Add Shapes to the Solid and attach an Entity. The Shapes and // visual representation depend on the object type. switch(objectType) { case 0: { // Simple box. opal::BoxShapeData boxShape; boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, (opal::real)5); boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, (opal::real)5); boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, (opal::real)5); solid->addShape(boxShape); entity = new opalSamples::BoxEntity(); ((opalSamples::BoxEntity*)entity)->setDimensions( boxShape.dimensions); entity->attachToSolid(solid); break; } case 1: { // Simple sphere. // TODO opal::BoxShapeData boxShape; boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, (opal::real)5); boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, (opal::real)5); boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, (opal::real)5); solid->addShape(boxShape); entity = new opalSamples::BoxEntity(); ((opalSamples::BoxEntity*)entity)->setDimensions( boxShape.dimensions); entity->attachToSolid(solid); break; } case 2: { // Simple capsule. // TODO opal::BoxShapeData boxShape; boxShape.dimensions[0] = randomRealUniform((opal::real)0.5, (opal::real)5); boxShape.dimensions[1] = randomRealUniform((opal::real)0.5, (opal::real)5); boxShape.dimensions[2] = randomRealUniform((opal::real)0.5, (opal::real)5); solid->addShape(boxShape); entity = new opalSamples::BoxEntity(); ((opalSamples::BoxEntity*)entity)->setDimensions( boxShape.dimensions); entity->attachToSolid(solid); break; } default: assert(false); } // Add the new Entity to the global list so it can get drawn. gEntities.push_back(entity); } opal::real randomRealUniform(opal::real min, opal::real max) { return (opal::real)rand() / RAND_MAX * (max - min) + min; } --- NEW FILE: BoxEntity.h --- /************************************************************************* * * * Open Physics Abstraction Layer * * Copyright (C) 2004-2005 * * Alan Fischer ala...@gm... * * Andres Reinot an...@re... * * Tyler Streeter tyl...@gm... * * All rights reserved. * * Web: opal.sourceforge.net * * * * This library is free software; you can redistribute it and/or * * modify it under the terms of EITHER: * * (1) The GNU Lesser General Public License as published by the Free * * Software Foundation; either version 2.1 of the License, or (at * * your option) any later version. The text of the GNU Lesser * * General Public License is included with this library in the * * file license-LGPL.txt. * * (2) The BSD-style license that is included with this library in * * the file license-BSD.txt. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files * * license-LGPL.txt and license-BSD.txt for more details. * * * *************************************************************************/ #ifndef OPAL_SAMPLES_BOX_ENTITY_H #define OPAL_SAMPLES_BOX_ENTITY_H #include "Entity.h" namespace opalSamples { /// A drawable box object that can be attached to an OPAL Solid. class BoxEntity : public Entity { public: BoxEntity() { mDimensions.set(1, 1, 1); } virtual ~BoxEntity() {} void setDimensions(const opal::Vec3r& dim) { mDimensions = dim; } virtual void drawGeometry() { opal::real halfx = (opal::real)0.5 * mDimensions[0]; opal::real halfy = (opal::real)0.5 * mDimensions[1]; opal::real halfz = (opal::real)0.5 * mDimensions[2]; glBegin(GL_QUADS); // Left side. glNormal3f(-1, 0, 0); glVertex3f(-halfx, -halfy, halfz); glVertex3f(-halfx, halfy, halfz); glVertex3f(-halfx, halfy, -halfz); glVertex3f(-halfx, -halfy, -halfz); // Back side. glNormal3f(0, 0, -1); glVertex3f(-halfx, -halfy, -halfz); glVertex3f(-halfx, halfy, -halfz); glVertex3f(halfx, halfy, -halfz); glVertex3f(halfx, -halfy, -halfz); // Right side. glNormal3f(1, 0, 0); glVertex3f(halfx, -halfy, -halfz); glVertex3f(halfx, halfy, -halfz); glVertex3f(halfx, halfy, halfz); glVertex3f(halfx, -halfy, halfz); // Front side. glNormal3f(0, 0, 1); glVertex3f(halfx, -halfy, halfz); glVertex3f(halfx, halfy, halfz); glVertex3f(-halfx, halfy, halfz); glVertex3f(-halfx, -halfy, halfz); // Top side. glNormal3f(0, 1, 0); glVertex3f(halfx, halfy, halfz); glVertex3f(halfx, halfy, -halfz); glVertex3f(-halfx, halfy, -halfz); glVertex3f(-halfx, halfy, halfz); // Bottom side. glNormal3f(0, -1, 0); glVertex3f(-halfx, -halfy, halfz); glVertex3f(-halfx, -halfy, -halfz); glVertex3f(halfx, -halfy, -halfz); glVertex3f(halfx, -halfy, halfz); glEnd(); } protected: /// The visual box's dimensions. opal::Vec3r mDimensions; }; } #endif --- NEW FILE: CapsuleEntity.h --- /************************************************************************* * * * Open Physics Abstraction Layer * * Copyright (C) 2004-2005 * * Alan Fischer ala...@gm... * * Andres Reinot an...@re... * * Tyler Streeter tyl...@gm... * * All rights reserved. * * Web: opal.sourceforge.net * * * * This library is free software; you can redistribute it and/or * * modify it under the terms of EITHER: * * (1) The GNU Lesser General Public License as published by the Free * * Software Foundation; either version 2.1 of the License, or (at * * your option) any later version. The text of the GNU Lesser * * General Public License is included with this library in the * * file license-LGPL.txt. * * (2) The BSD-style license that is included with this library in * * the file license-BSD.txt. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files * * license-LGPL.txt and license-BSD.txt for more details. * * * *************************************************************************/ #ifndef OPAL_SAMPLES_CAPSULE_ENTITY_H #define OPAL_SAMPLES_CAPSULE_ENTITY_H #include "Entity.h" namespace opalSamples { /// A drawable capsule object that can be attached to an OPAL Solid. class CapsuleEntity : public Entity { public: CapsuleEntity() { mRadius = 1; mLength = 2; mQuadric = gluNewQuadric(); } virtual ~CapsuleEntity() { gluDeleteQuadric(mQuadric); } void setDimensions(opal::real radius, opal::real length) { mRadius = radius; mLength = length; } virtual void drawGeometry() { glPushMatrix(); glTranslatef(0.0, 0.0, (opal::real)0.5 * -mLength); gluSphere(mQuadric, mRadius, 20, 20); gluCylinder(mQuadric, mRadius, mRadius, mLength, 20, 20); glTranslatef(0.0, 0.0, mLength); gluSphere(mQuadric, mRadius, 20, 20); glPopMatrix(); } protected: /// The visual capsule's radius. opal::real mRadius; /// The visual capsule's length. opal::real mLength; /// A GLU quadric object used to generate curved meshes. GLUquadricObj* mQuadric; }; } #endif --- NEW FILE: Timer.h --- /************************************************************************* * * * Open Physics Abstraction Layer * * Copyright (C) 2004-2005 * * Alan Fischer ala...@gm... * * Andres Reinot an...@re... * * Tyler Streeter tyl...@gm... * * All rights reserved. * * Web: opal.sourceforge.net * * * * This library is free software; you can redistribute it and/or * * modify it under the terms of EITHER: * * (1) The GNU Lesser General Public License as published by the Free * * Software Foundation; either version 2.1 of the License, or (at * * your option) any later version. The text of the GNU Lesser * * General Public License is included with this library in the * * file license-LGPL.txt. * * (2) The BSD-style license that is included with this library in * * the file license-BSD.txt. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files * * license-LGPL.txt and license-BSD.txt for more details. * * * *************************************************************************/ #ifndef OPAL_SAMPLES_TIMER_H #define OPAL_SAMPLES_TIMER_H #include <sys/timeb.h> namespace opalSamples { /// A simple timer used to measure elapsed time between successive /// calls to its main function. class Timer { public: Timer() { reset(); } /// Resets the timer. void reset() { timeb timeBuffer; ftime(&timeBuffer); lastTime = timeBuffer.time; lastTime += timeBuffer.millitm * 0.001; } /// Returns the amount of elapsed time since the previous call to /// this function (or the last call to 'reset,' if that was more /// recent). double getElapsedSeconds() { timeb timeBuffer; ftime(&timeBuffer); double currentTime = timeBuffer.time; currentTime += timeBuffer.millitm * 0.001; double elapsedSeconds = currentTime - lastTime; lastTime = currentTime; return elapsedSeconds; } private: double lastTime; }; } #endif --- NEW FILE: simple.sln --- Microsoft Visual Studio Solution File, Format Version 8.00 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "simple", "simple.vcproj", "{79955DA4-1E44-4CDB-83D1-C2E2A56DF1A6}" ProjectSection(ProjectDependencies) = postProject EndProjectSection EndProject Global GlobalSection(SolutionConfiguration) = preSolution Debug = Debug Release = Release EndGlobalSection GlobalSection(ProjectConfiguration) = postSolution {79955DA4-1E44-4CDB-83D1-C2E2A56DF1A6}.Debug.ActiveCfg = Debug|Win32 {79955DA4-1E44-4CDB-83D1-C2E2A56DF1A6}.Debug.Build.0 = Debug|Win32 {79955DA4-1E44-4CDB-83D1-C2E2A56DF1A6}.Release.ActiveCfg = Release|Win32 {79955DA4-1E44-4CDB-83D1-C2E2A56DF1A6}.Release.Build.0 = Release|Win32 EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution EndGlobalSection GlobalSection(ExtensibilityAddIns) = postSolution EndGlobalSection EndGlobal --- NEW FILE: SConstruct --- import os sources = Split(""" main.cpp """) # Setup options opts = Options() opts.AddOptions( PathOption('extra_include_path', 'Additional include directory', '.'), PathOption('extra_lib_path', 'Additional lib directory', '.')) env = Environment( ENV = os.environ, LIBS = ['opal-ode', 'OgreMain'], options = opts ) env.Append(CPPPATH = env['extra_include_path'], LIBPATH = env['extra_lib_path']) if env['PLATFORM'] != 'win32': env.Append(CXXFLAGS = ['-DGCC_3_1', '-DEXT_HASH']) # Build the executable. exe = env.Program('playpen', sources) # Install the executable. inst = env.Install('../bin/release', exe) # Tell scons to build and install the executable by default. env.Default(exe) env.Default(inst) --- NEW FILE: simple.vcproj --- <?xml version="1.0" encoding="Windows-1252"?> <VisualStudioProject ProjectType="Visual C++" Version="7.10" Name="simple" ProjectGUID="{79955DA4-1E44-4CDB-83D1-C2E2A56DF1A6}" Keyword="Win32Proj"> <Platforms> <Platform Name="Win32"/> </Platforms> <Configurations> <Configuration Name="Debug|Win32" OutputDirectory="Debug" IntermediateDirectory="Debug" ConfigurationType="1" CharacterSet="2"> <Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" MinimalRebuild="TRUE" BasicRuntimeChecks="3" RuntimeLibrary="3" UsePrecompiledHeader="0" WarningLevel="3" Detect64BitPortabilityProblems="TRUE" DebugInformationFormat="3"/> <Tool Name="VCCustomBuildTool"/> <Tool Name="VCLinkerTool" AdditionalDependencies="opengl32.lib glu32.lib SDL.lib SDLmain.lib opal-ode_d.lib" OutputFile="../bin/Debug/simple.exe" LinkIncremental="2" AdditionalLibraryDirectories="" GenerateDebugInformation="TRUE" ProgramDatabaseFile="$(OutDir)/simple.pdb" SubSystem="1" StackReserveSize="10000000" TargetMachine="1"/> <Tool Name="VCMIDLTool"/> <Tool Name="VCPostBuildEventTool"/> <Tool Name="VCPreBuildEventTool"/> <Tool Name="VCPreLinkEventTool"/> <Tool Name="VCResourceCompilerTool"/> <Tool Name="VCWebServiceProxyGeneratorTool"/> <Tool Name="VCXMLDataGeneratorTool"/> <Tool Name="VCWebDeploymentTool"/> <Tool Name="VCManagedWrapperGeneratorTool"/> <Tool Name="VCAuxiliaryManagedWrapperGeneratorTool"/> </Configuration> <Configuration Name="Release|Win32" OutputDirectory="Release" IntermediateDirectory="Release" ConfigurationType="1" CharacterSet="2"> <Tool Name="VCCLCompilerTool" GlobalOptimizations="TRUE" InlineFunctionExpansion="2" FavorSizeOrSpeed="1" AdditionalIncludeDirectories="" PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" RuntimeLibrary="2" UsePrecompiledHeader="0" WarningLevel="3" Detect64BitPortabilityProblems="TRUE" DebugInformationFormat="3"/> <Tool Name="VCCustomBuildTool"/> <Tool Name="VCLinkerTool" AdditionalDependencies="opengl32.lib glu32.lib SDL.lib SDLmain.lib opal-ode.lib" OutputFile="../bin/Release/simple.exe" LinkIncremental="1" AdditionalLibraryDirectories="" GenerateDebugInformation="TRUE" SubSystem="1" StackReserveSize="10000000" OptimizeReferences="2" EnableCOMDATFolding="2" TargetMachine="1"/> <Tool Name="VCMIDLTool"/> <Tool Name="VCPostBuildEventTool"/> <Tool Name="VCPreBuildEventTool"/> <Tool Name="VCPreLinkEventTool"/> <Tool Name="VCResourceCompilerTool"/> <Tool Name="VCWebServiceProxyGeneratorTool"/> <Tool Name="VCXMLDataGeneratorTool"/> <Tool Name="VCWebDeploymentTool"/> <Tool Name="VCManagedWrapperGeneratorTool"/> <Tool Name="VCAuxiliaryManagedWrapperGeneratorTool"/> </Configuration> </Configurations> <References> </References> <Files> <Filter Name="Source Files" Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> <File RelativePath=".\main.cpp"> </File> </Filter> <Filter Name="Header Files" Filter="h;hpp;hxx;hm;inl;inc;xsd" UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> <File RelativePath=".\BoxEntity.h"> </File> <File RelativePath=".\CapsuleEntity.h"> </File> <File RelativePath=".\Entity.h"> </File> <File RelativePath=".\SphereEntity.h"> </File> <File RelativePath=".\Timer.h"> </File> </Filter> </Files> <Globals> </Globals> </VisualStudioProject> --- NEW FILE: SphereEntity.h --- /************************************************************************* * * * Open Physics Abstraction Layer * * Copyright (C) 2004-2005 * * Alan Fischer ala...@gm... * * Andres Reinot an...@re... * * Tyler Streeter tyl...@gm... * * All rights reserved. * * Web: opal.sourceforge.net * * * * This library is free software; you can redistribute it and/or * * modify it under the terms of EITHER: * * (1) The GNU Lesser General Public License as published by the Free * * Software Foundation; either version 2.1 of the License, or (at * * your option) any later version. The text of the GNU Lesser * * General Public License is included with this library in the * * file license-LGPL.txt. * * (2) The BSD-style license that is included with this library in * * the file license-BSD.txt. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files * * license-LGPL.txt and license-BSD.txt for more details. * * * *************************************************************************/ #ifndef OPAL_SAMPLES_SPHERE_ENTITY_H #define OPAL_SAMPLES_SPHERE_ENTITY_H #include "Entity.h" namespace opalSamples { /// A drawable sphere object that can be attached to an OPAL Solid. class SphereEntity : public Entity { public: SphereEntity() { mRadius = 1; mQuadric = gluNewQuadric(); } virtual ~SphereEntity() { gluDeleteQuadric(mQuadric); } void setRadius(opal::real radius) { mRadius = radius; } virtual void drawGeometry() { gluSphere(mQuadric, mRadius, 20, 20); } protected: /// The visual sphere's radius. opal::real mRadius; /// A GLU quadric object used to generate curved meshes. GLUquadricObj* mQuadric; }; } #endif --- NEW FILE: simple.suo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Entity.h --- /************************************************************************* * * * Open Physics Abstraction Layer * * Copyright (C) 2004-2005 * * Alan Fischer ala...@gm... * * Andres Reinot an...@re... * * Tyler Streeter tyl...@gm... * * All rights reserved. * * Web: opal.sourceforge.net * * * * This library is free software; you can redistribute it and/or * * modify it under the terms of EITHER: * * (1) The GNU Lesser General Public License as published by the Free * * Software Foundation; either version 2.1 of the License, or (at * * your option) any later version. The text of the GNU Lesser * * General Public License is included with this library in the * * file license-LGPL.txt. * * (2) The BSD-style license that is included with this library in * * the file license-BSD.txt. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files * * license-LGPL.txt and license-BSD.txt for more details. * * * *************************************************************************/ #ifndef OPAL_SAMPLES_ENTITY_H #define OPAL_SAMPLES_ENTITY_H //#include <math.h> #include <opal/opal.h> #ifdef WIN32 #include <windows.h> #endif #include <GL/gl.h> #include <GL/glu.h> namespace opalSamples { /// A drawable object that can be attached to an OPAL Solid. class Entity { public: Entity() { mSolid = NULL; mColor[0] = 0.5f; mColor[1] = 0.5f; mColor[2] = 0.5f; mColor[3] = 1.0f; } virtual ~Entity() {} /// Draws the object. Does nothing until after being attached to a /// Solid. virtual void draw() { if (!mSolid) { // Don't do anything if the Entity hasn't been attached // to a Solid yet. return; } // Set the material color for this object. glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, mColor); glPushMatrix(); // Move to the Solids position/orientation. glMultMatrixf(mSolid->getTransform().getData()); // Apply the offset from the Solid's transform. glMultMatrixf(mOffset.getData()); // Draw the actual geometry. drawGeometry(); glPopMatrix(); } /// Attaches the Entity to an OPAL Solid. The offset can be used to /// draw the Entity away from the Solid's center (e.g. when multiple /// Entities are attached to a single Solid, possibly to represent /// multiple physical Shapes). void attachToSolid(opal::Solid* solid, const opal::Matrix44r& offset = opal::Matrix44r()) { mSolid = solid; mOffset = offset; } void setColor(float red, float green, float blue) { mColor[0] = red; mColor[1] = green; mColor[2] = blue; } protected: /// Draws the actual geometry used for the Entity's visual /// representation. virtual void drawGeometry() = 0; private: /// Pointer to the Solid to which this Entity is attached. opal::Solid* mSolid; /// The offset of this Entity from the Solid's base transform. opal::Matrix44r mOffset; /// The Entity's color. float mColor[4]; }; } #endif |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 23:38:20
|
Update of /cvsroot/opal/opal/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7464/samples Modified Files: readme.txt todo.txt Log Message: Added 'simple' sample app. Index: todo.txt =================================================================== RCS file: /cvsroot/opal/opal/samples/todo.txt,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** todo.txt 25 Apr 2005 19:47:40 -0000 1.5 --- todo.txt 24 Jun 2005 23:38:07 -0000 1.6 *************** *** 2,7 **** ================= - * add a 'simple' app that just shows the bare minimum setup - * 'mouse trap arena' app --- 2,5 ---- Index: readme.txt =================================================================== RCS file: /cvsroot/opal/opal/samples/readme.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** readme.txt 2 May 2005 16:40:58 -0000 1.3 --- readme.txt 24 Jun 2005 23:38:07 -0000 1.4 *************** *** 11,14 **** An arena where objects can be created and manipulated. Uses a Raycast Sensor and Spring Motor to allow the user to pick and move any dynamic object in the scene. Click and drag the left mouse button to move objects, arrow or 'wasd' keys to move the camera, 1-9 to create objects, 'r' to reset the scene, 'h' to toggle shadows, and 'l' to toggle a second light source. ! * Uses the Ogre rendering engine (www.ogre3d.org) for graphics. Requires Ogre 1.0.1 or later. \ No newline at end of file --- 11,20 ---- An arena where objects can be created and manipulated. Uses a Raycast Sensor and Spring Motor to allow the user to pick and move any dynamic object in the scene. Click and drag the left mouse button to move objects, arrow or 'wasd' keys to move the camera, 1-9 to create objects, 'r' to reset the scene, 'h' to toggle shadows, and 'l' to toggle a second light source. + Simple** + ------- + An extremely simple example for beginners. ! ! * Uses the Ogre rendering engine (www.ogre3d.org) for graphics. Requires version 1.0.1 or later. ! ! ** Uses SDL (www.libsdl.org) for input handling and window management. Requires version 1.2.7 or later. \ No newline at end of file |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 23:38:17
|
Update of /cvsroot/opal/opal/vc71 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7464/vc71 Modified Files: opal.suo Log Message: Added 'simple' sample app. Index: opal.suo =================================================================== RCS file: /cvsroot/opal/opal/vc71/opal.suo,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 Binary files /tmp/cvsYmcb31 and /tmp/cvsScKlDP differ |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 23:31:57
|
Update of /cvsroot/opal/opal/samples/simple In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4242/simple Log Message: Directory /cvsroot/opal/opal/samples/simple added to the repository |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 19:05:02
|
Update of /cvsroot/opal/opal In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29465 Modified Files: SConstruct changelog.txt readme.txt todo.txt win32BinaryReadme.txt Log Message: Removed the OPAL_USE_MESH compile-time flag because it isn't needed. (It was originally intended for IRIX usage because ODE's trimesh support doesn't compile on IRIX with certain versions of the MipsPro compiler. However, the ODE trimesh function calls can still be used without trimeshes compiled into ODE; they just don't do anything.) Index: SConstruct =================================================================== RCS file: /cvsroot/opal/opal/SConstruct,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** SConstruct 24 Jun 2005 17:50:47 -0000 1.11 --- SConstruct 24 Jun 2005 19:04:18 -0000 1.12 *************** *** 72,76 **** opts.AddOptions( BoolOption('debug', 'Build in debug mode', False), - BoolOption('mesh', 'Build with Mesh Shape functionality', True), BoolOption('double', 'Build with reals set to double instead of float', False), PathOption('extra_include_path', 'Additional include directory', '.'), --- 72,75 ---- *************** *** 104,111 **** buildDir = 'build/' + env['PLATFORM'] + '/release' - # Add mesh support if desired. - if env['mesh'] == True: - env.Append(CPPDEFINES = ['OPAL_USE_MESH']) - # Add double floating point precision support if desired. if env['double'] == True: --- 103,106 ---- *************** *** 124,128 **** '\nExample 1 (build debug library with ODE support): scons ODE debug=true' + '\nExample 2 (build with ODE support and install): scons ODE install prefix=/path/to/install/dir' + ! '\nExample 3 (build with ODE support and specify header/lib paths): scons ODE extra_include_path=/path/to/includes extra_lib_path=/path/to/libs' + '\n') --- 119,123 ---- '\nExample 1 (build debug library with ODE support): scons ODE debug=true' + '\nExample 2 (build with ODE support and install): scons ODE install prefix=/path/to/install/dir' + ! '\nExample 3 (build with ODE support and specify header/lib paths): scons ODE extra_include_path=/path/to/include extra_lib_path=/path/to/lib' + '\n') Index: changelog.txt =================================================================== RCS file: /cvsroot/opal/opal/changelog.txt,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** changelog.txt 24 Jun 2005 18:46:27 -0000 1.29 --- changelog.txt 24 Jun 2005 19:04:20 -0000 1.30 *************** *** 15,18 **** --- 15,20 ---- ------------------------------------------ + * 6-24-05: Removed the OPAL_USE_MESH compile-time flag because it isn't needed. (It was originally intended for IRIX usage because ODE's trimesh support doesn't compile on IRIX with certain versions of the MipsPro compiler. However, the ODE trimesh function calls can still be used without trimeshes compiled into ODE; they just don't do anything.) (Tyler Streeter) + * 6-24-05: Fixed bug where collisions between two static Solids (at least one of them using a CollisionEventHandler) caused a crash in an ODE function call. Thanks to EarthquakeProof in the forum for catching this. (Tyler Streeter) Index: todo.txt =================================================================== RCS file: /cvsroot/opal/opal/todo.txt,v retrieving revision 1.82 retrieving revision 1.83 diff -C2 -d -r1.82 -r1.83 *** todo.txt 24 Jun 2005 18:46:28 -0000 1.82 --- todo.txt 24 Jun 2005 19:04:20 -0000 1.83 *************** *** 2,9 **** ================= - * remove OPAL_USE_MESH - - * add simple sample app - * keep track of solids that have moved; allows users to only update visuals when necessary - store a 'isMoving' variable --- 2,5 ---- Index: readme.txt =================================================================== RCS file: /cvsroot/opal/opal/readme.txt,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** readme.txt 24 Jun 2005 17:50:47 -0000 1.41 --- readme.txt 24 Jun 2005 19:04:20 -0000 1.42 *************** *** 41,45 **** You can specify additional include and library paths like this: ! scons ODE extra_include_path=/path/to/includes extra_lib_path=/path/to/libs Finally, to install the OPAL headers and library, do this: --- 41,45 ---- You can specify additional include and library paths like this: ! scons ODE extra_include_path=/path/to/include extra_lib_path=/path/to/lib Finally, to install the OPAL headers and library, do this: Index: win32BinaryReadme.txt =================================================================== RCS file: /cvsroot/opal/opal/win32BinaryReadme.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** win32BinaryReadme.txt 24 Jun 2005 17:50:47 -0000 1.3 --- win32BinaryReadme.txt 24 Jun 2005 19:04:20 -0000 1.4 *************** *** 15,21 **** win32BinaryReadme.txt - you're reading it ! * The OPAL libraries have been built with the following options: double=false ! MESH=true ------------------------------------ --- 15,21 ---- win32BinaryReadme.txt - you're reading it ! * The OPAL debug and release libraries have been built with the following options: double=false ! ------------------------------------ |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 19:04:36
|
Update of /cvsroot/opal/opal/vc71 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29465/vc71 Modified Files: opal-ode.vcproj opal.suo Log Message: Removed the OPAL_USE_MESH compile-time flag because it isn't needed. (It was originally intended for IRIX usage because ODE's trimesh support doesn't compile on IRIX with certain versions of the MipsPro compiler. However, the ODE trimesh function calls can still be used without trimeshes compiled into ODE; they just don't do anything.) Index: opal-ode.vcproj =================================================================== RCS file: /cvsroot/opal/opal/vc71/opal-ode.vcproj,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** opal-ode.vcproj 24 Jun 2005 17:50:48 -0000 1.4 --- opal-ode.vcproj 24 Jun 2005 19:04:23 -0000 1.5 *************** *** 26,30 **** FavorSizeOrSpeed="0" AdditionalIncludeDirectories="" ! PreprocessorDefinitions="WIN32;_DEBUG;_LIB;OPAL_DLL_EXPORTING;OPAL_USE_MESH" MinimalRebuild="TRUE" BasicRuntimeChecks="0" --- 26,30 ---- FavorSizeOrSpeed="0" AdditionalIncludeDirectories="" ! PreprocessorDefinitions="WIN32;_DEBUG;_LIB;OPAL_DLL_EXPORTING" MinimalRebuild="TRUE" BasicRuntimeChecks="0" *************** *** 76,80 **** FavorSizeOrSpeed="1" AdditionalIncludeDirectories="" ! PreprocessorDefinitions="WIN32;NDEBUG;_LIB;OPAL_DLL_EXPORTING;OPAL_USE_MESH" RuntimeLibrary="2" UsePrecompiledHeader="0" --- 76,80 ---- FavorSizeOrSpeed="1" AdditionalIncludeDirectories="" ! PreprocessorDefinitions="WIN32;NDEBUG;_LIB;OPAL_DLL_EXPORTING" RuntimeLibrary="2" UsePrecompiledHeader="0" Index: opal.suo =================================================================== RCS file: /cvsroot/opal/opal/vc71/opal.suo,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 Binary files /tmp/cvsD3Y2Zg and /tmp/cvsDH6Qyn differ |
|
From: tylerstreeter <tyl...@us...> - 2005-06-24 19:04:32
|
Update of /cvsroot/opal/opal/src/ODE In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29465/src/ODE Modified Files: ODESolid.cpp ODESolid.h Log Message: Removed the OPAL_USE_MESH compile-time flag because it isn't needed. (It was originally intended for IRIX usage because ODE's trimesh support doesn't compile on IRIX with certain versions of the MipsPro compiler. However, the ODE trimesh function calls can still be used without trimeshes compiled into ODE; they just don't do anything.) Index: ODESolid.h =================================================================== RCS file: /cvsroot/opal/opal/src/ODE/ODESolid.h,v retrieving revision 1.69 retrieving revision 1.70 diff -C2 -d -r1.69 -r1.70 *** ODESolid.h 12 Apr 2005 06:46:45 -0000 1.69 --- ODESolid.h 24 Jun 2005 19:04:22 -0000 1.70 *************** *** 47,53 **** spaceID = 0; transformID = 0; - #ifdef OPAL_USE_MESH trimeshDataID = 0; - #endif } --- 47,51 ---- *************** *** 57,63 **** dSpaceID spaceID; dGeomID transformID; - #ifdef OPAL_USE_MESH dTriMeshDataID trimeshDataID; // only used for Solids with trimeshes - #endif }; --- 55,59 ---- Index: ODESolid.cpp =================================================================== RCS file: /cvsroot/opal/opal/src/ODE/ODESolid.cpp,v retrieving revision 1.87 retrieving revision 1.88 diff -C2 -d -r1.87 -r1.88 *** ODESolid.cpp 4 Jun 2005 17:16:27 -0000 1.87 --- ODESolid.cpp 24 Jun 2005 19:04:22 -0000 1.88 *************** *** 85,89 **** } - #ifdef OPAL_USE_MESH if (0 != mGeomDataList[i]->trimeshDataID) { --- 85,88 ---- *************** *** 93,97 **** dGeomTriMeshDataDestroy(mGeomDataList[i]->trimeshDataID); } - #endif // Destroy the ODE geom. --- 92,95 ---- *************** *** 506,512 **** dGeomID newTransformID = NULL; - #ifdef OPAL_USE_MESH dTriMeshDataID newTrimeshDataID = NULL; - #endif dSpaceID spaceID = NULL; --- 504,508 ---- *************** *** 613,617 **** // break; //} - #ifdef OPAL_USE_MESH case MESH_SHAPE: { --- 609,612 ---- *************** *** 656,660 **** break; } - #endif default: assert(false); --- 651,654 ---- *************** *** 673,680 **** newGeomData->transformID = newTransformID; newGeomData->spaceID = mSpaceID; - - #ifdef OPAL_USE_MESH newGeomData->trimeshDataID = newTrimeshDataID; - #endif // Setup the geom. --- 667,671 ---- |