diff --git a/python/collision-geometries.cc b/python/collision-geometries.cc
index bec3db5c1a70eefbee149e9681636d63df09d14a..b0a6f55938a281dd45d72ed03a689fd523cf7784 100644
--- a/python/collision-geometries.cc
+++ b/python/collision-geometries.cc
@@ -312,7 +312,17 @@ void exposeCollisionGeometries ()
       .def ("computeVolume", &CollisionGeometry::computeVolume)
       .def ("computeMomentofInertiaRelatedToCOM", &CollisionGeometry::computeMomentofInertiaRelatedToCOM)
 
-      .def_readwrite("aabb_radius",&CollisionGeometry::aabb_radius,"AABB radius")
+      .def_readwrite("aabb_radius",&CollisionGeometry::aabb_radius,"AABB radius.")
+      .def_readwrite("aabb_center",&CollisionGeometry::aabb_center,"AABB center in local coordinate.")
+      .def_readwrite("aabb_local",&CollisionGeometry::aabb_local,"AABB in local coordinate, used for tight AABB when only translation transform.")
+    
+      .def("isOccupied",&CollisionGeometry::isOccupied,bp::arg("self"),"Whether the object is completely occupied.")
+      .def("isFree",&CollisionGeometry::isFree,bp::arg("self"),"Whether the object is completely free.")
+      .def("isUncertain",&CollisionGeometry::isUncertain,bp::arg("self"),"Whether the object has some uncertainty.")
+
+      .def_readwrite("cost_density",&CollisionGeometry::cost_density,"Collision cost for unit volume.")
+      .def_readwrite("threshold_occupied",&CollisionGeometry::threshold_occupied,"Threshold for occupied ( >= is occupied).")
+      .def_readwrite("threshold_free",&CollisionGeometry::threshold_free,"Threshold for free (<= is free).")
       ;
   }