Nodebundle for playing with nodes

 From:  Michael Gibson
7777.1680 In reply to 7777.1678 
Hi Brian, thanks I can reproduce it now. It looks like the problem is the same objects are getting added to the geometry database multiple times, when Run is pushed there are 9 objects added to the geometry database, then when Apply is pushed the same 9 objects are added again but they are in the geometry database already.

I can update MoI so that it can tolerate this situation better, but it can also be fixed in vector.js in the applyVec() function, try this updated applyVec function:

code:
function applyVec(that){var i;for(i=0;i<that.tempvec.length;i++) { var obj = that.tempvec.item(i);
if ( obj.databaseState != 2 /*2 = ObjectDatabaseState_InDatabase*/ ) moi.geometryDatabase.addObject(obj);} }


This version will check if it is already in the geometry database and not add it again if so. The obj.databaseState property returns a numeric value which means:

0: ObjectDatabaseState_Unknown
1: ObjectDatabaseState_Unattached
2: ObjectDatabaseState_InDatabase
3: ObjectDatabaseState_Deleted

For the next beta I'll update geometryDatabase::addObject() so if an object that is already in the database is attempted to be added again it will ignore it instead of getting things corrupted.

- Michael