Professional Documents
Culture Documents
in Physics
PHYS 3437
Dr Rob Thacker
Dept of Astronomy & Physics (MM-301C)
thacker@ap.smu.ca
Today’s Lecture
Visualization
More on Opendx
3d visualization methods
Isosurfaces
Volume rendering
Making movies
makempeg script & the Berkeley mpeg encoder
References:
Some overheads borrowed from a presentations by Tamara
Munzner, Gordon Kindlmann
Getting started with Opendx
Using Import Data is
perhaps the simplest way to
get started with Opendx
Selecting it will take you to
the Data Prompter
Data Prompter
The data prompter will
create a .general file
which the import
module can read
We’ll look at importing
gridded data
Will take many different
types
Let’s look at the simplest
– a regular grid
Using an engineering example in this case
Datafile description
Now double
click on fileselector
Fileselector
This will bring up a control panel into which you can type the
name of the .general file saved when using the data prompter
Executing the program
10
8
Iso=7
8 8
=inside
=outside
Marching Cubes: Triangle Example
a c
b
Example Triangle configurations
FRGBA(data)
f
RGB(f) (f)
Shading,
Compositing…
Human Tooth CT Gordon Kindlmann
Choosing transfer functions
This is one of the black arts of visualization
Need to know fundamental scales of variation in your
problem (linear? Logarithmic?)
Opacity can’t be too high otherwise we can’t see
through
If it’s too low we don’t perceive enough information
Colours should be chosen in sympathy with the data
Volume rendering generally doesn’t cope well with
too much high frequency data
Examples
Cutting out high values
Linear increase places too much has no effect
weight on mid range
f
f
Sharply peaked to high opacity Moving to a lower value of
effectively gives a surface render f doesn’t help
f f
Gordon Kindlmann
Ray casting: one rendering
technique
The sample volume must now be rendered
Vast body of literature on different techniques
Simplest idea is ray casting
(1) Send ensemble of rays through the system corresponding
to image pixels
(2) Interpolate values along each ray from grid
(3) Local gradient is calculated to estimate amount of light
reflected back to image
(4) Values are composited together from back to front