From: Matthias B. <ba...@ir...> - 2004-06-27 14:31:15
|
Hi, I've brought my files into a state that makes them ready to be checked in. Here's what I did: - The main Pyrex file "ode.pyx" is split into into several parts: body.pyx - Contains the Body class contact.pyx - Contains the Contact class declarations.pyx - Contains all external declarations (mainly the stuff from ode.h. Hopefully, there will be a time some day when this file can be generated automatically). geoms.pyx - Contains all geom classes joints.pyx - Contains all joint classes and the JointGroup class mass.pyx - Contains the Mass class ode.pyx - Main file. All the other files are included here. All constants and functions are still in this file space.pyx - Contains the Space class and the C part of the collision callback world.pyx - Contains the World class - The German comments are removed or translated (I hope I got them all) - The geoms and joints have been restructured so that geoms and joints have a common base class now (this wasn't possible in earlier versions of Pyrex). The base classes are GeomObject and Joint. - I've added Bernie's modifications (by the way, you have added setData()/getData() to the sphere geom. In Python the setData()/getData() aren't necessary as you can add arbitrary data as new attributes to the objects. So instead of geom.setData(spam) you can do geom.spam = spam on any geom object) - The World object now contains the quickStep stuff. - The setup script determines ODE's precision setting automatically by reading the user-settings file and create a file "_precision.pyx" that contains the declaration of "dReal" (which has to be either float or double). This generated file is included in declarations.pyx. - Sporadically I added some doc strings or error checks. Everything compiles fine here on Windows using the latest binaries from the ODE site (I didn't bother to recompile ODE myself). I've tried both, SINGLE and DOUBLE precision and both works fine. So I'd say the files can be checked in and then we can all work on the same repository. Now how should we organize the cvs repository? Currently I have a main directory where the setup script is and a subdirectory "src" where the .pyx files are. My tutorial source files (which serve as a "regression test" right now) are in a subdirectory "examples". So shall I commit everything into a new top level directory "pyode2" or would you rather like to reuse the current pyode directory? By the way, what license are we using? GPL? BSD? Or both (as ODE is doing)? - Matthias - |