DIMPLE development logs

branch: master


Commit: 6a5ac7a261087a368ef7a52aaf8edc1acfb5f548
Author: Stephen Sinclair
Date: Tue Jan 19 13:07:04 2010 -0500

Exiting on the '?' command-line option causes problems for executing OS X app bundle.


Commit: 320ab56f89113468ca4a719d945fc0f8f1caeb34
Author: Stephen Sinclair
Date: Mon Jan 18 17:21:42 2010 -0500

Update operating system / device support in readme.


Commit: c908c270a0538c0beb5582e7aebe5808bf31251b
Author: Stephen Sinclair
Date: Mon Jan 18 17:17:45 2010 -0500

Move the DIMPLE logo to the top of the readme.


Commit: 280e919a82775b8ad145a2afec14facb9c0aebc5
Author: Stephen Sinclair
Date: Mon Jan 18 17:15:05 2010 -0500

Missed a reference to SCons in the readme.


Commit: 4e642f2d325fa18fc689d6fe175a0f0cd0794f23
Author: Stephen Sinclair
Date: Mon Jan 18 16:43:06 2010 -0500

Add some documentation for the “free” constraint.


Commit: 33e08d30a8af60aa85e92db799fd0ba585a92e20
Author: Stephen Sinclair
Date: Mon Jan 18 15:28:40 2010 -0500

Add a “free” constraint that can be used to create springs between objects.


Commit: 2fff4e48ac4273feb6cc22b2e2a9847823241501
Author: Stephen Sinclair
Date: Mon Jan 18 13:47:36 2010 -0500

Remove mentions in docs, bootstrapping, and emacs compile commands for SCons.


Commit: c096dfdc4a84fc372c4133059d336e5e037dbf4e
Author: Stephen Sinclair
Date: Fri Nov 20 13:35:02 2009 -0500

Convert README file to markdown.


Commit: 8bf00c8ce2525b4c6b2133e23b122b53f1e5f3f6
Author: Stephen Sinclair
Date: Fri Jul 10 14:29:08 2009 -0400

bootstrap: Update url for CHAI 3D download according to their new website.


Commit: 712e1db0d554b55a7a456c0c6e607fe832aca3b9
Author: Stephen Sinclair
Date: Wed Apr 15 16:12:15 2009 -0400

Provide a configure option for use of internal message queues, default=yes.


Commit: 2fb3e25dc4d76c7516d48ed97b061431ab8e036b
Author: Stephen Sinclair
Date: Wed Apr 15 12:49:42 2009 -0400

Add a command-line option for message queue size.


Commit: c99ff3683a1b0056e0476aa120a71b63781ef0bd
Author: Stephen Sinclair
Date: Wed Apr 15 12:36:07 2009 -0400

Add a configure option for the default message queue size.


Commit: fbd7d8940f20fe6dbcc3c0821068b737a01bc3ce
Merge: 5fffe6e… 23a9d54… Author: Stephen Sinclair
Date: Wed Apr 15 17:26:39 2009 -0400

Merge branch 'queue'

Conflicts:

src/SConstruct

Commit: 23a9d5499f1006abe815dd7a673794182ca271d7
Author: Stephen Sinclair
Date: Wed Apr 15 12:08:19 2009 -0400

Remove patches for older versions of LibLo.


Commit: c127fdbc9cb0c64b75a47bccf9689c90cf1989d4
Author: Stephen Sinclair
Date: Wed Apr 15 14:53:26 2009 -0400

Update to LibLo release 0.26.

This is needed for lo_server_dispatch_data(). No more need for mingw liblo patch.


Commit: 5fffe6e986ec55d73fb87422e42294bb237faa09
Author: Stephen Sinclair
Date: Wed Apr 15 11:49:58 2009 -0400

Fix the test for debug configure option.


Commit: ae13f2fdb5f76cfb6fe1176d002df0e5d24b384f
Merge: ee59dd3… c762fde… Author: Stephen Sinclair
Date: Wed Apr 15 11:40:40 2009 -0400

Merge branch 'getopt'


Commit: c762fde0ba10c1cc7d51f004442f8c0e15fd4856
Author: Stephen Sinclair
Date: Wed Apr 15 11:40:18 2009 -0400

Check for getopt_long in configure.


Commit: bf6b44a0eae92208333620e7ca88e68527d8315c
Merge: 6519e89… dc797f6… Author: Stephen Sinclair
Date: Wed Apr 15 11:35:18 2009 -0400

Merge branch 'autotools' into getopt


Commit: ee59dd369b5656c8d003865052f9d7cb01792102
Merge: 36d32c2… dc797f6… Author: Stephen Sinclair
Date: Wed Apr 15 11:32:38 2009 -0400

Merge branch 'autotools'


Commit: dc797f64b96ecaab8da3c0622026cba2ae797f92
Author: Stephen Sinclair
Date: Wed Apr 15 11:31:47 2009 -0400

Remove the release making script which no longer applies to autotools and git.


Commit: 695f4319ebac82ff5925a6d8225c9cd7a8a17612
Author: Stephen Sinclair
Date: Wed Apr 15 11:21:11 2009 -0400

For freeglut features, include freeglut.h instead of freeglut_ext.h.


Commit: 3c58c32313c04cbdd04f862f44efd169bd88c4aa
Author: Stephen Sinclair
Date: Wed Apr 15 11:23:16 2009 -0400

Change the build system to autotools.

Building now requires running autogen.sh, or configure for compiling from source tarballs.


Commit: 36d32c2e1cc1de43a0fda9caa637a1d6f9c46421
Author: Stephen Sinclair
Date: Tue Apr 14 21:25:50 2009 -0400

Fix compilation error with Windows/MSYS.

Apparently in something related COM interfaces one of the headers defines the word “interface” as a preprocessor macro. This just undefs it, because I like to be able to use words.


Commit: 6519e898fa1286dac69ef7382a784805148fb6a4
Author: Stephen Sinclair
Date: Tue Apr 14 02:34:48 2009 -0400

Add a command-line option for the sending OSC address, using getopt.


Commit: 95000f6ea8031df1fb02530ff2428cb6f02a03fc
Author: Stephen Sinclair
Date: Tue Apr 14 01:58:37 2009 -0400

Make time intervals and destination host/port into run-time parameters instead of preprocessor constants.


Commit: d7d9d3e84581a5adb45937a97c93b53ad6d09729
Author: Stephen Sinclair
Date: Tue Apr 14 01:50:48 2009 -0400

Remove unused legacy structures and global data from dimple.h, including thread IDs.

This modifies any setSetCallback function calls since thread IDs are no longer specfiied.


Commit: 5368859eedc4d6d8f59043a08a47f386f1a91f88
Author: Stephen Sinclair
Date: Sun Apr 12 16:50:59 2009 -0400

Add implementation code for LoQueue and enable it in Simulation.


Commit: bedee1404564c3ed9daa66e66317d7142731fd78
Author: Stephen Sinclair
Date: Sun Apr 12 13:32:04 2009 -0400

Reconnect body when a fixed constraint is destroyed.


Commit: 319853763af8a8e1920c3f19526165c68ce55f8f
Author: Stephen Sinclair
Date: Sat Apr 11 18:11:33 2009 -0400

Add a LoQueue class for sending & receiving OSC messages over lock-free circular buffer.

The functionality is not yet implemented.


Commit: d73d5e69642c5e84f69be124fb5fa5ca1eefd02d
Author: Stephen Sinclair
Date: Sat Apr 11 17:49:40 2009 -0400

Add a FIFO queue to each SimulationInfo.


Commit: f49cd2fc18384b708b0db71aedb830c23524e89d
Author: Stephen Sinclair
Date: Thu Apr 9 22:07:29 2009 -0400

Remove Visual Studio-related files.


Commit: d8fbaa921bc1f8eadfd2e04e7b77a2f4b3ff0211
Author: Stephen Sinclair
Date: Thu Apr 9 21:59:00 2009 -0400

Remove vast amounts of old pre-0.0.7 code that is no longer in use.


Commit: 48436af6d236b8b87e2732539614e8d9706985de
Author: Stephen Sinclair
Date: Thu Apr 9 20:30:08 2009 -0400

Change ODEConstraint from a base class to a specialization class.

This commit is like 75aedc but for ODEConstraint. Removes some conditions that were needed during transition.


Commit: 962070ea4b128a28bfa32a61fe5fca60d2329f7c
Author: Stephen Sinclair
Date: Wed Apr 8 14:35:23 2009 -0400

Change ODEObject from a base class to a specialization class.

This commit is like 75aedc but for ODEObject.


Commit: 75aedc9daea324351ab548e83c0e551ebe7456ab
Author: Stephen Sinclair
Date: Wed Apr 8 01:29:39 2009 -0400

Instead of CHAIObject being a base class, it is now a “specialization” member of OscObject.

This works around problems with multiple inheritence, using the OscValue's set-callback to provide overriding behaviour. It allows CHAIObject to take over more of the CHAI-specific operations that are general to all object types. One setback is that material-related functionality cannot be taken care of this way because m_material is not part of CHAI's cGenericObject class—hopefully this can be resolved in a future version of CHAI.

In any case, previously the CHAIObject class was next to useless, merely a container for shared data, due to the impossibility of using C++ multiple inheritence to override certain behaviour specific to all CHAI objects. This lead to duplicated code. Now instead of inheriting from CHAIObject, we are “assigning a specialization” to an OscObject, and the CHAIObject constructor overrides certain OscValue handlers by setting their callback.


Commit: a0a6dbaa3289e7ae7f677bb22f6becab5ce64270
Author: Stephen Sinclair
Date: Sun Apr 5 21:17:27 2009 -0400

Consolidate initial prism size setting to OscPrism constructor.

This also fixes the same bug as mentioned in 64a049, but for prisms.


Commit: 212c209c9dba621281cd837f5d17bb2c68dfae86
Author: Stephen Sinclair
Date: Sun Apr 5 20:53:59 2009 -0400

A small Pd patch to create a Z-axis virtual wall servo using the cursor's /position and /force.


Commit: ac5a0f04da7a0431fee7537e2f84d1665123b4e4
Author: Stephen Sinclair
Date: Sun Apr 5 20:52:13 2009 -0400

Make OscCursorCHAI respond to the /force message by applying a constant force for a limited time.

This allows programming haptic servoloops!


Commit: d8c6f60f5778e8068706339bf833e9cca405920b
Author: Stephen Sinclair
Date: Sun Apr 5 19:38:26 2009 -0400

Add an OscCursorInterface class that knows to forward cursor messages to the haptics thread.


Commit: 64a04919586d56379c6ef2d8f6b5d928c543dfc6
Author: Stephen Sinclair
Date: Sun Apr 5 18:28:15 2009 -0400

Consolidate initial sphere radius setting to OscSphere constructor.

This also fixes a crashing issue where m_radius was not initialized properly at startup, so that setting mass triggered an ODE assertion.


Commit: 7251fc83e913d119010a7e4cdca6c0904e9740a3
Author: Stephen Sinclair
Date: Sun Apr 5 17:31:17 2009 -0400

Remove left-over global instance of ValueTimer, fixing a crashing issue when objects are destroyed.


Commit: b4b0afb920cf713b75bd23b1fbac044a2d22978a
Author: Stephen Sinclair
Date: Sun Mar 29 16:28:45 2009 -0400

Update chai3d patch so that compiling doesn't depend on _DISABLE_LIBNIFALCON_DEVICE being set correctly.


Commit: ee5cc09bdc23fafecd1f9e9f07abd7ed9a8d21d1
Author: Stephen Sinclair
Date: Sat Mar 28 17:44:20 2009 -0400

Update the documentation with info on new constraint parameters, new springs, and a link on how to set rotation.


Commit: ff99a3ac62b5b751a9df05d8503b18ca6912619f
Author: Stephen Sinclair
Date: Sat Mar 28 17:02:18 2009 -0400

By default, make objects two orders of magnitude heavier.

Currently all objects bounce away from the haptic device at insane speeds as soon as you touch them, unless their mass is set explicitly. This patch changes the default density to 100, making objects of “normal” size respond to the haptic controller in an expected way. Note however that it will require changes in code that uses DIMPLE to expect the new default weight (in terms of applied forces and spring constants, for example), unless that code was already explicitly setting object mass or density.


Commit: bb31f2a1d93a93b523da7f7d4094d7f75f8a5f70
Author: Stephen Sinclair
Date: Sat Mar 28 16:53:41 2009 -0400

Try compiling chai3d twice, since sometimes it fails the first time, but then succeeds.


Commit: ab8d699d8d1d5bfa6a0a79284de4376ef8de52bb
Author: Stephen Sinclair
Date: Sat Mar 28 16:37:45 2009 -0400

Update the CHAI 3D patch.

Latest fixes, now the same patch for darwin and linux. Includes support for libnifalcon if it is found through pkg-config.


Commit: 0499b04bc2fa1ed655d8d656c0c89020c4953aed
Author: Stephen Sinclair
Date: Sat Mar 28 15:06:59 2009 -0400

Update reported torque and force variables for all joint types that support it.


Commit: e5ae046984f18940c50f72e5866fa143a5378956
Author: Stephen Sinclair
Date: Sat Mar 28 15:00:25 2009 -0400

Fix two other instances of calling .set when not intending to trigger callback.


Commit: 4e17706aae23e23750c5a73daff83ea666035eb6
Author: Stephen Sinclair
Date: Sat Mar 28 14:52:43 2009 -0400

In response to /push, m_force.set() was being called, so the force was being effectively applied twice.


Commit: d58ea2eac0141499ba56875a9f515c2ed28dee21
Author: Stephen Sinclair
Date: Sat Mar 28 14:52:16 2009 -0400

Make sure haptics loop is “self-timed” only when libnifalcon is in use.


Commit: 55550afa5d2f53cf9031c3bc3afba74f00846d3f
Author: Stephen Sinclair
Date: Sat Mar 28 13:40:58 2009 -0400

Remove IP address from test.pd.


Commit: c93b5df543a0f23586b3f7df8d27742351fec359
Merge: a454bf4… 818b574… Author: Stephen Sinclair
Date: Fri Mar 27 21:35:25 2009 -0400

Merge branch 'nif'


Commit: a454bf408fe3c39634f8aa62a02d685db4d994f1
Author: Stephen Sinclair
Date: Fri Mar 27 20:59:01 2009 -0400

Allow velocity and acceleration of objects to be set directly.


Commit: ddcccdf84fed1bd1b87bc23d17eddd3405b07898
Author: Stephen Sinclair
Date: Fri Mar 27 19:53:58 2009 -0400

Allow setting the position and rotation of objects in the PhysicsSim.

Changes from using dBodySetPosition to dGeomSetPosition, since the ODE manual states that setting the geom's position also sets the body's position.


Commit: afb7f66b79683079192dd2834950fb1a91af10c1
Author: Stephen Sinclair
Date: Thu Mar 26 21:57:22 2009 -0400

Add a stress test for a grid of a large number of spheres.


Commit: d599581a2faccd7e50f0e406e69037776869507a
Author: Stephen Sinclair
Date: Thu Mar 26 21:19:50 2009 -0400

Make OscHinge2Interface and OscUniversalInterface destroy their OscResponse instances.


Commit: 673078f2fc683d4ef33614ff7b37979e117da096
Author: Stephen Sinclair
Date: Thu Mar 26 21:17:58 2009 -0400

Add a spring to the universal.sh test.


Commit: 2d4f0bb71675476703da0f3c7297eb7342decf46
Author: Stephen Sinclair
Date: Thu Mar 26 21:11:08 2009 -0400

Give the piston constraint a response.

Works in the linear axis only – ODE doesn't provide torque for piston.


Commit: 497f5aee8dac491312c986e2169448cfe55fcccd
Author: Stephen Sinclair
Date: Thu Mar 26 19:37:07 2009 -0400

Add setting of forces and torques for all joints that support it.


Commit: 3a0b0551204a283885318adcc311c101150d7d87
Author: Stephen Sinclair
Date: Thu Mar 26 19:36:34 2009 -0400

Make OscSlideInterface destructor delete its response instance.


Commit: f467a9f3f1e439d70bcb3db2ff2b971fe6d20eac
Author: Stephen Sinclair
Date: Thu Mar 26 18:49:07 2009 -0400

Switch LICENSE to the GPL.

Just noticed this, it was *mistakenly* the LGPL instead of GPL. This must have gotten mixed up in the past somehow during work on another project.


Commit: 6f32de8a1dbc6a05cca2c3170d169601f7ebebe0
Author: Stephen Sinclair
Date: Thu Mar 26 18:10:22 2009 -0400

Add git-issues to the project for bug tracking.


Commit: 818b57428d94fead374803c23d1fc7eaaa42676b
Author: Stephen Sinclair
Date: Wed Mar 25 15:10:49 2009 -0400

Simplify the check for libnifalcon and its dependencies by using pkg-config.


Commit: 0a11edf1ff863e902bf5a09cb3ab3bcffce637a2
Merge: 2a559e9… 3fed4af… Author: Stephen Sinclair
Date: Wed Mar 25 14:37:31 2009 -0400

Merge branch 'master' into nif


Commit: 3fed4af166e8ee63c0df99ec1bfae8de037061a7
Author: Stephen Sinclair
Date: Tue Mar 24 20:24:25 2009 -0400

Remove the BUGS file.

It's always out of date and not really a good way of tracking bugs.


Commit: e4b78d131770c38f8a474903e2789486765075c9
Author: Stephen Sinclair
Date: Tue Mar 24 20:23:52 2009 -0400

Document the /rotation message.


Commit: 2a559e9aef33e5f184a8c3ea53b15ae68c950af1
Author: Stephen Sinclair
Date: Wed Mar 18 12:42:56 2009 -0400

Allow a Simulation to specify that it should be able to sleep in step() instead of being self-timed in run().

When using libnifalcon, this driver imposes its own timing by sleeping in the IO callback. This works differently than other drivers. In the case where such a call imposes its own sleep, we need to eliminate the sleep provided by Simulation::run(), otherwise the simulation runs at half pace.


Commit: 43906848ea8eba508326d57c20fbd4ec7a828c6d
Author: Stephen Sinclair
Date: Tue Mar 17 21:56:24 2009 -0400

Add a spring response for the slide constraint.


Commit: a352c08b24a0d95e20f870b35c3388ae00f3e78c
Author: Stephen Sinclair
Date: Mon Mar 16 20:54:50 2009 -0400

Link to a locally-installed libnifalcon if available.


Commit: 3bfafbe3bde922faa3467603501a40bd3dc025df
Author: Stephen Sinclair
Date: Tue Mar 17 20:45:01 2009 -0400

Format startup message with proper date and spacing.


Commit: 6aa1dbc788d83e04abfd175df875cbcba30232cc
Author: Stephen Sinclair
Date: Wed Mar 4 14:27:11 2009 -0500

Fix the therasphere.ck example to use proper density for haptic interaction.


Commit: ae8423b05562c3e0de64fe4ac4e09b81a342b0c9
Author: Stephen Sinclair
Date: Wed Mar 4 12:11:46 2009 -0500

Add a ChucK example.


Commit: d758bcf4a4c328a5ec8514cd8b7376e655d2586c
Author: Stephen Sinclair
Date: Sat Feb 28 18:30:42 2009 -0500

Update the messages.txt documentation for the latest version.


Commit: fe7aa0c33462c27c6d060acebb63a2878248dd92
Author: Stephen Sinclair
Date: Sat Feb 28 17:54:22 2009 -0500

Add the messages.txt documentation file from the previous release that was missing in the repo.


Commit: 56b60e2588734a58420ad89cf4f0623619aada87
Author: Stephen Sinclair
Date: Sat Feb 28 17:37:51 2009 -0500

Update README with the latest information.


Commit: 487681f929eab4c353306f92495ac3345ad1bb21
Author: Stephen Sinclair
Date: Sat Feb 28 16:57:23 2009 -0500

Fix bad detection of -0 minor version in version.sh.


Commit: 9f8c738001e82613efe4e26e638781f222954b4e
Author: Stephen Sinclair
Date: Sat Feb 28 16:38:30 2009 -0500

Update darwin CHAI patch to disable cFalconDevice being compiled.


Commit: f85d12ea8279d92199c84951d87942003b174e66
Author: Stephen Sinclair
Date: Fri Feb 27 19:44:39 2009 -0500

Fix mass message in grab.sh and don't bother with collide.


Commit: a1dbd07375cfdb3319f6287bf0fa5f87968f4a39
Author: Stephen Sinclair
Date: Fri Feb 27 19:43:34 2009 -0500

Make grab.sh executable like the other tests.


Commit: 41b5815349c396cca020f45b4ee5a58b1a7a568d
Merge: 5de4fb8… 70b132b… Author: Stephen Sinclair
Date: Fri Feb 27 18:56:11 2009 -0500

Merge branch 'internal_osc'

Now that 'grab' is implemented, the master will finally become the major refactoring that took place in the internal_osc branch.

Some features that still need work, and may constitute regressions at are haptic textures and signal-based vibration. (i.e., DIMPLE as a PureData/Flext object.) These will need to be re-implemented under the new architecture. However these features have not in fact been included in a release version, so I have considered it okay to consider them work-in-progress for the eventual release 0.1.

On the other hand, this long-term branch included work on completely reinventing the class structure within DIMPLE to make it much cleaner. It also implements many more ODE joint types than were previously available in the master branch. The code still needs a good amount of clean-up and pruning of old routines and data structures that are no longer used.

Conflicts:

.gitignore
src/SConstruct
util/version.sh

Commit: 70b132bac1c17075fe62be92d09bed792c337bfa
Author: Stephen Sinclair
Date: Fri Feb 27 17:01:11 2009 -0500

Add a test script for a grabbed object.


Commit: d515cff8dc5d5efccd3e4509350c669614ca7578
Author: Stephen Sinclair
Date: Fri Feb 27 16:52:48 2009 -0500

Ensure the m_pGrabbedObject pointer is set to NULL if the grabbed object is destroyed.

This required making the m_pGrabbedObject a member of Simulation(), which seems okay.


Commit: 8c4825098384ab1a20c2a66e55491ee7b41a559e
Author: Stephen Sinclair
Date: Fri Feb 27 16:27:59 2009 -0500

Add a 'drop' method to all simulations to release the currently grabbed object.


Commit: 8f7a650c48521f0466fd4c58d48c3a4e3d8376cc
Author: Stephen Sinclair
Date: Fri Feb 27 11:04:33 2009 -0500

Track the grabbed object and apply opposing damped spring forces in PhysicsSim and HapticsSim.

The set_grabbed() function is made a virtual function in simulation() since it is common functionality here and we can avoid unnecessary casting.

Still needs work on determining optimal stiffness and damping coefficients both for the physics engine and for the haptic controller. It's complicated because these are a function of the device inertia and the physics object mass.


Commit: 2e1cc63bfaf7c54d0c09d59594ac47e1aa91a6fb
Author: Stephen Sinclair
Date: Thu Feb 26 12:40:14 2009 -0500

test.pd: fix mass of spheres so they aren't so light.


Commit: afddc743003af5123de5f3d4d1b2c9ff6058459f
Author: Stephen Sinclair
Date: Thu Feb 26 12:39:15 2009 -0500

Remove scaling of haptic force when transmitting forces to physics.


Commit: 0ab30bbd67883f75a757c4d4ade0e1595a400758
Author: Stephen Sinclair
Date: Sun Feb 8 16:47:22 2009 -0500

When cursor/mass is set to positive value, the cursor becomes “heavy”

Note: Still working on critical damping. Need to figure out proper way to set 'k' and 'b' parameters here.


Commit: 3a755e5c5628c82161d5eab7adb828c4aa557415
Author: Stephen Sinclair
Date: Sun Feb 8 15:04:47 2009 -0500

Port static and dynamic friction coefficients to new-style parameters.


Commit: c1c759a2fc2b8e78092998f7416611ff78504ca1
Author: Stephen Sinclair
Date: Sat Feb 7 17:43:25 2009 -0500

Upgrade MingW to CHAI 1.62, with updated patches for OleLoadPicture support.


Commit: cde26393d83eaefa4c9937db01919c71470908e2
Author: Stephen Sinclair
Date: Sat Feb 7 17:48:27 2009 -0500

In bootstrap.sh, switch all sourceforge downloads to the 'downloads.sourceforge.net' service.

This chooses a working mirror automatically, so we don't have to deal with mirrors going down.


Commit: 5de4fb88af64d171818f43c6f981b157fdbedeff
Author: Stephen Sinclair
Date: Fri Feb 6 22:19:05 2009 -0500

version.sh script was broken in recent versions of git due to commands losing git- prefix.


Commit: 755fa39c7929a79613d1f8791179b3ea04a86cae
Author: Stephen Sinclair
Date: Mon Feb 2 20:21:54 2009 -0500

Add a pointer to a 'grabbed' object in PhysicsSim.

The grabbed object should be attracted to the cursor location, but the PhysicsSim doesn't have this information.


Commit: 5a10c45a0f590e48a4e57e02e6b74b2524b0f96f
Author: Stephen Sinclair
Date: Mon Feb 2 09:40:41 2009 -0500

Don't add cursor objects to the Simulation world list, so they are cleared on /clear.


Commit: 91dc34237f607a42fbf0b805664dc11cac909a20
Author: Stephen Sinclair
Date: Mon Feb 2 18:16:06 2009 -0500

Make the 'visible' boolean property a true OscValue, supporting /get.

This introduces a new OscValue subclass, OscBoolean.


Commit: adf526db273298ea81fb623df5ba16d37178fdfd
Author: Stephen Sinclair
Date: Sun Feb 1 22:54:13 2009 -0500

Fix the forces used in each test now that density is consistent after sizing objects.


Commit: 528a3755477ca3e5081f545e4b351504b2c9175b
Author: Stephen Sinclair
Date: Sun Feb 1 23:09:56 2009 -0500

Introduce a 'density' value for OscObjects.

This enables resetting the mass of spheres and prisms with a constant density after they are resized and thus fixes the problem of many of the tests requiring very small forces to succeed.

The 'mass' value still sets the total mass of the object, changing its density.

This patch also adds a missing /get handler for mass in InterfaceSim, and makes density also available through InterfaceSim.


Commit: 1fa11f75dd783ac3d082723f1f094eca85398f10
Author: Stephen Sinclair
Date: Sun Feb 1 16:11:13 2009 -0500

In cylinder (mesh) test script, find absolute path of 3DS file.


Commit: 1dfb9fb73c590e98af36fd16d880df0b9c279ff2
Author: Stephen Sinclair
Date: Tue Jan 27 11:13:29 2009 -0500

Encapsulate the CHAI camera in an OscCamera object which can be moved by the user.

Note that it's not currently a subclass of OscObject, since it doesn't share all those properties, but perhaps it could be one day.


Commit: 441fdc45bb8a3b73954fb1fdf69966aa72cd7380
Author: Stephen Sinclair
Date: Mon Jan 26 19:28:48 2009 -0500

Add an InterfaceSim object representing the cursor so it's accessible by the user.


Commit: a33640b17fa4778f197367094d7c76ba61cbb823
Author: Stephen Sinclair
Date: Mon Jan 26 19:06:53 2009 -0500

Forward the /rotation messages from InterfaceSim.

This allows orientation to be set by user.


Commit: c23d84160fd6e0e4bd9d01d2a27b7d8179b92913
Author: Stephen Sinclair
Date: Mon Jan 26 19:05:41 2009 -0500

On loading a mesh, size it to a pre-determined size to ensure it is visible.


Commit: 4749d899eb7cb0d1f36ef7d70c9ea1365646b329
Author: Stephen Sinclair
Date: Mon Jan 26 17:47:41 2009 -0500

In OscMeshCHAI, use scale() function to resize instead of modifying vertices.


Commit: a18c70de2a135b4879853189580a738a1de4ad09
Author: Stephen Sinclair
Date: Mon Jan 26 17:47:16 2009 -0500

Makefile targets are phony.


Commit: fafae5d9ec676057462330d95fccb7da31a9f307
Author: Stephen Sinclair
Date: Mon Jan 26 15:24:33 2009 -0500

Add a test script for mesh-based objects. Loads a file cylinder.3ds.

DIMPLE must be executed from the test folder for this to work.


Commit: 30a39360044737e2d1cc8169bd203aeb0954eab1
Author: Stephen Sinclair
Date: Mon Jan 26 00:44:09 2009 -0500

Add support for OscMesh to all simulations except PhysicsSim.


Commit: 0c7770dbc4823248245dd84b15991aba6bd6104c
Author: Stephen Sinclair
Date: Sat Jan 10 21:11:55 2009 -0500

Begin implementation of /grab.


Commit: 3c60a40b54b979d43919119dd36433447b6a9e4b
Author: Stephen Sinclair
Date: Sat Jan 10 22:37:19 2009 -0500

Implement a /visible message which controls whether objects are displayed.

TODO: Should be made into a proper OscValue to enable querying.


Commit: 9bd38024300efc2a2e4f45913c6403f6a7e3c960
Author: Stephen Sinclair
Date: Thu Jan 8 22:52:40 2009 -0500

Move OscUniversal::simulationCallback() to OscUniversalODE.


Commit: 9d6115f18cb34cd7520ca0c81e398c92f4dba089
Author: Stephen Sinclair
Date: Thu Jan 8 15:36:16 2009 -0500

Move OscHinge2::simulationCallback() to OscHinge2ODE.


Commit: 3f14f5b503081f63691af5e320d88fb315406048
Author: Stephen Sinclair
Date: Wed Dec 10 16:44:16 2008 -0500

Fix: When cursor is initialized, m_bInitialized should be true.


Commit: f0df046c5ed24b5f2ce44ba4a9dc7df464781ba9
Author: Stephen Sinclair
Date: Tue Dec 9 10:05:00 2008 -0500

Update position and velocity of OscCursorCHAI on each timestep.


Commit: 92b0d8c875ccce524b9b1bcd19ba5491aa9bcabb
Author: Stephen Sinclair
Date: Tue Dec 9 09:55:44 2008 -0500

Move initialization of cMeta3dofPointer into the OscCursorCHAI constructor.


Commit: d1ee5fa1295d48a9ac93509301382a284b42037b
Author: Stephen Sinclair
Date: Tue Dec 9 09:17:39 2008 -0500

Add a new object type, OscCursorCHAI, and point it at our one and only cMeta3dofPointer.

It is used for determining collisions with objects, and will also be available for the user to access get the cursor position and velocity, etc., and perhaps set some properties.


Commit: 563fe6c5f8d32c6e153a147abd18d9ccc86ae791
Author: Stephen Sinclair
Date: Tue Dec 9 09:05:12 2008 -0500

Small typo, deviec → device


Commit: 944006b2f1f5e5f23ca6ecc0e834d36766a04fb3
Author: Stephen Sinclair
Date: Mon Dec 8 01:01:03 2008 -0500

When touching an object, also send the cursor force to client as a collision message.


Commit: e5e210c5c940a4f5032c74f91e1b667bff717564
Author: Stephen Sinclair
Date: Mon Dec 8 00:58:36 2008 -0500

Calculate forces and apply them before passing on collision information.


Commit: bb19ab1361e18f7521930c4a05483a63b1f0a49f
Author: Stephen Sinclair
Date: Mon Dec 8 00:50:25 2008 -0500

In comments, ODE→CHAI typo.


Commit: 28dd1c0d1092d23ca17efad5a7b35dc6e4dea9cb
Author: Stephen Sinclair
Date: Sun Aug 10 14:15:10 2008 -0400

Add the 'spring' response to the hinge constraint.

Need to investigate why it requires very small numbers as input. Is it a unit thing, or ODE behaving strangely? Needed to limit the torque otherwise ODE triggers assertions during positive feedback conditions. Still sends the object flying away, so better limits need to be found.


Commit: 874e94361fd1b3133d553063cfc7b240c62cc34a
Author: Stephen Sinclair
Date: Tue Jul 29 17:19:03 2008 -0400

Add torque handling to hinge constraint.


Commit: affa9244aa5d5e845949c71a51e85109e5fa92a6
Author: Stephen Sinclair
Date: Wed Jul 30 10:49:26 2008 -0400

Fix variable names in OscHinge2 declaration.


Commit: 45bec8886fbbf77b37495f0d1a03c89282d095e0
Author: Stephen Sinclair
Date: Thu Jul 17 12:26:42 2008 -0400

Do not rely on several libraries that have been compiled out of CHAI3D.


Commit: 3979636fcdb6876256c28fd6ffd0ad299ba27ca6
Author: Stephen Sinclair
Date: Tue Jul 29 17:17:48 2008 -0400

Make InterfaceSim forward the /push message.


Commit: c99dccf45c9772b3456ea99c3aff12bc5a610354
Author: Stephen Sinclair
Date: Mon Jul 28 10:42:41 2008 -0400

Add the /push handler for OscSphereODE.


Commit: ea4f41b42ae9d3f4d28614f460c9a57c3a61a9d7
Author: Stephen Sinclair
Date: Fri Jul 25 19:02:39 2008 -0400

In PhysicsSim, call InitODE() at initialization.


Commit: 1c8bba7b96f700e529bb4f639cff610ba800140d
Author: Stephen Sinclair
Date: Fri Jul 25 18:08:07 2008 -0400

Update to liblo-0.25.


Commit: 9c39b60b9cb8c0e8e095a0e79e1a4eb566169dc7
Author: Stephen Sinclair
Date: Fri Jul 25 17:11:34 2008 -0400

mingw: Fix MD5CUT in bootstrap.sh.


Commit: e9bf6ee781e89e058864e427b545004bd9aa979d
Author: Stephen Sinclair
Date: Thu May 22 19:09:41 2008 -0700

mingw: Modifications to support MingW compilation based on msysGit.

Modified some parameters in bootstrap.sh, mainly for freeglut, and also small patch for liblo. Replaced the huge freeglut patch with a simpler one. Add freeglut path to the chai3d Makefile patch for MingW.


Commit: 93d1204866423d2a2c6849471ca73b7a58b1ba04
Author: Stephen Sinclair
Date: Fri Jun 13 18:00:05 2008 -0400

Don't set the color of prism at creation.


Commit: 2bba0e8a45b60e9c1df85f7a9dcaec42e6dce4eb
Author: Stephen Sinclair
Date: Fri Jul 25 13:14:33 2008 -0400

Implement the piston constraint.


Commit: 8ce8cdba10c58888bcaccab2528961731b69706a
Author: Stephen Sinclair
Date: Fri Jul 25 14:26:53 2008 -0400

Update to ode-0.10.1.


Commit: be2cdc576cf2bd7210040f2bc21fe9547d72e509
Author: Stephen Sinclair
Date: Tue Jul 22 19:33:42 2008 -0400

Implement Hinge2 constraint.


Commit: 159ca62f332f4e29e7ab1e7104563063aaa91350
Author: Stephen Sinclair
Date: Fri Jul 18 16:50:22 2008 -0400

Replace obsolete 'git-command' syntax with 'git command' from version script.


Commit: 4f156e7d537b828d8a014a18dc85a18bd33b8551
Author: Stephen Sinclair
Date: Thu Jul 17 12:09:59 2008 -0400

Fix casting error with user callback parameter for glutTimerFunc on 64-bit.


Commit: 6c7b6f11e23c2264eb25f75dfae16d2c0847dd50
Author: Stephen Sinclair
Date: Sun Jul 13 17:35:41 2008 -0400

Implement the universal constraint.


Commit: 60e3c163d5d2b7867eb6f71a634cc47e668927f4
Author: Stephen Sinclair
Date: Sun Jul 13 16:07:09 2008 -0400

Implement the slide constraint.


Commit: 91bdbebd153c2935bbdc704c9d7b9cf60b9729c9
Author: Stephen Sinclair
Date: Sun Jul 13 15:57:56 2008 -0400

Update TODO file, remove 'done' items and add unfinished joint types.


Commit: 77741b365cea9a2bafc7bb23c726ea952ed1aff0
Author: Stephen Sinclair
Date: Sun Jul 13 15:41:32 2008 -0400

Print an error message when object is not found during constraint creation.


Commit: f3cdfd6fa38e78ea17d76264a557b89ab775aaba
Author: Stephen Sinclair
Date: Thu Jul 10 20:07:49 2008 -0400

Implement the ball joint constraint.


Commit: 7eb5f2d1ca6432aee977f8e86ba71bb72c2f05d5
Author: Stephen Sinclair
Date: Tue Jun 10 17:21:36 2008 -0400

Run the VisualSim within the program's main thread.


Commit: 7abfb1d27e54d317953790cfab7d4f4ea1d3c537
Author: Stephen Sinclair
Date: Thu Jun 19 21:25:14 2008 -0400

Use OscBase::c_path() for sending OscValues.


Commit: 55e947b06b143446065be33a72820f7d00a8b3da
Author: Stephen Sinclair
Date: Sun Jun 8 21:26:01 2008 -0400

Filter bad characters in version utility.


Commit: 21023e96aaafdb3df224c123fc7b693bc3a00c98
Author: Stephen Sinclair
Date: Sun Jun 8 17:26:18 2008 -0400

Remove old bug from bug list and update it with crash information that was just discovered.


Commit: 5709b75be518289c38232a67b5329a769c390ec7
Author: Stephen Sinclair
Date: Sun Jun 8 17:04:36 2008 -0400

Add window resizing, as well as fullscreen support by pressing the 'f' key.


Commit: 32a28400a6e3b7ba6a3ad2ec2bee947ca450cb94
Author: Stephen Sinclair
Date: Sun Jun 8 14:20:35 2008 -0400

Add a keyboard handler for the escape key to exit the application.


Commit: 93d384fb6a056ed2ebea90028405befec6bf092a
Author: Stephen Sinclair
Date: Sun Jun 8 16:45:54 2008 -0400

Exit HapticsSim if the haptic device did not initialize correctly.


Commit: 61b600bdb650d627201725ec61833bfe5a07aed0
Author: Stephen Sinclair
Date: Mon Jun 2 22:40:46 2008 -0400

Add a /push method to OscPrismODE which applies force at a specific position.

This may be a temporary solution—it is a specific method instead of implemented as an addressable member like other properties.


Commit: 201f1495f112150bc5338a621fc24d3c0cde18c6
Author: Stephen Sinclair
Date: Wed May 28 18:42:34 2008 -0400

Don't scale the /force messages now that they are throttled.


Commit: 3aaefda3224be12801412d521d54d6838c683f33
Author: Stephen Sinclair
Date: Wed May 28 18:37:50 2008 -0400

Remove some extra debug printfs from PhysicsSim.cpp.


Commit: cbf7e51ac66df9a4b663bef681c56d02a1e84405
Author: Stephen Sinclair
Date: Wed May 28 18:12:05 2008 -0400

Remove obsolete /mass handler, replace it with an OSCSCALAR variable.


Commit: 9aebde82412293c622766b1ec01371f64bb6d5c5
Author: Stephen Sinclair
Date: Wed May 28 18:15:21 2008 -0400

Remove obsolete functions related to collide/get requests.


Commit: 9e57a03ac0e456868e6c16e7dead8224643bbcce
Author: Stephen Sinclair
Date: Wed May 28 17:55:49 2008 -0400

Fix throttling in Simulation::sendtotype().

Also, realize it won't work properly for send() without taking destination into account.


Commit: 65f27ca81672bb924f0d71110d32588b045d675f
Author: Stephen Sinclair
Date: Wed May 28 17:53:30 2008 -0400

Pd test patch: Fix gravity vector, fix collide request, fix createbox position and orientation.


Commit: adc01efb3eb6d50efc581d092ba7010311651c13
Author: Stephen Sinclair
Date: Sun May 25 23:00:43 2008 -0400

Fix a warning due to the LibLo handler in OSCMETHOD0 not returning a value.


Commit: 2191a6f5a817cc8e4c834d8bca170555fef8c228
Author: Stephen Sinclair
Date: Sun May 25 22:55:01 2008 -0400

Implement message throttling according to ratio between two Simulation timesteps.


Commit: ef818ee16773a2ba8e5a657caa93e8d5961118a6
Author: Stephen Sinclair
Date: Tue May 20 16:00:21 2008 -0400

Detect contacted object and send it forces in proportion to the proxy force.


Commit: 6727c9922897dee643e5d7323c3845f47c533924
Author: Stephen Sinclair
Date: Sat May 24 18:15:03 2008 -0400

Change initial sphere mass to better match initial radius.


Commit: 855983069e74c6444f69c48165da60e4d8565930
Author: Stephen Sinclair
Date: Sat May 24 17:54:34 2008 -0400

Replace the default cPotentialFieldForceAlgo with cODEPotentialProxy.


Commit: 74098be805552a2a9abb46382731f195367c35f8
Author: Stephen Sinclair
Date: Sat May 24 17:18:47 2008 -0400

Update test.pd with new namespace and ports.

/object and /constraint become /world. Port 7774 for sending, 7775 for listening.


Commit: b98fab1c9f4583ca1ce12ff9ee55d44261698c7e
Author: Stephen Sinclair
Date: Sat May 24 16:59:05 2008 -0400

Rotate position of haptic cursor about the Z axis to correspond with visual display.


Commit: 6ee202a9543cb9d5d9ef935e1749b204456d4003
Author: Stephen Sinclair
Date: Sat May 24 16:25:54 2008 -0400

Do not let the visual cursor penetrate a prism object.

If in contact with an object, display the cursor at the proxy location instead of the device location, so that it does not show it penetrating the object.

This does not work for potential field objects (i.e., spheres).


Commit: 2b71d04feab6f6fdd4bbc35856c805874e4b5b54
Author: Stephen Sinclair
Date: Sat May 24 15:49:26 2008 -0400

Tell CHAI objects to compute global positions.

This is necessary for correct haptic rendering.


Commit: e2568e02f319ac2ccbb06ce487e06d8160ffaea5
Author: Stephen Sinclair
Date: Fri May 23 21:19:50 2008 -0400

Initialize CHAI cursor object properly.


Commit: 3ed0539c1a3c1120586d53f17f65b562d8988b3f
Author: Stephen Sinclair
Date: Fri May 23 02:54:22 2008 -0400

Disable disconnected bodies.


Commit: 765dfe1ac196e6848c282308213fc28176df182f
Author: Stephen Sinclair
Date: Mon May 5 16:46:25 2008 -0400

Use m_deviceLocalPos instead of getPos() for the CHAI cursor.


Commit: fa06dab8b22d77a5a6c14b23b0f927b6d6071c41
Author: Stephen Sinclair
Date: Tue May 20 16:27:42 2008 -0400

Fix cmd argument of getoutput in SConstruct.


Commit: d6c518e5b325e8ac6dd112139f30a3fd2e8a0800
Author: Stephen Sinclair
Date: Tue May 20 15:51:01 2008 -0400

Always use the -L/-l options for linking to LibLo.

Previously it linked to the .a file directly on OS X, but this seems to work better.


Commit: c3d723f22b8488ddd66699e2b593766dab0e7ac3
Author: Stephen Sinclair
Date: Tue May 20 15:35:48 2008 -0400

Don't use 'subprocess' module in SConstruct, since it's not available on OS X's bundled version of python.


Commit: d64be0d36cb644c5b5fa9a2dca2d2afdbe619e3e
Author: Stephen Sinclair
Date: Mon May 19 17:42:46 2008 -0400

Implement /world/gravity, and add a test script for it.

Bug: currently, the floor visually keeps falling, but the ball seems to hit it where it should have stayed.


Commit: c6015bfbae047db6935e3d6ed737dc22f1ed48a1
Author: Stephen Sinclair
Date: Mon May 19 17:28:49 2008 -0400

Implement /world/<object>/collide message, with velocity.


Commit: 6085924ab226fa78e790895f42627356559666bf
Author: Stephen Sinclair
Date: Mon May 19 17:11:10 2008 -0400

Implement /world/collide, returning collision information between any two objects if non-zero.


Commit: ac942d30d7106d635cd36394da53096b4f74380e
Author: Stephen Sinclair
Date: Mon May 19 16:00:49 2008 -0400

Move OscValue-related macro functions from OscBase.h to OscValue.h.


Commit: 9cde07758500e81f36e40b0546d5121ce4e57fb0
Author: Stephen Sinclair
Date: Mon May 19 15:52:11 2008 -0400

Move OscValue and subclasses into a new file OscValue.{h,cpp}.


Commit: a68550badf7ad40adfd786ea4fb6affab834a6d9
Author: Stephen Sinclair
Date: Mon May 19 14:20:02 2008 -0400

Implement fixed constraint between object and world by disconnecting the ODE body.

This adds functions ODEObject::connectBody() and ODEObject::disconnectBody().


Commit: a4e7833cd33fe40b595d4e33d66a779d6c27f583
Author: Stephen Sinclair
Date: Mon May 19 14:02:54 2008 -0400

Add a test script for fixed constraints.


Commit: eaa93c92b314226313c830fea4ffe3ae48ef980c
Author: Stephen Sinclair
Date: Mon May 19 14:02:33 2008 -0400

Implement fixed constraints.


Commit: ba700381f2f420f01c236e8a112750f06921e084
Author: Stephen Sinclair
Date: Mon May 19 13:03:00 2008 -0400

Add a test script for destroying objects and constraints.


Commit: 642fca38e694d43384c57f469a2b80fd3b353ba8
Author: Stephen Sinclair
Date: Mon May 19 12:59:19 2008 -0400

Destroy constraints associated with an object when it is destroyed.

Each object now has a list of all associated constraints. When the object is destroyed, the constraint is removed from the other object's list before being destroyed. It might be better to implement this through member functions, but for now the constraint list is public.


Commit: 34a638ec31165a17b18c10181d31c410752d48ff
Author: Stephen Sinclair
Date: Mon May 19 11:32:11 2008 -0400

Implement /destroy for OscConstraint.


Commit: 9fa4b1f5e36429a0fbb27c105869aef1a4b5a219
Author: Stephen Sinclair
Date: Mon May 19 11:17:38 2008 -0400

Change on_destroy handlers in InterfaceSim to call the correct superclasses.


Commit: c9548e9c4d6d1064084c8c444b2f684e83e1dd86
Author: Stephen Sinclair
Date: Sun May 18 15:52:34 2008 -0400

Add a test script with interesting oscillation from a hinge constraint.


Commit: 3c03513f866986cf31979e537687daf1b9522ba2
Author: Stephen Sinclair
Date: Sun May 18 13:08:24 2008 -0400

Update dynamics information for all objects on every PhysicsSim::step().

This implements getting of position, velocity, and acceleration. It replaces old setVelocity() function which used CODEPrimitive class. Also adds a set(cVector3d&) override to OscVector3.


Commit: 06aa8f91028145881ee26e13fdeaada05dad25d7
Author: Stephen Sinclair
Date: Sun May 18 12:57:27 2008 -0400

Remove some unnecessary casting in PhysicsSim::step().


Commit: 9df919321858ff414202c464361f5eefea3f4e32
Author: Stephen Sinclair
Date: Sun May 18 12:25:43 2008 -0400

Update the TODO file.


Commit: dbf14dc2375981664dfd57428f2995030db2c53d
Author: Stephen Sinclair
Date: Thu May 15 00:20:04 2008 -0400

Fix circular callback issues with magnitude scalar in OscVector3.

On OscVector3::_handler(), Was calling the set() function for OscScalar, which called its own callback, effectively causing the set_callback to be called twice and performing extra useless calculations. Setting the m_value directly solves this, though it only works because m_value is public.


Commit: 7ba44b3070792cc66eb34549d029a5b773e49753
Author: Stephen Sinclair
Date: Sat May 17 16:57:00 2008 -0400

Fix virtual function initialiation race condition.

Starting the pthread during the Simulation contructor caused a race condition for the initialization of virtual functions. This caused the subclassed virtual functions to not be called properly, such as step() and initialize(), leading to segfaults or “pure virtual function called” errors.

This patch fixes it by moving the pthread code to start() and stop() functions which are called by the main program after the objects have been properly initialized.


Commit: 3774380273e5079a7dc9b659cc448737f53d6354
Author: Stephen Sinclair
Date: Thu May 15 00:18:52 2008 -0400

Add test script for two spheres colliding.


Commit: b1f33d8013a7c04536b4f75da1859325814b8007
Author: Stephen Sinclair
Date: Thu May 15 00:17:52 2008 -0400

Set the ODE sphere geom's radius in PhysicsSim::on_radius().


Commit: 2ede24d3bb5a88cfde7bc26e342b760e1dab2c46
Author: Stephen Sinclair
Date: Thu May 15 00:00:35 2008 -0400

When scanning up the hierarchy for Simulation, consider that the initial object could be one.


Commit: 45c5ef7e8cdf45d9ef408a38b48e648bbbc80256
Author: Stephen Sinclair
Date: Wed May 14 23:59:59 2008 -0400

Make cube.sh listen on port 7775.


Commit: 01802c3d78751109dab83c0e79cd6b2b8c49a3b4
Author: Stephen Sinclair
Date: Wed May 14 09:14:33 2008 -0400

Don't create objects that already exist.


Commit: 8edb1948cc0e140f3cc4fc805559155ea8ff5739
Author: Stephen Sinclair
Date: Wed May 14 09:01:52 2008 -0400

Implement /world/clear.

Required overriding in VisualSim to make it explicitly avoid deleting the cursor.


Commit: b66ab7b798ada1ef253dfd96d9c3beaf675107c4
Author: Stephen Sinclair
Date: Wed May 14 08:36:02 2008 -0400

Move method-related macro definitions to OscBase.h, debug macros to dimple.h.


Commit: 41deee2aaa44102689f08fd170f606d6277249bf
Author: Stephen Sinclair
Date: Tue May 13 23:38:12 2008 -0400

Make the /destroy method work for spheres and prisms in all simulations.

This adds a macro OSCMETHOD0 to OscObject.h used to declare methods that take no arguments.


Commit: c15ed42cb949d987f988bee611d8f76e57df9f07
Author: Stephen Sinclair
Date: Tue May 13 19:27:32 2008 -0400

Remove the fairly useless gradient.tga texture image.


Commit: 5b640d08effcbfbd70dc25db4d656a383c9316f6
Author: Stephen Sinclair
Date: Tue May 13 19:26:05 2008 -0400

Move the test Pd patch into the 'test' folder.


Commit: 482d2059221cc0164e7d36e939f2d2d3b1188c28
Author: Stephen Sinclair
Date: Tue May 13 01:07:26 2008 -0400

Fix: “throttle” and “type” parameters of Simulation::sendtotype() were reversed in commit a67cdf.


Commit: 6565341754b4a2ec5a54ad11b54724a382136d61
Author: Stephen Sinclair
Date: Thu May 8 23:10:56 2008 -0400

Position the camera such that X increases to the right, Y into the screen, and Z is up.


Commit: 53e4cb896f756050bfa3c128e4e0742af7bdd639
Author: Stephen Sinclair
Date: Thu May 8 22:14:36 2008 -0400

Add a test script to create a colored cube.


Commit: 4f4582a780dce253647097bd2e1dcd5f8f7d6a2d
Author: Stephen Sinclair
Date: Thu Feb 28 09:19:05 2008 -0500

Add a sphere to VisualSim representing the haptic cursor, and update it with the haptic cursor position.


Commit: 112694f684d77726368fd966b98391a5313d0a5c
Author: Stephen Sinclair
Date: Sun Feb 24 23:30:06 2008 -0500

Add transmission of rotation information from physics to haptics.

This adds an OscMatrix3 class to handle matrix information. Cleans up some of the position handlers as well.


Commit: 3b1023602694870e26cfd3959f56545bf19892a0
Author: Stephen Sinclair
Date: Sat Feb 23 19:36:30 2008 -0500

Add the haptic cursor: Confirmed functional with Sensable Phantom controller on Windows/MingW.


Commit: dc4d640b62757516e2b54375d0fc144dbbc42dd5
Author: Stephen Sinclair
Date: Sat Feb 23 12:23:23 2008 -0500

Fix: Typo caused hinge constraints to be ignored.


Commit: 73da808c95415256325681894054002163d08143
Author: Stephen Sinclair
Date: Fri Feb 22 22:20:44 2008 -0500

Fixed bug where c_path() returned a pointer to an internal string which was maintained by a temporary std::string instance.

This caused invalid strings to be passed to Simulation::send(). Solution (and small optimization) is to cache path() and c_path() in member variable, OscBase::m_path. This required dropping the const modifier on c_path(), in turn requiring dropping it for OscValue callbacks. Realized it wasn't appropriate there anyways, since callbacks should be able to modify this referenced object.


Commit: 2d53141eb480ad760ba0f27315b4972f47e62881
Author: Stephen Sinclair
Date: Fri Feb 22 22:19:12 2008 -0500

Add missing va_end() call to Simulation::send() and ::sendtotype().


Commit: 8c4790557dad26c1c29be662989c6c4332a100a0
Author: Stephen Sinclair
Date: Fri Feb 22 21:41:55 2008 -0500

Error and trace messages begin with the simulation type.

This required some shuffling of #include lines.


Commit: b8cc49a8da1e979938ea65efda338302f6905af1
Author: Stephen Sinclair
Date: Fri Feb 22 17:32:50 2008 -0500

Avoid making constraints between an object and itself.


Commit: d5c0f26e1fde0877e139350a83a527287a1ce2d0
Author: Stephen Sinclair
Date: Fri Feb 22 16:28:52 2008 -0500

In all simulations, set the position of objects on creation.

This required making m_position a public member of OscObject. Perhaps all parameters should be public, or the factories should be made friend classes.


Commit: f03e180c9028e32b73709cd29dec315653816ae3
Author: Stephen Sinclair
Date: Fri Feb 22 16:17:00 2008 -0500

Call set callback when any OscValue::set() function is called.

Add a set() function to OscString. Change function name OscVector3::setMagnitude() to OscVector3::set_magnitude_callback().


Commit: e04fb48fa4049746dec52d908f6aa7fe534ec523
Author: Stephen Sinclair
Date: Wed Feb 20 18:34:24 2008 -0500

Bootstraps, compiles and runs under Windows using MingW/MSYS.

Notes: Questionable path trickery and popen-related command piping was required to get Python (for SCons) to find the locations of the libraries and sources. The SConstruct file contains some finicky OS-dependent library dependency stuff, which should probably be made cleaner. For pthreads, the pthread_t data structure in pthreads-win32 is not a simple integer-sized type, but a data structure. Therefore, to check if a thread is running, it was necessary to introduce Simulation::m_bStarted to use as a boolean instead of checking whether the pthread_t is NULL.


Commit: 01e1d8e2e3d29f829587bb2c8f24333a229b01f0
Author: Stephen Sinclair
Date: Tue Feb 19 22:08:02 2008 -0500

Add support for hinge constraints, as well as all the infrastructure needed for constraints.

This includes the following new classes: HingeFactory, InterfaceHingeFactory, PhysicsHingeFactory, ODEConstraint, OscHingeODE, OscHingeInterface. In addition, OscConstraint gets a pointer to its parent object just like OscObject (pointing to the Simulation). It is set to NULL for older classes. (If they are instantiated, it will generate an error.)

Considering the required number of classes for a single joint type, and that constraints only make sense within the physics context, it must be decided whether this is the best approach. However, it seems good to stay analogous with the class hierarchy for objects, since constraints, like objects, can respond to external messages. The nice thing is that while InterfaceSim gets a copy of the constraint, any ODE-specific code will be only in the physics simulation's subclass.


Commit: 38ba687d29de79109f2fd00695a0b484981e27f4
Author: Stephen Sinclair
Date: Tue Feb 19 18:06:05 2008 -0500

Support for setting /position.


Commit: 828c94841b3c74f59f323a9d11aef4656371d44f
Author: Stephen Sinclair
Date: Tue Feb 19 17:37:51 2008 -0500

Allow creation of prisms in all simulation types.

Note that for resizing the prism in PhysicsSim, we need the previous size to properly scale the material density, which is not currently supported.


Commit: b8e4afb6daf9fad33cd7513ca4f1c5b2c4832218
Author: Stephen Sinclair
Date: Tue Feb 19 15:07:30 2008 -0500

Add new style /color variable.


Commit: 1cfb48146e865cefd4f2b4f0eae5703cec66a901
Author: Stephen Sinclair
Date: Sun Feb 17 16:26:59 2008 -0500

Add bootstrapping of pthreads, samplerate, ode, liblo under MingW.

Compiles, but LibLo server examples are crashing.


Commit: 48b3f422cda0c65e1513a061a8fa896eec4bb9bb
Author: Stephen Sinclair
Date: Sun Feb 17 15:10:11 2008 -0500

Add boostrapping of freeglut-2.4.0 under MingW.

Beginnings of port to the MingW/MSYS platform. Eventually the project should be bootstrapped and compiled from a bare msysGit installation.


Commit: efe9ff738c5519783e1258bce7a0e5cb623b2d80
Author: Stephen Sinclair
Date: Sun Feb 17 12:38:58 2008 -0500

Add initialize function to Simulation, so that data structures can be initialized within thread context.


Commit: 5a75bd883d88a03b22a2fba5b08c459fc1848b12
Author: Stephen Sinclair
Date: Thu Feb 14 09:22:01 2008 -0500

Add a throttle flag to send() and sendtotype().

This is to allow stream-type messages (such as position information) to be throttled according to each simulation's update rate. Throttling is not yet implemented.


Commit: 02e8225063a6d352481d183bc00ef763bc9b7493
Author: Stephen Sinclair
Date: Thu Feb 14 09:33:58 2008 -0500

Add class SimulationInfo which contains copies of information in Simulation needed to send that simulation a message.

This is to avoid accessing members of Simulation from another Simulation's thread when sending messages. The m_simulationList vector no longer contains pointers to Simulation structures directly, but instead contains SimulationInfo classes which belong to the simulation itself and can be safely accessed.


Commit: 6a6dd68c08ff58eb1e06ce0ec68efe18f3d7020e
Author: Stephen Sinclair
Date: Wed Feb 13 22:50:21 2008 -0500

Specify in the InterfaceSim /get message-forward declarations the simulation type to send to.

This effectively filters incoming /get messages so that they are responded to by the appropriate simulation type. It might be aesthetically cleaner to have each simulation know which messages respond to (by disabling /get for certain messages for each subclass for example), but filtering the /get messages before forwarding them in the first place is a little more efficient, and also requires less code.


Commit: 13ca96e71f81ac752e6ac377534353be7a6d4f67
Author: Stephen Sinclair
Date: Wed Feb 13 21:58:20 2008 -0500

Add a simple enum-based type system to the Simulation class.

While it is not desirable to have information about inherited classes here, the alternative is to depend on dynamic casting, which is known to be somewhat slow. Also, without a value to identify a simulation type, the sendtotype() function would be more difficult to express. This function is needed for InterfaceSim to direct messages to specific simulations.


Commit: 8e96525fb7d4130e50912816058d36512116138b
Author: Stephen Sinclair
Date: Wed Feb 13 19:57:12 2008 -0500

If-out the checksum of diff from the version number of dirty builds.

This was causing SCons to recognize the change in CXXFLAGS and rebuild everything on every run. Left the code in for now in case a work-around can be found.


Commit: 259bbbf21b3e427b1d47427054333af80bd88c6c
Author: Stephen Sinclair
Date: Wed Feb 13 16:23:22 2008 -0500

Use cPrecisionClock from CHAI to time simulations accurately. (Not formally confirmed.)

Process multiple incoming messages per step, special case for VisualSim. This fixes the delay bug mentioned in the previous commit.


Commit: e4472cb82615ba57375ad2f1907bb1057c7ab7c5
Author: Stephen Sinclair
Date: Wed Feb 13 15:34:54 2008 -0500

PhysicsSim updates other simulations with object positions at every step.

Had to remove InterfaceSim from PhysicsSim's list to avoid feedback loop. Bug: there is a visible delay before the object starts moving when you add forces.


Commit: 491bf4e1c5086094294d70230f32b3ad5f218af0
Author: Stephen Sinclair
Date: Sun Feb 10 12:15:51 2008 -0500

Add support for VS 2003 and 2005 for libsamplerate. Change name of visual studio project files for consistancy.


Commit: a168826e00df425c68df24babda8e0acc0fda8ad
Author: Stephen Sinclair
Date: Thu Jan 31 19:00:28 2008 -0500

Add OscVector3 for force, with set-handler in PhysicsSim to actually add the force to the rigid body.

Also remove old handler_data references from OscVector3, OscScalar and OscString.


Commit: 6bfbce12a868b010d2bdbab4718e362955877d9b
Author: Stephen Sinclair
Date: Sat Jan 26 17:55:55 2008 -0500

Changed default output port to 7775.

(Likely will need to come up with better way to deal with specifying the output destination, such as responding to the sender.)


Commit: 5ff6370ed48eefbe697c5981dd53ae86d23b5962
Author: Stephen Sinclair
Date: Sat Jan 26 17:50:39 2008 -0500

Each instance of Simulation gets its own ValueTimer, which is called after each simulation step.

The valuetimer.{h,cpp} files were renamed to ValueTimer.{h,cpp} for consistancy.


Commit: 4a08de89b25ef6037b32696132375392172945b0
Author: Stephen Sinclair
Date: Sat Jan 26 16:05:34 2008 -0500

Added accessor function for debug trace flag.


Commit: 77fdf57e39de13d891c6ad4d891c85240ca45db7
Author: Stephen Sinclair
Date: Sat Jan 26 15:48:44 2008 -0500

Added on_get_ callbacks to forwarding macros for InterfaceSim subclasses.

Causes '/get' requests to be forwarded to the other simulations instead of being handled in the InterfaceSim thread. Changed path, c_path, name, and c_name functions of OscBase to be declared const.


Commit: cc0a758786dc0590559c852ad00f23eef31a5826
Author: Stephen Sinclair
Date: Fri Jan 25 00:01:27 2008 -0500

Added “get” callback for OscValue in addition to the “set” callback, which can override default behaviour.

This is intended to enable InterfaceSim objects to forward “get” messages instead of responding to them.


Commit: 960328b91ed4ec0644cacba34d8e9a85dfea57de
Author: Stephen Sinclair
Date: Thu Jan 24 09:22:15 2008 -0500

Added macros to simplify defining forwarding handlers for OscValue instances in the InterfaceSim.


Commit: b78e1f611bf91c8249abab11ffd2e96a1a44dd86
Author: Stephen Sinclair
Date: Thu Jan 24 08:42:02 2008 -0500

Added liblo-0.24 to .gitignore list.


Commit: 7b880534c6db8bd10bf9bff9fad5a8db2374b421
Author: Stephen Sinclair
Date: Thu Jan 24 00:33:05 2008 -0500

OscBase::simulation() returns the Simulation associated with any subclassed object.


Commit: b0e1190261bed37d56c898baf6b6110c40c3ebc7
Author: Stephen Sinclair
Date: Wed Jan 23 23:23:57 2008 -0500

Debug trace macros use path() instead of name().


Commit: 08db16278fc4d3a65042330666b0a10001581912
Author: Stephen Sinclair
Date: Wed Jan 23 23:22:05 2008 -0500

OscBase::path() and c_path() return the object's name preceeded by its whole lineage.


Commit: 9fdba989b16d153ad1139e42a63471f36aa162dd
Author: Stephen Sinclair
Date: Wed Jan 23 20:41:55 2008 -0500

Added ptrace macro for conditionally outputting trace messages about received messages.

Objects can turn trace on and off selectively.


Commit: d5d047c087c01b60223208fd3721a4685182dd5d
Author: Stephen Sinclair
Date: Wed Jan 23 20:41:55 2008 -0500

Added macros to OscObject.h to make it easier to declare member variables with static callbacks, which in turn call virtual functions that can be overridden by subclasses.

If this method of communication is finally chosen, these macros should be propagated to all objects.


Commit: a22ce5ba4a827c7346299fe42fbc494b7ac6acc8
Author: Stephen Sinclair
Date: Wed Jan 23 18:23:50 2008 -0500

Upgraded to liblo version 0.24. Removed call to modified liblo's set_*callback() because it won't be needed anymore.


Commit: 334baee2c7c7a113b2e9a3b03b5dc440fa2f3900
Author: Stephen Sinclair
Date: Tue Jan 15 16:12:08 2008 -0500

Fix crash in OscSphereInterface when /radius message is forwarded.

Pointer erroneous cast to an InterfaceSphereFactory instead of to InterfaceSim.


Commit: 71d9fcfa71316ce13075bf2c4b7d801c9cd31746
Author: Stephen Sinclair
Date: Tue Jan 15 15:30:42 2008 -0500

Exit a bit more gracefully when unable to create lo_server object.

(Throwing exception from Simulation constructor.)


Commit: 76da232eeb5e3121096ffb08788e9de114257f40
Author: Stephen Sinclair
Date: Tue Jan 15 14:55:46 2008 -0500

Subclassed OscSphereInterface which forwards the /radius message to the other simulations.


Commit: 730a9a6c1ff2ad2a4d810904b2d6211f3ba60878
Author: Stephen Sinclair
Date: Tue Jan 15 14:26:52 2008 -0500

InterfaceSphereFactory forwards creation messages to the other simulations.

The Simulation class gets a list of other simulations it can send messages to, which is initialized right at the beginning of the program. The InterfaceSim subclass, when it receives messages, uses Simulation::send() to forward the message to all listed simulations. With this method, all objects will have to be subclassed to know how to forward each message individually. Not entirely sure it is the right approach, but a possibility.


Commit: 7c3debe311b7f5c80a413031baf682f4ad6aadcb
Author: Stephen Sinclair
Date: Tue Jan 15 12:34:00 2008 -0500

Added list of simulations to the Simulation class.

This list reflects which simulations a given sim can send messages to.


Commit: 42874fead358e083730a65d9d748e8c9b00c39b9
Author: Stephen Sinclair
Date: Tue Jan 15 11:53:28 2008 -0500

Added InterfaceSim class for tracking the simuation and providing a central place to accept user queries.

Incoming OSC messages will be repeated to each simulation from here.


Commit: 4734526eb95410cffecb1b7997441d19fd206779
Author: Stephen Sinclair
Date: Tue Jan 8 21:06:37 2008 -0500

Add a temporary scons file to the .gitignore list.


Commit: 870abee0bc77b1d16fec04e67217beec3aecf098
Author: Stephen Sinclair
Date: Sat Jan 12 13:48:59 2008 -0500

Initialize and open a GLUT window from VisualSim class.

The step() function in the particular case blocks, in order to enter the glutMainLoop() function, which usually never returns. (In freeglut it may return.) A timed callback is initiated before entering glutMainLoop() which performs drawing and checks the liblo server in a non-blocking fashion.

In the future, perhaps drawing could be performed only when messages are received.


Commit: 8e8a65c078b5179cee4f4ea73cdce945e2b12502
Author: Stephen Sinclair
Date: Wed Jan 9 02:36:04 2008 -0500

Added VisualSim class for handling the GLUT thread. Shares the CHAIObject and OscSphereCHAI classes with HapticsSim, but will handle distinct instances.


Commit: 1e45f2a9173948b78231d95d1c6e8d2d188edabc
Author: Stephen Sinclair
Date: Tue Jan 8 21:35:27 2008 -0500

OscSphereCHAI creates a cShapeSphere instance. The CHAI object is now managed by the specific subclass rather than by the CHAIObject base class.


Commit: 42afd471e1ec7e244c6b2dce350cb2202d9d5e3e
Author: Stephen Sinclair
Date: Tue Jan 8 21:19:51 2008 -0500

Initialize the CHAI environment (world, camera, light)


Commit: 370616efdfcdd9a9ff2087be08c23ac49b627b2b
Author: Stephen Sinclair
Date: Tue Jan 8 21:13:12 2008 -0500

Pass CHAI objects by pointer instead of by reference. We can't always be sure the NULL case will not occur or even be useful.


Commit: 0528733091fd5c0d50dfb49717b14e7268b60533
Author: Stephen Sinclair
Date: Tue Jan 8 21:06:37 2008 -0500

Add a temporary scons file to the .gitignore list.


Commit: 48b6fe9ee79e5deff84bc98b8508c03b86cdcb8d
Author: Stephen Sinclair
Date: Tue Jan 8 17:12:51 2008 -0500

Added HapticsSim class to encapsulate the haptics simulation and CHAI. Added also the OscSphereCHAI class, which is created through HapticsSphereFactory.


Commit: 886d6c6c6dde3cfcd36f9cc260a700920e15a302
Author: Stephen Sinclair
Date: Tue Jan 8 16:50:02 2008 -0500

Move PhysicsSim instance into the main() function.


Commit: 936135ca1d0f99210b65f6f0dba949d54a123adf
Author: Stephen Sinclair
Date: Tue Jan 8 16:40:26 2008 -0500

Running the ODE loop at each step() of PhysicsSim.


Commit: c5706ead673cfb06ecf2d75a83adacd0030c7fd9
Author: Stephen Sinclair
Date: Tue Jan 8 15:50:38 2008 -0500

ODE initialization code added to PhysicsSim class constructor. m_fTimestep variable and accessor added to Simulation class.


Commit: ea6d186981e6028adb8a59946230c559767f9b14
Author: Stephen Sinclair
Date: Tue Jan 8 14:41:09 2008 -0500

On receipt of /world/<name>/radius, program flow makes it all the way to OscSphereODE::onSetRadius().


Commit: f11f50a9f776d7db951834491e004d7439a0a068
Author: Stephen Sinclair
Date: Tue Jan 8 14:15:02 2008 -0500

OscBase::addHandler was not correctly prepending parent namespace.


Commit: 0639c1d4a225f2a57d04780fb5f1db9319c61e28
Author: Stephen Sinclair
Date: Tue Jan 8 10:09:16 2008 -0500

Added geom and body IDs to the ODEObject and OscSphereODE classes.


Commit: 3e89bfaf19d996e0f270c85ebb4affc823019d39
Author: Stephen Sinclair
Date: Tue Jan 8 09:35:03 2008 -0500

ODEObject and OscSphereODE fleshed out some more.


Commit: 5a18da9b2c5775d124a4efc10497bcfb194555a5
Author: Stephen Sinclair
Date: Sat Jan 5 08:48:26 2008 -0500

Tentatively added ODEObject and OscSphereODE class.


Commit: 7ed0df19da00cc2f8c92a86e3f6e68d6683bb2e4
Author: Stephen Sinclair
Date: Fri Jan 4 18:09:14 2008 -0500

Creates a cODESphere for the OscSphere created by PhysicsSphereFactory.

Necessary reference to “world” (CHAI) shows that object framework will need to change drastically to support separated data structures.


Commit: a5a3fe992e0477b620ae40d27244d19b59fe8779
Author: Stephen Sinclair
Date: Fri Jan 4 13:28:10 2008 -0500

The PhysicsSphereFactory creates an OscSphere. (No actual ODE object is provided, so this still crashes.)


Commit: 3bb8bd326661f140a46875f19103d9118f100a3c
Author: Stephen Sinclair
Date: Fri Jan 4 01:50:08 2008 -0500

Added PhysicsPrismFactory subclass.


Commit: 830592f7d897d361333d89659c96041c0a3db46c
Author: Stephen Sinclair
Date: Thu Jan 3 22:10:26 2008 -0500

List of files for git-status to ignore.


Commit: 6fe4b57d6b9b6ee7c7d16fa42577f80fc52def9d
Author: Stephen Sinclair
Date: Fri Jan 4 01:03:02 2008 -0500

SphereFactory subclassed to specific PhysicsSphereFactory which has a create() function for performing the actual object creation.


Commit: fe1fcefcb3d518c4dbbac094f342f55d01724f1b
Author: Stephen Sinclair
Date: Fri Jan 4 00:20:12 2008 -0500

Simulation class creates a thread which waits for incoming OSC messages on the lo_server.


Commit: 90ac9cfba23fcd686310f04bee0f4f8b4e98cb99
Author: Stephen Sinclair
Date: Thu Jan 3 22:47:00 2008 -0500

Debug message to identify when sphere is created.


Commit: 5fa64ad455f3be6e6880da8bc1442105bf3e111f
Author: Stephen Sinclair
Date: Thu Jan 3 22:10:26 2008 -0500

List of files for git-status to ignore.


Commit: b9828b440036404e109dd6ec9e7e255b2dc736f3
Author: Stephen Sinclair
Date: Thu Jan 3 19:21:40 2008 -0500

Added script to use git tools for automatically creating a version number based on the last tag, the number of commits since the last tag, the current branch name (if not master), and a checksum of any uncommitted modifications.

Startup text shows the version number.


Commit: 807f6a5e395051cbb38f3cc306d6a0523a4af1e4
Author: Stephen Sinclair
Date: Thu Jan 3 19:21:40 2008 -0500

Added script to use git tools for automatically creating a version number based on the last tag, the number of commits since the last tag, the current branch name (if not master), and a checksum of any uncommitted modifications.

Startup text shows the version number.


Commit: 508c2c2f0398f881e24ef17e2dc16a54d3e99bb2
Author: Stephen Sinclair
Date: Thu Nov 1 22:42:30 2007 -0400

Physics simulation aggregate should have been included previously.


Commit: 01ee12d84f00fdd1d5eb898e393699687296b843
Author: Stephen Sinclair
Date: Tue Oct 23 21:14:13 2007 -0400

Added server to OscBase arguments to avoid globals.


Commit: ef42b2521432c36470ec40e212b34ae1fbfffbce
Author: Stephen Sinclair
Date: Tue Oct 23 18:51:33 2007 -0400

Return statement missing in a handler.


Commit: 5860cee67fcf742e2fd6ec15b2c6533f529baafc
Author: Stephen Sinclair
Date: Tue Oct 23 18:43:53 2007 -0400

Replaced m_classname with pointer to parent object. OSC addresses are likely wrong.


Commit: 7b0e1d15566c48a9616a92c9b3c22cf47dfd1e7c
Author: Stephen Sinclair
Date: Tue Oct 23 11:12:10 2007 -0400

Added new sources to build. Split OscBase into its own file.


Commit: 4d0118d712e3a7b10e8b3dbc739bdf734bfb9a6f
Author: Stephen Sinclair
Date: Tue Oct 23 09:40:24 2007 -0400

Added Simulation class and ideas on ShapeFactory.


Commit: fa82343690fb26e244a5d33e6c2ee0f84edd5f12
Author: Stephen Sinclair
Date: Wed Jan 2 15:23:49 2008 -0500

[linux] Patch on CHAI 3D is no longer needed to compile under linux for CHAI 1.61.


Commit: 2432a9cb1cdcfaf1641f73781864e91a483c6553
Author: Stephen Sinclair
Date: Wed Jan 2 14:33:34 2008 -0500

Link to liblo the usual way for Linux (with -l option, as before).


Commit: 454d96ff5e2e54eb8a8d02f0e91b121b4808a66d
Author: Stephen Sinclair
Date: Wed Jan 2 03:52:02 2008 -0500

Use LINKFLAGS to link directly to liblo.a rather than using the -l library option.

This was needed due to the modifications to liblo. If liblo is installed on the system used to compile dimple, it may link to the wrong version of the library not containing the added routines. This ensures that the linker will use the custom liblo.


Commit: e0cc97e76f86aa376c1797b809121aadfa71e6e0
Author: Stephen Sinclair
Date: Wed Jan 2 00:43:10 2008 -0500

[darwin] Fixed chai3d-1.61 patch. Added libsamplerate to bootstrap script.


Commit: 71f314d1054c1c523400de383cdb58167f208808
Merge: 19b8124… 126faf2… Author: Stephen Sinclair
Date: Thu Dec 20 01:42:32 2007 -0500

Merge branch 'master' of sinclairs@132.206.14.8:git/dimple into testingpull1


Commit: 19b81242440962f2dd6aab675d44dd6cd5219276
Author: Stephen Sinclair
Date: Thu Dec 20 01:37:58 2007 -0500

Added number box for pitch of modal synth in beepcollide subpatch.


Commit: ad46760928659ddd9d3b20b8f577f000612ea230
Author: Stephen Sinclair
Date: Thu Dec 20 01:36:21 2007 -0500

Add body force instead of setting it for proxy object.


Commit: 126faf234188c69ca524b87edf1ee3653ea7502a
Author: Stephen Sinclair
Date: Thu Nov 1 21:29:08 2007 -0400

Added preprocessor define needed by a Chai3D header under Linux.


Commit: f40f75faa8428b67ba17d75eb8049289c18aa19e
Author: Stephen Sinclair
Date: Tue Oct 9 23:59:42 2007 -0400

Moved back to idmil.org server for introsca submodule master, now that it is working correctly.


Commit: 045195f337676d4053ee25d4aad2215292991d23
Author: Stephen Sinclair
Date: Mon Oct 8 16:50:06 2007 -0400

Upgraded to CHAI3D version 1.61 (stable) on Windows.


Commit: 698bfdd8b65cf0af875a1c91418712e225348e15
Author: Stephen Sinclair
Date: Sun Oct 7 21:53:25 2007 -0400

Added atomic_ops to the bootstrap script. It is needed by libintrosca, so possibly libintrosca will get its own bootstrap script in the future.


Commit: ca403d50df9ed07b93e1b977a24cd986fa55c1ba
Author: Stephen Sinclair
Date: Sun Oct 7 16:16:41 2007 -0400

Integrated libsamplerate compilation into the bootstrap script for VS 2005 Express, and also fixed wrong runtime library for ODE.


Commit: c0a68182c20f0619b16b6e428a4f284a274f0409
Author: Stephen Sinclair
Date: Sun Sep 30 19:56:02 2007 -0400

Moved introsca submodule back to music server until idmil.org is configured correctly.


Commit: 40c3ed267f5c6393eca79828d8285750f0f758c5
Author: Stephen Sinclair
Date: Sun Sep 30 01:04:52 2007 -0400

Fixed gcc error cColorb &b= should not have been a reference.


Commit: ebe78bdea5055bb868466e8e71d6190ab3b3f3d0
Author: Stephen Sinclair
Date: Sun Sep 30 00:42:56 2007 -0400

Moved introsca submodule to web-based repository.


Commit: 356614632470e644c16090702201e9f307b79c72
Author: Stephen Sinclair
Date: Sat Sep 29 01:26:02 2007 -0400

Imported introsca as a submodule.


Commit: 0972202448fb54286188ca9b01b3d57956f14e47
Author: Stephen Sinclair
Date: Thu Sep 27 05:28:09 2007 +0000

This file manually imported from old repository due to some md5 checksum problem in dumpfile.


Commit: e0b87e1a3c5ce266561e627ee00032e5e22433a9
Author: Stephen Sinclair
Date: Sat Sep 22 18:28:01 2007 +0000

Identified problem with signal data: PureData provides data at too slow a rate, so haptics oscillation feels crunchy due to drop-out.


Commit: e4bdc87c228a4c6bf165645a146b808ffeb83b9a
Author: Stephen Sinclair
Date: Tue Aug 14 20:21:45 2007 +0000

Fixed reference to temporary variable in texture code, ode_hapticsLoop().


Commit: 165a48e1ac64cf054d7b412e776482ba63ff30c4
Author: Stephen Sinclair
Date: Tue Aug 7 20:14:22 2007 +0000

Added cubes demo. (Many cubes in a room.)


Commit: 8731dc295dada8f8fa2c355ef91ef34bab31fa43
Author: Stephen Sinclair
Date: Mon Aug 6 18:53:08 2007 +0000

Removed accidental left-over reference to cForceShadingProxy.


Commit: adf1ec33bcac8519a7d1b0225909d879137b984e
Author: Stephen Sinclair
Date: Mon Aug 6 00:51:04 2007 +0000

Initial tests for haptic textures. Modulating force by texture color. Needs lots of work!


Commit: da799b49826c2cb7866fa7c062c200fd1f220a8d
Author: Stephen Sinclair
Date: Sun Aug 5 18:42:15 2007 +0000

Fixed test file.


Commit: 9fccaa7a5d290666b5308ed252fe36eaf0cd70e0
Author: Stephen Sinclair
Date: Sun Aug 5 18:14:11 2007 +0000

Update msvc7 project for libsamplerate.


Commit: 0494db44b17dd5089688e4a5b242f9e950b2f516
Author: Stephen Sinclair
Date: Sun Aug 5 17:34:55 2007 +0000

Renaming MSVC project/sln files.


Commit: a8fa43ac83773d4b92dbf908c85f318204a05ab1
Author: Stephen Sinclair
Date: Fri Aug 3 15:43:39 2007 +0000

Update linux Flext build for libsamplerate.


Commit: 7779f9c7dee1c24283d9f37393aaebda1948283c
Author: Stephen Sinclair
Date: Fri Aug 3 00:48:47 2007 +0000

Streaming of signal data into the haptic thread through the Flext object is working. Limited to one channel, and there is some instability. Added preliminary code to support libsamplerate in the bootstrap script.


Commit: d7ca5e70193f33e9e4f9865bbee08a5cd2ed1261
Author: Stephen Sinclair
Date: Thu Aug 2 20:55:33 2007 +0000

Fixed bug in haptics deadlock for Flext object by moving poll_requests() from the main loop (i.e., Pd thread) to the ODE thread. Finished implementing outlet sending in Flext object. Fixed Flext build files for IDMIL computer + Visual Studio 2003.


Commit: a8f59f41c19d2a5668078e62be9456b128f2acd3
Author: Stephen Sinclair
Date: Wed Aug 1 20:17:52 2007 +0000

Mostly fixed proxy-through-object bug! Moved syncPoses() call to haptic thread.


Commit: 4795f81396ee91483038da20b99509a827dd4556
Author: Stephen Sinclair
Date: Wed Aug 1 15:00:20 2007 +0000

Oscillation works, though it is difficult to remove DC offset, resulting in net movement of object. Need to formalize OSC messages and connect it with audio input.


Commit: a2b3e42c82f23a2a676452155cc7e825ad596001
Author: Stephen Sinclair
Date: Wed Aug 1 14:33:41 2007 +0000

Reverted to waiting for each message to be processed. When several messages are posted at once without waiting, messages intended for not-yet-created objects are lost because LibLo filters them. Fix will have to wait for a larger overhaul of the messaging system.


Commit: 40009fe11997acb2d0cef08d0c364de7a428badb
Author: Stephen Sinclair
Date: Wed Aug 1 04:16:59 2007 +0000

Messages queues are replaced by vector structures, which are now traversed completely in each iteration. Seems like some messages are getting lost, so still some debugging to do.


Commit: c12d0906621bff4dbd6abbf128a81fe2dcebdc1a
Author: Stephen Sinclair
Date: Wed Aug 1 02:22:33 2007 +0000

Fixed concurrency bug – main() was called poll_requests at the same time as draw(). Added test code for oscillation stuff, incomplete.


Commit: 72b70fd22b5abc46deae85e3752f524a68c3c22e
Author: Stephen Sinclair
Date: Tue Jul 31 20:37:09 2007 +0000

Beginning of code to allow streaming audio-rate data into physics and haptics threads.


Commit: fd091bbd382968565cffc34fe24b42731c437db6
Author: Stephen Sinclair
Date: Tue Jul 31 19:35:14 2007 +0000

Added code for a lock-free circular buffer.


Commit: 75253523ea90baf1d33a8970b5ba0e2181647a8f
Author: Stephen Sinclair
Date: Tue Jul 31 01:18:27 2007 +0000

Fixed for undefined fmaxf on Windows. Search parents during mesh contact with haptic proxy to discover ODE primitive.


Commit: 9fa111ae0560c25f75583eaa601d0cab61bd8a86
Author: Stephen Sinclair
Date: Sat Jul 28 20:50:05 2007 +0000

With some manual customization, able to build Pd external under Linux, Windows, OS X.


Commit: 75d0c85b016b1010634c86abdb1075aefe012771
Author: Stephen Sinclair
Date: Sat Jul 28 17:20:57 2007 +0000

Mesh objects now scaled in physics representation as well.


Commit: 662244881402b2835ff61cb59745ebb8ed1b159c
Author: Stephen Sinclair
Date: Sat Jul 28 16:18:16 2007 +0000

Mesh objects can be sized. Fixed remaining lo_server_thread_del_method() call which caused segfault when destroying objects.


Commit: a24efc47238ed29ef0e32fb677272e542bbb1de9
Author: Stephen Sinclair
Date: Sat Jul 28 03:32:02 2007 +0000

Basic code for loading mesh files. Seems to crash in ODE when using 3DS files, but obj files work okay.


Commit: 70f624a0358785d41d2cf3efdea207b43cf6b8d8
Author: Stephen Sinclair
Date: Sun Jul 22 21:32:21 2007 +0000

Test patch saved without windows open. build.sh renamed to flext_build.sh for clarity.


Commit: 058873b9a10be9e1f7be8f625454776c3a143c76
Author: Stephen Sinclair
Date: Sun Jul 22 20:50:41 2007 +0000

Merged changes for Flext object implementation.


Commit: 2ea7d177e874df5cc3f87100b8a237840159a2a1
Author: Stephen Sinclair
Date: Wed Jul 11 19:03:23 2007 +0000

Fixed empty function errors for VC++.


Commit: 9c45d9b852af63b07d17344b75893c8be605e112
Author: Stephen Sinclair
Date: Wed Jul 11 14:46:40 2007 +0000

Added function prototypes for more constraint responses. To be filled in soon.


Commit: 65b7ac46305a217f75bbf47a1d696749afe0e5b5
Author: Stephen Sinclair
Date: Mon Jul 9 20:37:15 2007 +0000

Hinge torque is reported as a proper OscScalar. OscValue is now passed a pointer to the owner.


Commit: 3d28e349cb2be2eeb16bad139842c78fa3aec07c
Author: Stephen Sinclair
Date: Tue Jul 3 21:25:10 2007 +0000

Basic texture mapping now supported. Friction is also now OSC-accessible.


Commit: e3208cae4382bf73cb6c9a429a928670b48ae5b2
Author: Stephen Sinclair
Date: Sun Jun 3 20:38:08 2007 +0000

Changed scale of values for the snake.


Commit: 7139c3b9a6d80d8b3d754ac430334faf8523e59f
Author: Stephen Sinclair
Date: Sun Jun 3 20:24:03 2007 +0000

Added 'snake' instrument, also included modal synth by Chuck Henry. (prev. rev)


Commit: 225ef6751f8d76f3a141c3bda74ad7da5e694113
Author: Stephen Sinclair
Date: Sun Jun 3 20:04:42 2007 +0000


Commit: b0804ba25c94a512db3536edd2487837559d61b7
Author: Stephen Sinclair
Date: Sat Jun 2 02:58:17 2007 +0000


Commit: 3fc05a64ba6cc8e43f7f05bc630ae0b090b60e47
Author: Stephen Sinclair
Date: Sat May 26 00:06:25 2007 +0000


Commit: c3005188742483850abb33c1890aa2b263a2cd40
Author: Stephen Sinclair
Date: Sat May 26 00:04:37 2007 +0000


Commit: 69db7c7bfa8eeb98193c3ff2dd7200a2bfd6fd00
Author: Stephen Sinclair
Date: Fri May 18 23:02:46 2007 +0000


Commit: 4953b5aa50257a4fe52a56e906dd0e2ed2928536
Author: Stephen Sinclair
Date: Fri May 18 22:26:25 2007 +0000

Added valuetimer.* files.


Commit: c32d7973281a87e3391a0462bfed6e8aa3c2613d
Author: Stephen Sinclair
Date: Fri May 18 21:42:16 2007 +0000

Removed test message.


Commit: 8c5cb6e18735cdc43d9adb57cf77d555f1c0fa44
Author: Stephen Sinclair
Date: Fri May 18 21:30:51 2007 +0000

Version bump for 0.0.6


Commit: d0c2a971996eaa0c1b6e75d56ac9afc1fb792425
Author: Stephen Sinclair
Date: Fri May 18 20:56:53 2007 +0000

Allow setting of color via /color message. (Weird threading issues ignored for now.)


Commit: c2d10e4e2798a97d469ce95252e67b05f10b766a
Author: Stephen Sinclair
Date: Fri May 18 19:01:06 2007 +0000

Unused return value for addValue and removeValue now void.


Commit: 2b340eb486e280b56eb6ea30ac4a0c04b031366a
Author: Stephen Sinclair
Date: Fri May 18 19:00:26 2007 +0000

Cleaned grab patch.


Commit: 2ffcf7c7d18261bb55e4c9395365929453f10cda
Author: Stephen Sinclair
Date: Fri May 18 18:52:19 2007 +0000

No longer open explorer window automatically.


Commit: 4d36ac9a6494154f0e82733df78508213368ba63
Author: Stephen Sinclair
Date: Fri May 18 17:38:12 2007 +0000

Classes for sending values at timed intervals.


Commit: 8bcccc5058d13ea5b73d68d99be1a904229645c2
Author: Stephen Sinclair
Date: Fri May 18 17:07:02 2007 +0000

Destroy messages now handled only by physics thread.


Commit: 59f595e577086eec46ca8adac10e23fae7ef2a70
Author: Stephen Sinclair
Date: Fri May 18 02:28:13 2007 +0000

OscVector3 and OscScalar now support callbacks for when the value is changed via OSC. OscObjects can now have their position and linear velocity changed.


Commit: ca1389a4f00e30153f7103bcf233b0df430df64b
Author: Stephen Sinclair
Date: Fri May 18 01:06:23 2007 +0000

Added a timer, running on physics thread, that can report values at per-value intervals.


Commit: 3537261105d1643e1890a0259aafea33d55a73f4
Author: Stephen Sinclair
Date: Thu May 17 03:25:24 2007 +0000

get handlers were sending values once for each thread, now only physics thread responds.


Commit: d2b2046329670a7a7c1b274384069be502d9e7ef
Author: Stephen Sinclair
Date: Thu May 17 03:21:56 2007 +0000

OscVector3 now has magnitude as an OscScalar. OscScalar now has OSC get handler.


Commit: 214fdaf5aeacff88894b9a4d7fe1fbdd201b269f
Author: Stephen Sinclair
Date: Thu May 17 02:29:00 2007 +0000

Using built-in makefilename instead of zexy's makesymbol.


Commit: eaf961f30ea9eeb4667d3976d1d78e7990b011ae
Author: Stephen Sinclair
Date: Thu May 17 00:59:25 2007 +0000

cVector3d references must be const to compile with temporary variables in gcc.


Commit: 2052eb646ea79b56311bf127a1f7f71a426a94e0
Author: Stephen Sinclair
Date: Wed May 16 23:11:33 2007 +0000

Added basic code to enable “grabbing” an ODE object and making it move with th e proxy. (ODE object becomes the proxy.) Still some problems to figure out with the object rotation, and spring coefficients need to be parameterized.


Commit: 5b3f50531ba0b706d99f349204bca8fc41fc6965
Author: Stephen Sinclair
Date: Sat May 12 20:04:42 2007 +0000

Physics thread was calling setRadius instead of setDynamicRadius.


Commit: cd6e54fac3c4175160ffa454a6aedc0e1b87986f
Author: Stephen Sinclair
Date: Fri May 11 20:48:54 2007 +0000

Added icon.


Commit: a6c70edb88aa63250afd3dcc122cc7b583988f1b
Author: Stephen Sinclair
Date: Thu May 10 18:34:57 2007 +0000


Commit: d71de632580584300248679bb6b669923fc02b0f
Author: Stephen Sinclair
Date: Thu May 10 16:52:14 2007 +0000

Added icon for OS X.


Commit: ed215711af62ff72458450188d2b2c7fae7c3e40
Author: Stephen Sinclair
Date: Thu May 10 16:12:43 2007 +0000

setSize depended on m_size which was modified in setDynamicSize.


Commit: 618dc2a5bf78bdb9999420175692b56567578c36
Author: Stephen Sinclair
Date: Wed May 9 20:49:38 2007 +0000

Added an icon, made with Blender.


Commit: 6984810bce4f8d7483d036981f7db5c8e0a1c8f9
Author: Stephen Sinclair
Date: Wed May 9 18:15:04 2007 +0000

Re-arranged test patch to make it more obvious what order to do things in.


Commit: 56644caff59d384d5699f2918a044045bd6c1dc5
Author: Stephen Sinclair
Date: Wed May 9 18:01:50 2007 +0000

Fixed some threading issues with object creation. Physics thread now has preprocessor define for update rate, currently 10 ms (100Hz). Test patch now specifies box size with variables.


Commit: b4c8fb02fb69b9379d8d7a9c8abce3b33942577b
Author: Stephen Sinclair
Date: Tue May 8 22:27:08 2007 +0000

Removed ODE_IN_HAPTICS_LOOP preprocessor define.


Commit: f2d3d024a12a9ffaacefbdcc614cfe2b8b2343b6
Author: Stephen Sinclair
Date: Tue May 8 21:50:38 2007 +0000

The handler_data structure is now passed to LibLo message handlers, so that they can use information such as knowing what thread is running. Messages are handled in both the physics and haptics threads. Still need to fix threading issues for object creation and destruction.


Commit: 47896ac3d1233cb746d810546b309916a01c0069
Author: Stephen Sinclair
Date: Thu May 3 15:00:54 2007 +0000

Preliminary support for native Cocoa interface. (not yet working, but proven to be possible)


Commit: d952cef92e8936025bf36276c5ee53b5d584cef8
Author: Stephen Sinclair
Date: Thu Apr 26 13:58:18 2007 +0000

Register handler for gravity 3-vector.


Commit: 777e5144a547fc1fb97f3b943ba1541ef640ea12
Author: Stephen Sinclair
Date: Sat Apr 14 00:32:45 2007 +0000

Check cursor before dereferencing.


Commit: f4f7a7c6a9052c54bc345f26b42602c0bb237a5d
Author: Stephen Sinclair
Date: Wed Apr 11 23:20:34 2007 +0000

Added local scons to bootstrap script so user doesn't need to have it installed.


Commit: f05158bb71c1f669c539b1aa61366d5776aef0fe
Author: Stephen Sinclair
Date: Wed Apr 11 21:50:45 2007 +0000

Removal of some debugging code.


Commit: 71ca00b9a49a8ea80277df41317044d610a770f0
Author: Stephen Sinclair
Date: Wed Apr 11 21:49:19 2007 +0000

Needed for scons build.


Commit: 0c18a6f0f8c1cfd9bdeb044926268b65cbf1254d
Author: Stephen Sinclair
Date: Wed Apr 11 21:48:38 2007 +0000

Now using scons, should perhaps be added to the bootstrap script.


Commit: c7476c73d20ecba4c815bae58601798121a4e7cd
Author: Stephen Sinclair
Date: Wed Apr 11 16:19:11 2007 +0000

Reverted to VS2005exp versions.


Commit: 21b4627d44f68a10678fc8810e417a8a32e138c5
Author: Stephen Sinclair
Date: Wed Apr 11 16:17:15 2007 +0000

Tweaks to get chai3d, freeglut, pthreads to compile automatically under Visual Studio 2003. Also automatically pulls back the version of dimple.sln and dimple.vcproj, so remember not to check these in again in the future when using VS 2003.


Commit: 353c054bf2d3829771d5da6d83f68906f3bb9759
Author: Stephen Sinclair
Date: Wed Apr 11 03:02:41 2007 +0000

Fix for chai vcproj conflict between debug & release builds – now creates chai3d_complete_d.lib for debug.


Commit: 230fde4c99e13e97dcb5db3b58e56ceced1e5885
Author: Stephen Sinclair
Date: Wed Apr 11 02:47:59 2007 +0000

Moved source files to src/ subfolder.


Commit: 92debdfb9ccca162e9608cadc44a990b5ceb8d39
Author: Stephen Sinclair
Date: Wed Apr 11 02:29:45 2007 +0000

Updated to point libs and includes at the new libdeps folder.


Commit: 80153e94f87a4c0b498390004674ed94a0501f6d
Author: Stephen Sinclair
Date: Wed Apr 11 02:23:38 2007 +0000

Moved library dependancies into a subfolder “libdeps”


Commit: b20e7a3f18b4ca5afa28b64f0b67d600dd035bd7
Author: Stephen Sinclair
Date: Wed Apr 11 02:08:39 2007 +0000

Updates of chai and liblo bootstrapping patches for Visual Studio 2005 Express.


Commit: 5128956054c68041c2cf897b76ecb7f4b5e1e7b5
Author: Stephen Sinclair
Date: Sun Apr 8 03:46:13 2007 +0000

Added static builds of pthread and freeglut for Windows. Almost finished supporting Visual Studio 2005 Express. (Works if you build LibLo & CHAI3D manually.)


Commit: 3b4ed68465884bb9333e1d07449bbe817da56183
Author: Stephen Sinclair
Date: Sat Apr 7 00:07:21 2007 +0000

Better explanation of the included demos.


Commit: c3051644a71ae7e62a45529e43080d292be06a2f
Author: Stephen Sinclair
Date: Fri Apr 6 23:45:13 2007 +0000


Commit: 34b5846e0e547cb6a19d944cb0b5360bce83b6ee
Author: Stephen Sinclair
Date: Fri Apr 6 23:30:51 2007 +0000

Update version number.


Commit: 3319827a638c7a72ba1be833035638c8a8c0ee07
Author: Stephen Sinclair
Date: Fri Apr 6 23:29:56 2007 +0000

Properly poll chai requests in poll_requests() when haptics not running.


Commit: afcebaa6cd98c29e58a403beced2267705ed2204
Author: Stephen Sinclair
Date: Fri Apr 6 23:27:33 2007 +0000

Properly poll CHAI requests when haptics not running.


Commit: 89778122aa9af44cdac7cfa56fe6b4642dd42b0f
Author: Stephen Sinclair
Date: Fri Apr 6 22:56:18 2007 +0000

Added another callback to LibLo, this time just before calling the handler function. Handler is then defered to the ODE and CHAI threads. ODE thread handles all messages for now.


Commit: c4484d4fbaa4adbc74408e6692de7c6bc657209f
Author: Stephen Sinclair
Date: Fri Apr 6 20:06:17 2007 +0000

LibLo changes: dispatch_callback now gives correct data pointer & length so that it can be backed up for calling later.


Commit: edaedcb2731a32c068c4e5fb89d5651fb11678a4
Author: Stephen Sinclair
Date: Thu Apr 5 23:08:01 2007 +0000


Commit: c390a07a29f531ef8ddba834596a40c8f9fd0df5
Author: Stephen Sinclair
Date: Thu Apr 5 22:59:49 2007 +0000

Patched liblo to allow inserting a callback before internal function dispatch_method is called. This should allow dispatching methods to handlers inside the appropriate threads.


Commit: cca0d83254ba13da69711cf5e1f7a46f5d1155d9
Author: Stephen Sinclair
Date: Thu Apr 5 22:55:29 2007 +0000


Commit: 0dcf1073f3a0a380be4abf69987d917d5d6b73a3
Author: Stephen Sinclair
Date: Tue Apr 3 21:39:42 2007 +0000

Patch now starts PureData's audio DSP automatically.


Commit: 9a0b3782665add370eb06d5b22fac655b4828a2c
Author: Stephen Sinclair
Date: Tue Apr 3 21:34:28 2007 +0000

Now sends combined velocity vector magnitude with the /object/collided message. Added more locking to try to improve interthread issues, though it is still very hacky.


Commit: 5c06a5b27696736b98fcfb75465950216a3da839
Author: Stephen Sinclair
Date: Thu Mar 29 16:06:57 2007 +0000

Spaces in file path prevented COMPILE variable from working in bootstrap.sh.


Commit: 6a6f1c0ac6974c411b8f62bece959e8c8e69fdbc
Author: Stephen Sinclair
Date: Thu Mar 29 15:58:25 2007 +0000

Using PROGRAMFILES environment variable for locating Visual C++ compiler. (Cygwin)


Commit: ffcec85fa7c461e114881d3a136fdf5f05954ecc
Author: Stephen Sinclair
Date: Wed Mar 28 22:03:44 2007 +0000

Fixed removal of constraints during clear. (Should have been removed earlier.)


Commit: 15b9ee46d2d5ef5c8f5707bb7a88d5226bf6fbb4
Author: Stephen Sinclair
Date: Wed Mar 28 22:00:51 2007 +0000

Removed clearFlag code. (still need to remove much “ode in haptics thread” stuff.) Added fflush() to the ode_threadproc(), questionable, but helps for running under Windows. Removed LOCKING between ODE and CHAI threads. They were interfering with each other, causing slowdown. Better memory protection needs to be implemented quite desperately. Added a LOCK WAIT before sphereCreate and prismCreate.


Commit: 351d4cb91673406378989a7eb304a138f8bcad4d
Author: Stephen Sinclair
Date: Wed Mar 28 16:03:10 2007 +0000

Fixed liblo patch to remove LO_MARKER stuff. Removed last instance of osc_chai_glut from bootstrap.sh. Fixed *enable messages which used wrong type. (double instead of int) Added ODE debug handler to remove message box pop-up. (windows) Added “return 0” for functions that required a return code.


Commit: b794caaafc8f5e0c68863ead80f763b9e4f0e910
Author: Stephen Sinclair
Date: Tue Mar 27 22:58:15 2007 +0000

Version 0.0.1 alpha release.


Commit: e95a394e4267ff792a6238e420bf2a9a950fc84b
Author: Stephen Sinclair
Date: Tue Mar 27 21:58:50 2007 +0000

Renamed MSVC project/solution files to DIMPLE.


Commit: c41d25b691393c3d08f47d6287f578f94dc57bc6
Author: Stephen Sinclair
Date: Tue Mar 27 21:56:55 2007 +0000

Renamed the project to “DIMPLE: The Dynamic Interactive Musically PhysicaL Environment”. Added object-world fixed constraints to the object's link list, so that they are destroyed properly. Added GPL license file.


Commit: a9913284a33c8fa5e4336b1bb7a9fc805f30f3ca
Author: Stephen Sinclair
Date: Tue Mar 27 20:08:15 2007 +0000

Added collide/get messages, global and per-object. Still must determine collision force.


Commit: 998921ca79b60ddceeddff2c941e1985241158e9
Author: Stephen Sinclair
Date: Tue Mar 27 18:12:22 2007 +0000

Basic collision messages have been added.


Commit: 0def7dc4a8a92015c6a865524fa1718d0f0b3068
Author: Stephen Sinclair
Date: Fri Mar 23 01:34:16 2007 +0000

Chai patch for linux & gcc-4.1


Commit: 7df99df69d4f5c57abe44d1e116e585c18978f4d
Author: Stephen Sinclair
Date: Thu Mar 22 23:43:30 2007 +0000

First attempt to handle collision tracking. (Not working.)


Commit: 66d912282bedc53cbb30e4edca106ccc25b280cc
Author: Stephen Sinclair
Date: Thu Mar 22 20:36:49 2007 +0000


Commit: 653b62005d046f6be299bbb90668f42922b674c3
Author: Stephen Sinclair
Date: Thu Mar 22 15:38:45 2007 +0000

On Darwin, ODE's dylib wasn't removed.


Commit: 7006009285628df23803facc99e4a84a68c662f1
Author: Stephen Sinclair
Date: Thu Mar 22 03:32:07 2007 +0000

More bootstrap patch fixes for Linux.


Commit: 264567fbee7e4c1b2333efa09fdcc148bba2307c
Author: Stephen Sinclair
Date: Thu Mar 22 02:42:49 2007 +0000

Fixed library runtime versions for MSVC


Commit: 0fe56ebda19f90652ca06f77d1c9e260a25c6453
Author: Stephen Sinclair
Date: Thu Mar 22 01:46:27 2007 +0000

Auto-build using the command-line for Visual Studio 2003!


Commit: bd8b6acacd2ef1900c03530f6bd82bbd78dda2a5
Author: Stephen Sinclair
Date: Thu Mar 22 00:55:19 2007 +0000

Windows fixes for bootstrapping.


Commit: 14d25712f8bb9e8cdad441333d9246f7813f5f14
Author: Stephen Sinclair
Date: Thu Mar 22 00:35:57 2007 +0000

Linux fixed for recent Darwin stuff.


Commit: fd1f4f01c8ee0f622de7bfe2d60c75a15c411690
Author: Stephen Sinclair
Date: Thu Mar 22 00:12:35 2007 +0000

Support for Darwin!


Commit: 2152c6067f6c5c5b96f9467fa05b7a5dc8f4ec20
Author: Stephen Sinclair
Date: Wed Mar 14 19:09:38 2007 +0000

Fixed a few problems with object deletion, but some still remain. It is becoming more and more obvious that a real restructuring of the inter-thread communication will need to happen soon.


Commit: d3678809b2004faadb091191531cfb26f7415a1a
Author: Stephen Sinclair
Date: Wed Mar 14 16:44:31 2007 +0000

Fixes for synchronization problems that showed up on Win32


Commit: b00a07516efe15cc2dbfbb28125343ac53b5e943
Author: Stephen Sinclair
Date: Wed Mar 14 16:05:48 2007 +0000

/position/get implemented.


Commit: a0273e31bbc370050e94a92a0806b25bd909c0cf
Author: Stephen Sinclair
Date: Sun Mar 4 21:40:08 2007 +0000

Introduced OscVector3 and OscScalar objects which can handle OSC stuff for 3-vector and scalar values, respectively. OscObject uses OscVector3 to track velocity and acceleration.


Commit: b8fecd1da80608e38ed87fedca8d200ecaa7b6e8
Author: Stephen Sinclair
Date: Fri Mar 2 07:35:59 2007 +0000

Objects with fixed joints to “world” are now non-body geoms, as recommended by the ODE wiki. This makes them much more stable.


Commit: e980878dabaaaf45c1df1874bf83c0b9eeaebe31
Author: Stephen Sinclair
Date: Fri Mar 2 06:45:27 2007 +0000

Temporary fix for locking problems during deletion. Will have to find a real fix for this, possibly affecting the whole queue mechanism.


Commit: 6f8ef3809bb9ca204ca6ad06efc4510b127f1f19
Author: Stephen Sinclair
Date: Thu Mar 1 21:10:30 2007 +0000

Fixed queueing to compile under Windows. Fixed marbles patch to create objects in a different order so that they are less affected by gravity and other parameters. (Really it's a work-around for not yet supporting compound objects.)


Commit: 5f9ba8814d196c73dbd2c8183f724ef293c19b6d
Author: Stephen Sinclair
Date: Mon Feb 26 02:24:59 2007 +0000

A more serious non-blocking callback model for synchronous actions between threads. Still need to fully replace the LOCK/UNLOCK_WORLD macros.


Commit: 38c2f9135aa6fcd53ffffffd16d350e5ab640920
Author: Stephen Sinclair
Date: Mon Feb 19 22:42:09 2007 +0000

Added a real-time queue mechanism to sit between OSC, CHAI, and ODE threads, which still needs to be put into use.


Commit: aedec4cd4d8f33e03357be58c8118582e05d4229
Author: Stephen Sinclair
Date: Thu Feb 15 17:57:48 2007 +0000

When haptics hasn't started, ODE is now calculated in GLUT loop. Timestep is adjusted accordingly. Eventually ODE should get its own timer callback.


Commit: 0b99e9e43ffbde310666719fb68f9d043cf31d7f
Author: Stephen Sinclair
Date: Thu Feb 15 16:58:44 2007 +0000

Sets default friction for prisms. Note: Chai doesn't support friction for ShapeSphere!


Commit: 31833abc1780d671d7f0b0aa07f8b3df532bd8a1
Author: Stephen Sinclair
Date: Wed Feb 14 23:37:06 2007 +0000

Some bug fixes on locking and addition of /force/magnitude/get for the Hinge constraint. Pd patch now uses [metro] object to request force stick hinge force and uses it to modulate a sine oscillator.


Commit: 6be9a92dcb974b55f7de993fcf75eafc92f2f17d
Author: Stephen Sinclair
Date: Wed Feb 14 03:53:16 2007 +0000

Beginnings of some thread locking code.


Commit: e437220f284b8d8e799fbbb314360872268ec50a
Author: Stephen Sinclair
Date: Wed Jan 31 00:10:57 2007 +0000


Commit: d747c883dfcf3cb3e5a1fe8c074dfbe3a5e9f5e9
Author: Stephen Sinclair
Date: Tue Jan 30 01:00:50 2007 +0000

Removed OSC for Haptics section, moved things around. Lots of edits.


Commit: d204be1f4f6962cb37671c358332f6ea6d9b3200
Author: Stephen Sinclair
Date: Mon Jan 29 04:34:48 2007 +0000

Added fixed constraints. Started working on composite objects.


Commit: 836b04a22d61d9972e86d5d224d30841ebc4a86b
Author: Stephen Sinclair
Date: Thu Jan 25 21:46:59 2007 +0000

Implemented Hinge2, Universal joints. Added simuationCallback to OscConstraint, allowing constraint responses. Currently “spring” is implemented.


Commit: 42f5e29695ca0bc1af5bbe4d243279d54308112e
Author: Stephen Sinclair
Date: Thu Jan 25 17:08:46 2007 +0000

Hinge constraint can be created. Force Stick simulation now possible. Still need to implement “motored” hinges.


Commit: ae439d1b00733e412448ffd89bc6580504f0664b
Author: Stephen Sinclair
Date: Thu Jan 25 02:53:59 2007 +0000

Constraints are more reliable now. Destroying them informs associated objects. Destroying either object destroys constraints between them.


Commit: a19fbd79367a32521118a9b5c9ff0e557d5a59fa
Author: Stephen Sinclair
Date: Wed Jan 24 22:10:08 2007 +0000

Now possible to create a ball link constraint. Need to ensure constraints are destroyed when associated objects are destroyed.


Commit: d6e196fc7c30e28513b81a321d72dc196d22b383
Author: Stephen Sinclair
Date: Wed Jan 24 20:29:34 2007 +0000

Objects now maintain their own OSC message handlers. Objects can now be deleted, all destructors called safely.


Commit: 12d0192e9152001d900c13816627c0f7b6ce9964
Author: Stephen Sinclair
Date: Wed Jan 24 16:39:46 2007 +0000


Commit: 141ba3a88ad8da1ce643c9c6fa14b2f0a212a3dc
Author: Stephen Sinclair
Date: Wed Jan 24 06:07:16 2007 +0000


Commit: f88c3e66e54c5eb834c1df37a11d87972ebe9db6
Author: Stephen Sinclair
Date: Wed Jan 24 04:36:57 2007 +0000


Commit: 41aac43c69e920703f300ff3989bee6dbfe4b73a
Author: Stephen Sinclair
Date: Wed Jan 24 03:54:26 2007 +0000


Commit: d410c0e9493031abaedff6b2e3cff0428a5a5541
Author: Stephen Sinclair
Date: Tue Jan 23 20:57:38 2007 +0000


Commit: 6d21c259c9dfe248bb97dc2ce4a140daf02d5f66
Author: Stephen Sinclair
Date: Mon Jan 22 22:29:13 2007 +0000


Commit: 2ced38a828944dcd9c94931bf749de059c162639
Author: Stephen Sinclair
Date: Mon Jan 22 14:41:39 2007 +0000


Commit: 09e92ba9f46e92c803ed962161cc0fb2c697516d
Author: Stephen Sinclair
Date: Fri Jan 19 22:53:45 2007 +0000

Pattern matcher for * ? address matching in OSC messages


Commit: 0abc7f773013c6445ce204ecc89579cad45b48eb
Author: Stephen Sinclair
Date: Fri Jan 19 03:13:59 2007 +0000


Commit: 24ab38e9ab57a3603e4724a03b58e931e92e66b0
Author: Stephen Sinclair
Date: Thu Jan 18 01:01:11 2007 +0000


Commit: 36e3e0cd73ea4b22db57137cf77548ce98690f10
Author: Stephen Sinclair
Date: Wed Jan 17 20:25:00 2007 +0000


Commit: 1c6ed6dce7e3326ce8079e31a7a134d710327da1
Author: Stephen Sinclair
Date: Wed Jan 17 07:21:03 2007 +0000


Commit: caeb981df2f5d862b152f7614019082f07012d12
Author: Stephen Sinclair
Date: Wed Jan 17 03:23:41 2007 +0000


Commit: 620c98b66a0c3a3dc4f1ac84dfed3d08c7c0dc32
Author: Stephen Sinclair
Date: Wed Jan 17 03:23:22 2007 +0000


Commit: a362394e0f95d78c83b3ec42afcb67d689a7292a
Author: Stephen Sinclair
Date: Tue Jan 16 23:24:35 2007 +0000


Commit: bf409cd7194c4c8ec417240ee723fe9d67ab4937
Author: Stephen Sinclair
Date: Tue Jan 16 22:54:34 2007 +0000


Commit: 5e52b67d821059664afeeacc87aef316676097ed
Author: Stephen Sinclair
Date: Tue Jan 16 18:26:08 2007 +0000


Commit: 75b63e2dbdecd724b6c4969ac55afefa93fe4956
Author: Stephen Sinclair
Date: Tue Jan 16 00:16:55 2007 +0000


Commit: c078dfebc33ec77e51be2f6ecce645faf1e1e91e
Author: Stephen Sinclair
Date: Tue Jan 16 00:10:57 2007 +0000


Commit: aba1f3e2b960f0a4803b5d56167d122af8b88367
Author: Stephen Sinclair
Date: Sat Jan 13 18:57:00 2007 +0000


Commit: e7b9af7c66b5d8f0ff4e485d37d75a413bbd6d0d
Author: Stephen Sinclair
Date: Sat Jan 13 00:20:40 2007 +0000


Commit: 37791dcd32d996c86f7e6b7c31311e492db854ed
Author: Stephen Sinclair
Date: Fri Jan 5 17:46:47 2007 +0000

* empty log message *


Commit: 98ed2bdc28eaec39982ba30177838a6edb88c4ab
Author: Stephen Sinclair
Date: Thu Jan 4 21:55:09 2007 +0000

* empty log message *


Commit: f71d1e7df8c1c2cdb16b173636e1ee1e4e2bd85d
Author: Stephen Sinclair
Date: Tue Jan 2 16:05:38 2007 +0000

* empty log message *


Commit: 65120580abd3e607d07bc2573a9a578dcdbccef0
Author: Stephen Sinclair
Date: Wed Dec 20 22:01:45 2006 +0000

* empty log message *


Commit: dfed1526713a44ba17a54bd4bd1929a54396b705
Author: Stephen Sinclair
Date: Wed Dec 20 17:27:44 2006 +0000

* empty log message *


Commit: 4097db75bd5a8f770dc32a4a4c87156651ae26d3
Author: Stephen Sinclair
Date: Wed Dec 20 17:23:40 2006 +0000

* empty log message *


Commit: 6e822741e1f366b729e45175846e4580110fce6a
Author: Stephen Sinclair
Date: Wed Dec 20 15:58:45 2006 +0000

* empty log message *


Commit: 82f28783267ee9919c7930daae453fdfdafdd84a
Author: Stephen Sinclair
Date: Wed Dec 20 01:21:56 2006 +0000

* empty log message *


Commit: 0b1a227037d6306bdd04da92fd2bb9ddd0e41a73
Author: Stephen Sinclair
Date: Fri Dec 15 04:15:34 2006 +0000

* empty log message *