Room

The room's information is encapsulated as Room.

Attributes

AttributesTypeDescription
roomIdstrString for identifing the room.
positionlist2D coordinates of room center.
boundarylistBoundary of room represented by corners in 2D coordinates.
namestrThe name of room.
areastrThe area of room.

Domain randomization - Room Sampler

MINERVAS has a scene level sampler to generate novel furniture arrangements. Users can generate various reasonable furniture arrangements for domain randomization with this sampler.

Sampler code:

from ksecs.ECS.processors.scene_processor import SceneProcessor
class RoomSampler(SceneProcessor):
    def process(self):
        for room in self.shader.world.rooms:
            room.randomize_layout(self.shader.world)

room_sampler