Module ode :: Class SpaceBase
[show private | hide private]
[frames | no frames]

Type SpaceBase

object --+    
         |    
GeomObject --+
             |
            SpaceBase

Known Subclasses:
HashSpace, QuadTreeSpace, SimpleSpace

Space class (container for geometry objects).

A Space object is a container for geometry objects which are used to do collision detection. The space does high level collision culling, which means that it can identify which pairs of geometry objects are potentially touching.

This Space class can be used for both, a SimpleSpace and a HashSpace (see ODE documentation).
>>> space = Space(type=0)   # Create a SimpleSpace
>>> space = Space(type=1)   # Create a HashSpace

Method Summary
  __init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
  __iter__(x)
x.__iter__() <==> iter(x)
  __len__(x)
x.__len__() <==> len(x)
  __new__(T, S, ...)
T.__new__(S, ...) -> a new object with type S, a subtype of T
  add(geom)
Add a geom to a space.
  collide(arg, callback)
Call a callback function one or more times, for all potentially intersecting objects in the space.
GeomObject getGeom(idx)
Return the geom with the given index contained within the space.
int getNumGeoms()
Return the number of geoms contained within the space.
bool query(geom)
Return True if the given geom is in the space.
  remove(geom)
Remove a geom from a space.
  _id(...)
    Inherited from GeomObject
  __delattr__(...)
x.__delattr__('name') <==> del x.name
  __getattribute__(...)
x.__getattribute__('name') <==> x.name
  __setattr__(...)
x.__setattr__('name', value) <==> x.name = value
  disable()
Disable the geom.
  enable()
Enable the geom.
6-tuple getAABB()
Return an axis aligned bounding box that surrounds the geom.
Body getBody()
Get the body associated with this geom.
long getCategoryBits()
Return the "category" bitfields for this geom.
long getCollideBits()
Return the "collide" bitfields for this geom.
3-tuple getPosition()
Get the current position of the geom.
(w,x,y,z) getQuaternion()
Get the current orientation of the geom.
9-tuple getRotation()
Get the current orientation of the geom.
Space getSpace()
Return the space that the given geometry is contained in, or return None if it is not contained in any space.
bool isEnabled()
Return True if the geom is enabled.
bool isSpace()
Return 1 if the given geom is a space, or 0 if not.
bool placeable()
Returns True if the geom object is a placeable geom.
  setBody(body)
Set the body associated with a placeable geom.
  setCategoryBits(bits)
Set the "category" bitfields for this geom.
  setCollideBits(bits)
Set the "collide" bitfields for this geom.
  setPosition(pos)
Set the position of the geom.
  setQuaternion(q)
Set the orientation of the geom.
  setRotation(R)
Set the orientation of the geom.
    Inherited from object
  __hash__(x)
x.__hash__() <==> hash(x)
  __reduce__(...)
helper for pickle
  __reduce_ex__(...)
helper for pickle
  __repr__(x)
x.__repr__() <==> repr(x)
  __str__(x)
x.__str__() <==> str(x)

Method Details

__init__(...)
(Constructor)

x.__init__(...) initializes x; see x.__class__.__doc__ for signature
Overrides:
ode.GeomObject.__init__

__iter__(x)

x.__iter__() <==> iter(x)
Returns:
iter(x)

__len__(x)
(Length operator)

x.__len__() <==> len(x)
Returns:
len(x)

__new__(T, S, ...)

T.__new__(S, ...) -> a new object with type S, a subtype of T
Returns:
a new object with type S, a subtype of T
Overrides:
ode.GeomObject.__new__

add(geom)

Add a geom to a space. This does nothing if the geom is already in the space.
Parameters:
geom - Geom object to add
           (type=GeomObject)

collide(arg, callback)

Call a callback function one or more times, for all potentially intersecting objects in the space. The callback function takes 3 arguments:

def NearCallback(arg, geom1, geom2):

The arg parameter is just passed on to the callback function. Its meaning is user defined. The geom1 and geom2 arguments are the geometry objects that may be near each other. The callback function can call the function collide() (not the Space method) on geom1 and geom2, perhaps first determining whether to collide them at all based on other information.
Parameters:
arg - A user argument that is passed to the callback function
callback - Callback function
           (type=callable)

getGeom(idx)

Return the geom with the given index contained within the space.
Parameters:
idx - Geom index (0,1,...,getNumGeoms()-1)
           (type=int)
Returns:
GeomObject

getNumGeoms()

Return the number of geoms contained within the space.
Returns:
int

query(geom)

Return True if the given geom is in the space.
Parameters:
geom - Geom object to check
           (type=GeomObject)
Returns:
bool

remove(geom)

Remove a geom from a space.
Parameters:
geom - Geom object to remove
           (type=GeomObject)

Generated by Epydoc 2.1 on Sun Feb 4 17:54:12 2007 http://epydoc.sf.net