def generate()

in mujoco_worldgen/objs/geom.py [0:0]


    def generate(self, random_state, world_params, placement_size):
        min_size, max_size = establish_size(self.min_size, self.max_size)
        # TODO: Current worldgen doesn't respect height.
        for i in range(2):
            max_size[i] = min(max_size[i], placement_size[i])
        self.placements = OrderedDict()
        if self.geom_type == "box":
            self.size = min_size + (max_size - min_size) * \
                random_state.uniform(size=3)
            top_height = placement_size[2] - self.size[2]
            top = OrderedDict(origin=(0, 0, self.size[2]),
                              size=(self.size[0], self.size[1], top_height))
            self.placements['top'] = top
        elif self.geom_type == "sphere":
            min_size = np.max(min_size)
            max_size = np.min(max_size)
            assert(min_size <= max_size)
            self.size = np.ones(
                3) * (min_size + (max_size - min_size) * random_state.uniform(size=1))
        elif self.geom_type == "cylinder":
            self.size = min_size[:2] + (max_size[:2] - min_size[:2]) * \
                random_state.uniform(size=2)
            self.size = np.array([self.size[0], self.size[0], self.size[1]])