Source code for irsim.env.env_base3d

from irsim.env import EnvBase
from .env_plot3d import EnvPlot3D
from irsim.world.object_factory import ObjectFactory
from irsim.world.world3d import World3D
from irsim.global_param import world_param, env_param
from irsim.world.object_base import ObjectBase
import itertools


[docs] class EnvBase3D(EnvBase): """ This class is the 3D version of the environment class. It inherits from the :py:class:`.EnvBase` class to provide the 3D plot environment. """ def __init__(self, world_name, **kwargs): super().__init__(world_name, **kwargs) object_factory = ObjectFactory() self._world = World3D(world_name, **self.env_config.parse["world"]) ObjectBase.id_iter = itertools.count() self._robot_collection = object_factory.create_from_parse( self.env_config.parse["robot"], "robot" ) self._obstacle_collection = object_factory.create_from_parse( self.env_config.parse["obstacle"], "obstacle" ) self._map_collection = object_factory.create_from_map( self._world.obstacle_positions, self._world.buffer_reso ) self._env_plot.close() self._env_plot = EnvPlot3D( self._world, self.objects, **self._world.plot_parse ) env_param.objects = self.objects