VisionX V4VDRAWVisionX V4

vdraw − annotate a visionx image


vdraw if= [of=] [-f fx= fy=] [n= | -n] [x= y= t=] [s=] [ff=] [df=] [-b] [x1= y1= x2= y2=] [xl= yl= xh= yh=] [fg=] [bg=] [df=] [old= new=]


Vdraw is used to annotate existing VisionX images with text and graphics. The graphical and text information can be specified by command line options or a text file. By default the annoations are added to all image frames.


Only byte images are currently accepted for input



specifies the input image which may be visx BYTE format.


specifies the output file. Output is written to stdout by default.


A text string may be added to an image by specifing its center location in pixels with the x= and y= parameters. The string itself is specified using the t= parameter. Note that long strings with spaces should be enclosed by double quotes.


specifies the font bitmap image. Fonts of this type may be created using the vfont2visx(1) program. The default font is ~visx/etc/Fix12r.fbm.


scale the specified font by an integer factor.


flag causes a box to be drawn around the entire image.


flag automatically inserts the frame number at the bottom of each image.

fx= fy=

specifies the position of the frame number within the image (default is lower right)


specifies the starting number for sequential frame numbering (default is 1).


use image sequence bounding box for frame numbering instead of sequential numbering.


A single line may be drawn within an image by specifing each end point. A horizontal or vertical line may be specified using only one parameter (e.g. if x1=10 is specified, then a vertical line is drawn from image top to bottom at x=10).


A rectangle is drawn within the image by specifying the lower and upper bounds.


data file for more complicated annotation. The data file is an acsii format file containing a list of any of the following commands separated by newlines. Leading whitespace is ignored to allow indentation of commands. (Note that integers are shown as (x) real numbers as <x> and that all values must be specified unless they appear in []).

C (x) (y) <r> (v)

Draw a circle of radius <r>, centered at image pixel ((x), (y)) with value (v).

E (x) (y) <a> <b> <o> (v)

Draw an ellipse centered at ((x), (y)) with major and minor axes <a> and <b>, orientation <o> degrees and pixel value (v).

L (x1) (y1) (x2) (y2) (v)

Draw a line from pixel ((x1), (y1)) to ((x2), (y2)) with value (v).

B (x) (y) (w) (h) (v)

Draw a box with upper left corner at ((x), (y)) and lower right corner at ((x)+(w)-1, (y)+(h)-1) with value (v).

T (x) (y) (v) <string>

Draw the text string centered at pixel ((x), (y)) with value (v). Note that the string is read up until the newline in the data file no quotes are necessary.

F (beginframe) (endframe)

Begin a frame dependent section. The draw commands that follow this "F" command are executed only for frames between and including "beginframe" to "endframe". This "F" command ends any previous frame dependent section.

F (singleframe)

The draw commands that follow this "F" command are executed only for the specified frame. This "F" command ends any previous frame dependent section.


The draw commands that follow this "F" command are executed for all frames. (ends the frame dependent section)


parameters are used for simple pixel mapping. All pixels with value specified by old= are changed to value specified by new=.


specifies the foreground pixel value for drawing. Default is 1 for binary images or 255 for byte images.


specifies the background pixel value for drawing text. Default is transparent.


R. J. Prokop