Controlling shading on coordinate-based geometry
cmount2.wrl
#VRML V2.0 utf8
#
# Simple colored mountain, smooth shaded
# cmount2.wrl
# by David R. Nadeau
# published in "The VRML 2.0 Sourcebook" by Ames, Nadeau, and Moreland
#
# Illustrate the use of an ElevationGrid to build a colored mountain. Use a
# very small grid so the code is easy to read and modify. Set the crease
# angle high so that elevation grid surfaces are smooth shaded.
#
WorldInfo {
title "Simple colored mountain, smooth shaded"
info [ "Copyright (c) 1997, Andrea L. Ames, David R. Nadeau, John L. Moreland" ]
}
Viewpoint {
position 4.5 4.0 15.0
orientation 1.0 0.0 0.0 -0.2
description "Entry view"
}
NavigationInfo {
type [ "EXAMINE", "ANY" ]
headlight TRUE
}
Shape {
appearance Appearance {
material Material { }
}
geometry ElevationGrid {
xDimension 9
zDimension 9
xSpacing 1.0
zSpacing 1.0
solid FALSE
creaseAngle 1.571
height [
0.0, 0.0, 0.5, 1.0, 0.5, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 2.5, 0.5, 0.0, 0.0, 0.0,
0.0, 0.0, 0.5, 0.5, 3.0, 1.0, 0.5, 0.0, 1.0,
0.0, 0.0, 0.5, 2.0, 4.5, 2.5, 1.0, 1.5, 0.5,
1.0, 2.5, 3.0, 4.5, 5.5, 3.5, 3.0, 1.0, 0.0,
0.5, 2.0, 2.0, 2.5, 3.5, 4.0, 2.0, 0.5, 0.0,
0.0, 0.0, 0.5, 1.5, 1.0, 2.0, 3.0, 1.5, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.0, 1.5, 0.5,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0,
]
colorPerVertex TRUE
color Color {
color [
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.5 0.1,
0.2 0.6 0.0, 0.0 0.5 0.1, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.5 0.4 0.0, 0.0 0.5 0.1,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.5 0.1,
0.0 0.5 0.1, 0.5 0.4 0.0, 0.2 0.6 0.0,
0.0 0.5 0.1, 0.0 0.3 1.0, 0.2 0.6 0.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.5 0.1,
0.4 0.3 0.1, 0.7 0.7 0.7, 0.5 0.4 0.0,
0.2 0.6 0.1, 0.3 0.6 0.6, 0.0 0.5 0.1,
0.2 0.6 0.0, 0.5 0.4 0.0, 0.5 0.4 0.0,
0.7 0.7 0.7, 0.8 0.8 0.8, 0.5 0.5 0.7,
0.5 0.5 0.7, 0.2 0.6 0.0, 0.0 0.3 1.0,
0.0 0.5 0.1, 0.2 0.6 0.1, 0.2 0.6 0.1,
0.2 0.6 0.1, 0.5 0.5 0.7, 0.7 0.7 0.7,
0.5 0.4 0.0, 0.0 0.5 0.1, 0.0 0.3 1.0,
0.0 0.5 0.1, 0.0 0.3 1.0, 0.0 0.5 0.1,
0.2 0.6 0.1, 0.2 0.6 0.0, 0.5 0.4 0.0,
0.5 0.5 0.7, 0.2 0.6 0.0, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.5 0.1,
0.5 0.4 0.0, 0.2 0.6 0.0, 0.0 0.5 0.1,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.3 1.0,
0.0 0.3 1.0, 0.0 0.3 1.0, 0.0 0.3 1.0,
0.0 0.5 0.1, 0.0 0.3 1.0, 0.0 0.3 1.0,
]
}
}
}