You can access all the collisions stored by Reactor - see Interface: reactorInterface for details on collision-related methods.
The following MAXScript code returns a list of Collision_Info ReferenceTarget objects, which in turn contain information about the single collisions:
Example:
cols = reactor.getStoredCollisions()
#(ReferenceTarget:Collision_Info, ReferenceTarget:Collision_Info, ....)
firstCol = cols[1]
You can access the collision information via the following
Collision_Info Interface:
Interface: collisionInterface
Properties:
.time : time : Read|Write
Get/Set the time of the collision.
.nodeA : node : Read|Write
Get/Set the first collision node.
.nodeB : node : Read|Write
Get/Set the second collision node.
.nameA : string : Read
Get/Set the name of the first collision node.
.nameB : string : Read
Get/Set the name of the second collision node.
.pointInWorldSpace : point3 by value : Read|Write
Get/Set the world space collision point.
.normalBToAInWorldSpace : point3 by value : Read|Write
Get/Set the world space normal vector from the second to the first node.
.normalRelativeVelocity : float : Read|Write
Get/Set the relative velocity between the two collision nodes along the normal vector.
.phantom : enum : Read|Write
phantom enums: {#notPhantom|#entering|#leaving}
Get/Set the phantom property of the collision.
Obviously, since all properties are both read and write enabled, you can not only access the actual collision parameters, but set up your own collisions and write the information back to Reactor using the .setStoredCollisions method in the Interface: reactorInterface
See also the Reactor Online Help for additional information and examples of Stored Collision Info and MAXScript access.
See also
MAXScript Extensions for Reactor