Woolz Image Processing  Version 1.7.0
Name
WlzDrawDomainObj - reads drawing commands from either a string given on the command line, a file given on the command line or the standard input (in this order of precidence). The drawing commands are used to create a drawn section which is placed into 3D using the view transform.
Synopsis
WlzDrawDomainObj [-2] [-a<pitch,yaw,roll>] [-f <fx,fy,fz>]
[-d <dist>] [-b <view bib file>]
[-m <mode>] [-u<ux,uy,uz>]
[-e] [-E <vx,vy,vz>]
[-g <ox,oy,oz>] [-h] [-o<output object>]
[-r <ref object>] [-s <cmd str>] [<cmd str file>>]

Options
 -2 Ignore the view struct and keep as a 2D object. -a Viewing angles: pitch (phi), yaw (theta) and roll (zeta), default 0.0,0.0,0.0. -f Fixed point position, default 0.0,0.0,0.0. -d Distance parameter, default 0.0. -b Bib file with view parameters, e.g. saved from MAPaint. -m Viewing mode, one of: up-is-up, statue or absolute, default is up-is-up. -u Up vector, default 0.0,0.0,1.0. -e Use object voxel size, default is voxel size 1.0,1.0,1.0. -E Use supplied voxel size rather than the object voxel size, default 1.0,1.0,1.0. -g Origin of the drawing with respect to the 2D Woolz object cut using the view transform, default 0.0,0.0. -r Reference object. If given this is must be a 3D spatial domain object. The object is used to determine an additional offset for the origin of the 2D plane with respect to the section in 3D (i.e. it is added to any offset given using the -g option). -s Drawing command string. -h Help, prints usage message. -o Output file name.
Description
Reads drawing commands from either a string given on the command line, a file given on the command line or the standard input (in this order of precidence). The drawing commands are used to create a drawn section which is placed into 3D using the view transform.

The command string must have the following syntax:

  <command string> = <init command>[<command>]+<end command>
<init command> = <ident>:<version>;
<end command> = END:;
<ident> = WLZ_DRAW_DOMAIN
<version> = 1
<command> = <command name>:[<parameter>[,<parameter>]*];
<command name> = PEN | LINE | CIRCLE


In addition to the init and end commands, the following drawing commands are recognised:

  CIRCLE:<action>:<radius>,<x>,<y>;
LINE:<action>:<width>,<x>,<y>,<x>,<y>;
PEN:<action>,<width>,<x>,<y>[,<x>,<y>]*;


Where:

 <action> = DRAW | ERASE


The circle command draws or erases a filled circle which is specified by it's radius and centre parameters. The line command draws a rectangle using the given width and end coordinates of the mid-line. The pen command draws a polyline which is composed of a series of rectangular segments, with each segment ending in a semi-circular cap. The parameters of the pen command are the width and line segment end point coordinates. All widths, radii and coordinates may be in any floating point format recognised by scanf(3). Other commands may be present provided they have the same syntax described above, but they will be ignored. All white space characters are ignored.

Examples
WlzDrawDomainObj -o out.wlz \\
-s 'WLZ_DRAW_DOMAIN:1; CIRCLE:DRAW,100,200,300; END:;'

This creates a 3D domain object with a single plane at z = 0 which has a domain that is a single circle (radius = 100, centre = 200,300). to the file out.num.
File
WlzDrawDomainObj.c