## Name

rtwizard — Combines images from several raytracing techniques to produce complex images.

## Synopsis

`rtwizard` [`options`...]

## DESCRIPTION

rtwizard is a tool that automates the use of several BRL-CAD graphical programs to produce complex images. There are two primary modes of operation - a graphical client to guide users through the process of creating images, and a command line mode to allow users who already know what options they wish to use to quickly and automatically produce images. Graphical mode is used when insufficient information is supplied to produce an image (unless an option specifically ruling out graphical mode is passed) and command line mode (used automatically when there is enough information to produce an image, unless GUI mode is specifically requested.) When in graphical mode, rtwizard is self explanatory. This manual documents the command line options available when not operating in graphical mode.

Images produced by rtwizard use three primary elements - standard full color raytracings produced by rt, "line drawing" style images produced by rtedge, and a faded greyscale version of color raytracings produced with a variety of image manipulation tools included with BRL-CAD.

The following options are recognized.

Input/Output Options

`geometry_file.g`

  The first argument without an option flag (the leftmost argument is regarded as the first) that identifies an existing file with a .g suffix will be used to specify the working geometry database, unless overridden by the `i` option.

`-i` `geometry_file`, `--input` `geometry_file`

  Specifying the geometry database containing the objects to be raytraced. The `i` option will override a non-flagged geometry file specification.

`output_file.imgformat`

  The name and image format of the final output image generated by rtwizard. When specifying the output file name without using a flag, a .pix or .png image format extension is necessary. The first valid, unflagged output file name will be used unless overridden by the `o`. If the output filename uses a .png image format extension, the Portable Network Graphics image format will be used when writing out the file. Otherwise, a standard BRL-CAD pix image will be generated.

`-o` `output_file[.imgformat]`, `--output` `output_file[.imgformat]`

  The name (and optionally the image format) of the final output image generated by rtwizard. If the output filename uses a .png file extension, the Portable Network Graphics image format will be used when writing out the file. Otherwise, a standard BRL-CAD pix image will be generated.

`-d` `framebuffer_device`, `--fbserv-device` `framebuffer_device`

  The type of framebuffer to use when running fbserv to establish a framebuffer. By default, "/dev/mem" is used for a non-graphical framebuffer - other options include /dev/X, /dev/ogl, and (Windows only) /dev/wgl. A /dev/mem framebuffer created by rtwizard will be closed after the image generation is complete.

`-p` `port_number`, `--fbserv-port` `port_number`

  The number of the framebuffer port to use when running fbserv to establish a framebuffer. An existing framebuffer may also be specified and used. In the case of a pre-existing non-grapical framebuffer, rtwizard will not close the framebuffer automatically after the raytracing process is complete.

`--gui`

  Run rtwizard's graphical interface, even if the command line options specify enough information to produce an image.

`--no-gui`

  Run rtwizard on the command line, even if the command line options do not specify enough information to produce an image. Overridden by --gui option if both are specified.

Model View Options - User Level

When it comes to preparing the view for an RtWizard image, there are two options. One is to use the "user level" controls, which reflect the view manipulations used by users on the command line. The other is to use the "low level" specifiers, which are more typically used when rtwizard is run by automated scripts. The two methods are mutually exclusive.

`-a` `angle (degrees)`, `--azimuth` `angle (degrees)`

  Set azimuth angle.

`-e` `angle (degrees)`, `--elevation` `angle (degrees)`

  Set elevation angle.

`--twist` `angle (degrees)`

  Set twist angle.

`-P` `angle (degrees)`, `--perspective` `angle (degrees)`

  Set the perspective angle.

`-z` `value`, `--zoom` `value`

  Set the zoom factor (smaller factor results in a smaller object in the view, and vice versa).

`--center` `X Y Z`

  Set the xyz coordinates of the center of the view.

Model View Options - Low Level

When specifying a low level view model is "all or nothing" - all options are required to correctly define the view.

`--viewsize` `view_size(mm)`

  Set the view size.

`--orientation` `element_1 element_2 element_3 element_4`

  Set view quaternion.

`--eye_pt` `X Y Z`

  Set twist angle.

Image Generation Options

`-c` `obj1` `...` , `--color-objects` `obj1` `...`

  Specify objects to render using full color.

`-C` `value`, `--background-color` `value`

  Set the background color to use when raytracing full color objects. May use R/G/B or hex style color specification.

`-g` `obj1` `...`, `--ghost-objects` `obj1` `...`

  Specify objects to be rendered using ghosting.

`-G` `value`, `--ghosting-intensity` `value`

  Control the degree of visibility to use when rendring ghost objects.

`-l` `obj1` `...`, `--line-objects` `obj1` `...`

  Specify objects to render lines with using rtedge.

`--line-color` `value`

  Specify color to use when rendering edge lines. In addition to R/G/B and hex color specifications, the keyword "region" is also supported - in the latter case, region colors will be used for lines.

`--non-line-color` `value`

  Specify color rtedge will use for non-line rendering.

`-O` `value`, `--occlusion` `value`

  Specify the occlusion mode rtedge will use for line rendering.

`-t` `image_type`, `--type` `image_type`

  Specify the type of image to be rendered. The images produces by rtwizard are categorized by picture type - there are six picture types built on full color raytracing, ghosting, and rtedge line renderings. If a type is specified and insufficient information is supplied to generate that particular image type, rtwizard will exit with an error.

  Table 1. RtWizard Image Types

  Type | Name | Description
  --- | --- | ---
  A | Simple Full-Color Image | Standard rt image.
  B | Simple Line Drawing | Standard rtedge image.
  C | Highlighted Image | Full Color rt image enhanced with rtedge lines.
  D | Mixed Full Color and Edges | Like Type C, except objects may be selectively enhanced with rtedge lines.
  E | Ghose Image with Inserts | A combination of Full Color elements and faded greyscale raytracings for context.
  F | Ghost Image with Inserts and Edges | A Type E image further enhanced with rtedge lines.

## EXAMPLES

Introduction

Example 1. Basic Color Image

`rtwizard m35.g component`

Results in a default color image of the m35 truck, output to rtwizard.pix

Example 2. Line Drawing Image

`rtwizard -d /dev/ogl m35.g -l component`

Results in a line drawing of the m35 truck being display in an OpenGL framebuffer

Example 3. Complex Image

`rtwizard -d /dev/ogl -i m35.g -c component/power.train -g component -l component`

Results in a view of the m35 truck highlighting the engine (in color) with the truck being shown as a ghosted, edged background.

Example 4. Complex Image with Non-Default View

`rtwizard -d /dev/ogl -i m35.g -c component/power.train -g component -l component -a -35 -e 15 -z 1.6`

Same as the previous image, except viewing the truck from a different direction and zoomed in closer.

## SEE ALSO

rt(1), rtedge(1)

## COPYRIGHT

This software is Copyright (c) 2001-2012 United States Government as represented by the U.S. Army Research Laboratory. All rights reserved.

## BUGS

Most deficiencies observed while using the rtwizard program are a consequence of problems in commands used by rtwizard to generate images, such as rtedge

## BUG REPORTS

Reports of bugs or problems should be submitted via electronic mail to <devs@brlcad.org>.