parameters: (world,robot,
                edgeCheckResolution=1e-2,
                extraConstraints=[],
                equalityConstraints=[],
                equalityTolerance=1e-3,
                ignoreCollisions=[],
                movingSubset=None)
return_statement: return space
docstring: Creates a standard CSpace instance for the robot moving in the given world.
  
      Args:
          world (WorldModel): the world in which the robot lives, including
              obstacles.
          robot (RobotModel): the moving robot
          edgeCheckResolution (float, optional): the resolution at which edges in
              the path are checked for feasibility
          extraConstraints (list, optional): possible extra constraint functions,
              each of which needs to return True if satisfied. 
  
              .. note::
  
                  Don't put cartesian constraints here! Instead place your
                  function in equalityConstraints.
  
          equalityConstraints (list, optional): a list of IKObjectives or
              equality constraints f(x)=0 that must be satisfied during the
              motion.  Equality constraints may return a float or a list of
              floats.  In the latter case, this is interpreted as a vector
              function, in which all entries of the vector must be 0.
          equalityTolerance (float, optional): a tolerance to which all the
              equality constraints must be satisfied.
          ignoreCollisions (list): a list of ignored collisions. Each element
              may be a body in the world, or a pair (a,b) where a, b are bodies
              in the world.
          movingSubset (optional): if None, 'all', or 'auto' (default), all
              joints will be allowed to move.  If this is a list, then only
              these joint indices will be allowed to move.
  
      Returns:
          CSpace: a C-space instance that describes the robot's feasible space.
              This can be used for planning by creating a :class:`cspace.MotionPlan`
              object.  Note that if an EmbeddedCSpace is returned, you should
              create a SubsetMotionPlan for greater convenience.
docstring_summary: Creates a standard CSpace instance for the robot moving in the given world.
docstring_tokens: Creates a standard CSpace instance for the robot moving in the given world .
function: def makeSpace(world,robot,
                edgeCheckResolution=1e-2,
                extraConstraints=[],
                equalityConstraints=[],
                equalityTolerance=1e-3,
                ignoreCollisions=[],
                movingSubset=None):
      """Creates a standard CSpace instance for the robot moving in the given world.
  
      Args:
          world (WorldModel): the world in which the robot lives, including
              obstacles.
          robot (RobotModel): the moving robot
          edgeCheckResolution (float, optional): the resolution at which edges in
              the path are checked for feasibility
          extraConstraints (list, optional): possible extra constraint functions,
              each of which needs to return True if satisfied. 
  
              .. note::
  
                  Don't put cartesian constraints here! Instead place your
                  function in equalityConstraints.
  
          equalityConstraints (list, optional): a list of IKObjectives or
              equality constraints f(x)=0 that must be satisfied during the
              motion.  Equality constraints may return a float or a list of
              floats.  In the latter case, this is interpreted as a vector
              function, in which all entries of the vector must be 0.
          equalityTolerance (float, optional): a tolerance to which all the
              equality constraints must be satisfied.
          ignoreCollisions (list): a list of ignored collisions. Each element
              may be a body in the world, or a pair (a,b) where a, b are bodies
              in the world.
          movingSubset (optional): if None, 'all', or 'auto' (default), all
              joints will be allowed to move.  If this is a list, then only
              these joint indices will be allowed to move.
  
      Returns:
          CSpace: a C-space instance that describes the robot's feasible space.
              This can be used for planning by creating a :class:`cspace.MotionPlan`
              object.  Note that if an EmbeddedCSpace is returned, you should
              create a SubsetMotionPlan for greater convenience.
      """
      subset = []
      if movingSubset == 'auto' or movingSubset == 'all' or movingSubset == None:
          subset = None
      else:
          subset = movingSubset
          
      collider = collide.WorldCollider(world,ignore=ignoreCollisions)
  
      implicitManifold = []
      for c in equalityConstraints:
          if not isinstance(c,IKObjective):
              implicitManifold.append(c)
      
      if len(equalityConstraints)==0:
          space = robotcspace.RobotCSpace(robot,collider)
      else:
          if len(implicitManifold) > 0:
              raise NotImplementedError("General inequality constraints")
          else:
              space = robotcspace.ClosedLoopRobotCSpace(robot,equalityConstraints,collider)
              space.tol = equalityTolerance
              if subset is not None and len(subset) < robot.numLinks():
                space.setIKActiveDofs(subset)
      space.eps = edgeCheckResolution
  
      for c in extraConstraints:
          space.addConstraint(c)
  
      if subset is not None and len(subset) < robot.numLinks():
          #choose a subset
          sspace = robotcspace.EmbeddedRobotCSpace(space,subset,xinit=robot.getConfig())
          sspace.disableInactiveCollisions()
          space = sspace
      
      space.setup()
      return space
function_tokens: def makeSpace ( world , robot , edgeCheckResolution = 1e-2 , extraConstraints = [ ] , equalityConstraints = [ ] , equalityTolerance = 1e-3 , ignoreCollisions = [ ] , movingSubset = None ) : subset = [ ] if movingSubset == 'auto' or movingSubset == 'all' or movingSubset == None : subset = None else : subset = movingSubset collider = collide . WorldCollider ( world , ignore = ignoreCollisions ) implicitManifold = [ ] for c in equalityConstraints : if not isinstance ( c , IKObjective ) : implicitManifold . append ( c ) if len ( equalityConstraints ) == 0 : space = robotcspace . RobotCSpace ( robot , collider ) else : if len ( implicitManifold ) > 0 : raise NotImplementedError ( "General inequality constraints" ) else : space = robotcspace . ClosedLoopRobotCSpace ( robot , equalityConstraints , collider ) space . tol = equalityTolerance if subset is not None and len ( subset ) < robot . numLinks ( ) : space . setIKActiveDofs ( subset ) space . eps = edgeCheckResolution for c in extraConstraints : space . addConstraint ( c ) if subset is not None and len ( subset ) < robot . numLinks ( ) : #choose a subset sspace = robotcspace . EmbeddedRobotCSpace ( space , subset , xinit = robot . getConfig ( ) ) sspace . disableInactiveCollisions ( ) space = sspace space . setup ( ) return space