Igloo Settings Tool is designed to be a starting point in the modelling pipeline of a projection scene.
A projection scene specifies the geometry and properties of a set of screens in a given space.
A screen is defined by one following geometries - Plane, Disk, and Cylinder.
Note than screen dimensions should reflect the the area covered by the projection system.
When starting the application, one is presented with an initial view illustrated in Figure 1. The layout is comprised of four tabs - Screen, Canvas, Projectors, and Export. These represent the stages in the Igloo Settings Tool modelling pipeline.
In most of the cases, these are designed to be used sequentially. For example, the Canvas tab needs the geometry of the projection scene which is specified in the Screen tab. Likewise, Projectors tab uses the canvas of the projection scene - defined in Canvas - to specify the projector regions and other attributes.
Screen
The Screen tab specifies the geometry of the projection scene. The following geometries are supported:
Plane Screen represents an oriented rectangle defined by the 3 corner positions - Bottom Left (pa), Bottom Right (pb) and Top Left (pc).
Disk Screen represents a disk on a plane. The plane is again defined by an oriented rectangle with Bottom Left (pa), Bottom Right (pb) and Top Left (pc) corners. In addition, the disk has a radius range (radius_lo, radius_hi) and an angle range (theta_lo, theta_hi).
Cylinder Screen represents a cylinder with a given radius, and height range (height_lo, height_hi) and angle range (theta_lo, theta_hi).
In most use cases, one does not specify the individual screens. A combo is a more representative way of specifying a projection scene. For example, most rooms can be seen as a box with a given width, height and depth. A cylinder room is also a cylinder wall and a floor disk.
The Screen starts with a text box entry specifying the Eye position. It is followed by a set of radio buttons used to specify the different modes of operation - Create Box, Create Cylinder, and Manual. The Edit Screens toggle shows the individual screen viewers.
Create Box
Create a box with specified Width Left/Right, Depth Front/Back, and Height Top/Bottom.
The Left-Front-Right-Back-Top-Bottom radio buttons enable the corresponding viewers in the scene. The coordinates of these viewers are automatically updated from the dimensions of the box.
Create Cylinder
Create a cylinder scene with a given Radius, Height, Angle Range, and Angle Offset. The Wall-Floor radio buttons enable the corresponding wall and disk viewers in the scene.
Again, the coordinates of the each screen are automatically updated from the cylinder combo parameters.
Manual
Create projection scenes with arbitrary geometries. Add Plane, Add Disk, and Add Cylinder add a new screen with the corresponding geometry to the scene.
The parameters of each screen are independent of each other. Enabling Edit Screens exposes the screen parameters to be edited.
Canvas
The Canvas tab displays a planar layout of the screens generated in the projection scene. Figures 2 and 3 illustrate examples of canvas layout for a box and a cylinder projection scene respectively.
Projectors
Export
The output of Igloo Settings Tool is a camera settings configuration file, which can be used within the Igloo Software Suite. The following snippet contains an example of a camera settings file.
The generated configuration file can be further edited and used to model and validate the geometry of the projection scene.
It is composed by a top section section specifying the dimensions of the camera texture and the camera eye position. The viewers section contains a list of cameras in the scene.
<version>1</version> <dimensions> <width>6144.000000000</width> <height>1024.000000000</height> </dimensions> <eye> <X>0.000000000</X> <Y>0.000000000</Y> <Z>0.000000000</Z> </eye> <viewers> <camera> <type>Cylinder</type> <roi> <W>0.500000000</W> <H>1.000000000</H> <X>0.500000000</X> <Y>0.000000000</Y> </roi> <radius>2.500000000</radius> <height_lo>-1.100000024</height_lo> <height_hi>1.100000024</height_hi> <theta_lo>-180.000000000</theta_lo> <theta_hi>180.000000000</theta_hi> </camera> <camera> <type>Disk</type> <roi> <W>0.500000000</W> <H>1.000000000</H> <X>0.000000000</X> <Y>0.000000000</Y> </roi> <pa> <X>-2.500000000</X> <Y>-2.500000000</Y> <Z>-1.100000024</Z> </pa> <pb> <X>2.500000000</X> <Y>-2.500000000</Y> <Z>-1.100000024</Z> </pb> <pc> <X>-2.500000000</X> <Y>2.500000000</Y> <Z>-1.100000024</Z> </pc> <radius_lo>0.000000000</radius_lo> <radius_hi>2.500000000</radius_hi> <theta_lo>-180.000000000</theta_lo> <theta_hi>180.000000000</theta_hi> </camera> </viewers>