Title: VRML 1
1Virtual Reality Modeling Language (VRML)
2VRML
- Background
- Example VRML
- Versions
- VRML language
- Creating a VRML world
3VRML - Background
- Sometimes pronounced vermel.
- A language for building 3-D worlds on the WWW.
- Use a VRML browser to walk around virtual world.
- Browser downloads file containing description of
world (in VRML format). - Browser interprets scene descriptions and renders
the resulting image.
4VRML - Background (2)
- Manipulation is performed on client (host)
computer. - Use of 3-D cards can speed performance.
- Rendering performed through lens of a virtual
camera. - Can move, twist and twirl.
- Can alter lighting.
5Using VRML
VRML Renderer usually browser plug-in or
ActiveX control
VRML text file .wrl
6(No Transcript)
7(No Transcript)
8VRML - History
- WWW conference in March 1994 - basic requirements
defined. - WWW conference October 1994 - draft specification
of VRML 1.0 presented. - Used language from a 3-D modeler
- Version 1.0 introduced April 1995.
- Version 97 now available and in use
9VRML Versions
- 1.0 Initial version. Static images.
- 97 aims to be multi-user, objects defined their
behavior, participants can see each other
10VRML Language
- VRML 97 provides these extensions and
enhancements to VRML 1.0 - Enhanced static worlds
- Interaction
- Animation
- Scripting
- Prototyping
11VRML Language
- Script-like language in ASCII text
- Given extension .wrl
- For easy identification of VRML files, every VRML
97 file must begin with the characters - VRML V2.0 utf8
- Scene graphs consist of nodes
- Each node has attributes
- See example on web site
12VRML Working Process
- Generation of a VRML file
- Transmission of VRML file to viewer
- Viewing of VRML world
- Interacting with the VRML world
13The Structure of VRML
- VRML can be viewed at a high level of abstraction
as a collection of objects which are called
nodes. - These objects, or nodes, are defined for 3D
graphics - Nodes are arranged in hierarchical structures
called scene graphs, which define an ordering for
the nodes.
14The Structure of VRML
- This was originally based on the Open Inventor 3D
toolkit developed by SGI, for VRML 1.0. - The scene graph represents such aspects of a 3D
world as geometry, materials, textures, geometric
transformations, lights, viewpoints, and nesting
structures.
15Characteristics of a Node
- A node might be a cube, a sphere, a texture map,
a transformation, etc. - The node has parameters that distinguish the node
from other nodes of the same type. - The node has a name.
- The node can be part of a hierarchy.
16Enhancement of VRML
- VRML 97 adds five constructs to VRML 1.0 that can
significantly improve a 3D world. - Four of these (namely node event field, routes,
sensors, interpolators) connect and control
animations, actions and reactions. - The fifth (script nodes) allows for the interface
with JavaScript or Java programs.
17Enhancement of VRML
- In addition, VRML 97 allows for video images (in
MPEG format) to be mapped to a surface, collision
detection, fog, text that always points to the
user, contoured terrains, and texture mapped
backgrounds.
18VRML Language -Nodes
- Cylinder
- bottom TRUE
- height 2
- radius 1
- side TRUE
- top TRUE
19VRML Language -Nodes
- Cone
- bottomRadius 1
- height 2
- side TRUE
- bottom TRUE
20VRML Language -Nodes
21VRML Language -Nodes
22Coordinate Systems and Transformations
- VRML uses a Cartesian, right-handed,
3-dimensional coordinate system. - By default, objects are projected onto a
2-dimensional display device by projecting them
in the direction of the positive Z-axis, with the
positive X-axis to the right and the positive
Y-axis up.
23VRML Language -Nodes
- Transform
- children
- scale 1 1 1
- translation 0 0 0
-
24VRML Language -Nodes
25VRML Language -Nodes
26VRML Language -Nodes
- PointSet color NULL coord
NULL
27VRML Language -Nodes
- IndexedFaceSet
- color NULL
- coord NULL
- coordIndex
- normalIndex
- normalPerVertex TRUE
- solid TRUE
28VRML Language -Nodes
- Appearance
- material NULL
- texture NULL
- textureTransform NULL
29VRML Language
- Material - with attributes such as diffuseColor,
and shininess - diffuseColor 0 0 0 is black, 1 1 1 is white
- shininess 1.0 is highly reflective
- Translation - to specify position of object
- Level of Detail (LOD) nodes allow varying level
of detail with distance - WWWAnchor creates link to another VRML world
30Example 1 - source code
VRML V2.0 utf8 DEF Machine3 Transform
translation 2 0 0 rotation 0 1 0 0 children
Shape geometry Box size 6
10 6 appearance Appearance
material Material diffuseColor 0.2 0
0.8
31Example 2 - source code
32Example 2 - VRML World
33Creating VRML Worlds
- Free formed surfaces, such as that arising from
imaging, are not included in the VRML
specification. - Therefore, a set of polygons should approximate
to a free-formed surface or curve.
34Creating VRML Worlds
- For the purpose of rendering and shading the
created polygons, their normal vectors are
calculated and given to the respective polygons. - Suppose that the surface is an imaging object.
Then, the surface is translated into a VRML file
format.
35Creating VRML Worlds - One Proposal
36Working With VRML
- Native code
- Converters
- Software that produces VRML code
- Can be large files - problem is to make the code
efficient - IIL work gives about 1001 reduction from
original data set.
37Examples - See IIL Site
- Data from MRI
- Data from CT
- Lung
- Lung and tumor
38VRML and Medical Applications
- Visualization over WWW
- Need advanced methods to map from data to VRML.
- Acceleration
- 3D boards
- Better software
39Medical Applications - Creation of Virtual
Reality Worlds from Medical Imaging Data
- Image Segmentation
- VRML Mapping
40Literature on Medical Image Segmentation
- Manually
- Automatically
- Semi-automatically
- Thresholding
- Boundary finding
- Mathematical Morphology
- Region Growing
41Literature on Medical Image Segmentation
- Segmentation is a challenging task, especially
considering an organ like the lung. - Much of the work on lung segmentation has
involved manual segmentation (Naidich et al,
1993) but this involves considerable labor and
can be prone to bias.
42Literature on Medical Image Segmentation
- Two Dimensional (2D) images require that the
physician mentally determine 3D images from 2D
slices, and this is difficult and error prone. - The fundamental problems with current approaches
to 3D display of scans are that they are not
interactive once reported.
43Boundary Identification (2D Segmentation)
- Grouping Analysis
- Vx(Px,y,z) ABS((MEAN (Px-p,y,z ,. Px-2,y,z ,
Px-1,y,z )-MEAN (Px1,y,z , Px2,y,z , Pxp,y,z
))
44Case Study - Lung/Tumor
45Case Study - Lung/Tumor
46Other Considerations
- Variety of VRML browsers available.
- Netscape uses Cosmo player (from SGI, CA) for
VRML - Microsoft new browser with IE 4
- For Windows 9x, Direct3D has been defined.
- 3D Boards now have Direct3D drivers
- Need to have VRML browser with Direct3D support.