This tool represents the analogous version of PIC, which
is a language for typesetting graphics. VRML has an advantage over PIC
in the sense that the former provides the unique ability to create various
objects in three dimensional space. The tool serves as a language
parser for identifying various objects to be specified in the input
file. It provides a very easy and understandable notation for creation
of VRML worlds. This language has taken the basic syntax from the PIC
language, but uniquely provides much more sophisticated features to describe
three-dimensional visualization of data. The primitives used in this
language notation are boxes, lines, cylinders, spheres, cones, arrows,
arcs, and macros. Additional facilities such as labelling the objects,
coloring them, specifying their sizes and positions are also provided.
the objects are made more potent by wrapping images around them,
setting their transparency levels and providing anchors (URL's) to
them. Connecting the objects with the help of lines, arrows, and arcs
accomplishes in signifying the relation between different type of
objects. The project right now is basic as well as powerful in the
sense that it can serve as a prototype for creation of bigger and
advanced tools for three-dimensional visualization of data.
Versions:
Note: We recommend that you use the latest version with bug fixes.
Return to top.
Quick Description on how to run the program
A Perl script is developed which takes as input the definition
statements and then creates the objects in three dimensional space. The
definition statements are written in a separate file and fed to the script,
which parses it according to the new line and then throws the output to
a .wrl file. The perl script is run from the command line by:
Return to top.
Starting with the easiest of tasks, this picture is shows
the VRML world that is produced by
parsed5.data. This is only the start to what this tool is
actually capable of doing. It takes the default attributes of the
objects created such as their sizes, position, and colors. Whatever
object created in the VRML world has it own viewpoint and is serially
shown in order of their creation.
Going a little bit further, this world demonstrates the
capablity of the tool developed to provide coloring and labelling the
objects if explicitly stated as shown in
parsed1.data. Notice from the data file that the first object's
position has been exactly specified and then the next object created
takes the previous objects position as the reference point.
Though this world does not say anything of much
significance, it has been created explicitly for showing the
strength of this tool. Notice from the data file,
parsed.data that the size of the objects
created can be changed as well as labels provided to them. In this
particular case notice that the input file is case free as seen in the
definition statement "line COLOR GreEN".
The newer version of the tool "version1.pl" is capable of
taking user defined variables. Notice from the data file,
parsed4.data that we have two user
defined variables "some" and "anything". Also, there are some
pre-defined variables in the program such as "boxht" (height of the
box). The built in variables have default values and can be changed at
any point of writing the definition statements. This causes the tool
to create the objects with those "new" default variables.
"version2.pl" of the tool has the capability of adding texture images in
JPG/jpg or PNG format. Also anchors (URL's) can be specified as seen in
parsed6.data. The transparency of the object can be
explicitly stated by giving a floating point value between 0 (opaque) and 1
(transparent).
"version3.pl" of the tool has the capability of changing the default directions. As you can see
from the data file parsed7.data the user can change the directions by explicitly
specifying right, left, up, down, inside, and outside
With the help of "version4.pl", the user can give labels to all the
objects that he/she wants to create. This helps in connecting any face of a particular object to a specific face
of the other object. As you can see from the data file, parsed8.data, lines or arrows
can drawn between two labelled objects by just referring to their labels, then giving a "." operator and then
specifying the faces to be connected.
"parsed8.data" is similar to "parsed7.data" except that in the former objects have been given a label and then
arrows are drawn by referring to the labels.
Multiple line text labelling of objects is now possible with "version6.pl". The user can
give the labels starting with the keyword text and then the labels in double qoutes. If
you give a space character between a ending " and a starting " it will carry out a return
function with an empty line. We suggest that you look at parsed9.data for more details.
Data Flow Diagram for Physician Visit: Data File: parsed10.data
(1)Pfleeger S. L., Software Engineering, Macmillan Publishing
Company (New York), second edition, 1991, pp 138.
This language parser describes the concept of data flow diagrams (DFD) in this picture.
DFD depicts the system as a transformer of data. The emphasis is on the flow of data, and
not on the flow of control. The input is an arrow going into a sphere (bubble) and the
output is the arrow coming out of it. Thus, the transformation is represented by the
bubble, and the arrows are the data paths (1).
Stages of Software Testing:(1) Data File: parsed11.data
(1)Pfleeger S. L., Software Engineering, Macmillan Publishing
Company (New York), second edition, 1991, pp 298.
Repeating Development Steps:(1) Data File: parsed12.data
(1)Pfleeger S. L., Software Engineering, Macmillan Publishing
Company (New York), second edition, 1991, pp 480.
The data file, parsed13.data is pretty much same as parsed9.data except
for the choice of different arrows. Giving "centered" keyword to the arrow makes the line dissappear and orients
the arrow/arc head to the center of the starting and ending position of the arrow/arc.
Return to top.
Return to top.
For more information you can contact Dr. Paul Juell or Jasmeet Bhatia, members of the research staff for World Wide Web Instructional Committee
Copyright 2000. Jasmeet Bhatia and Dr. Paul
Juell