home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Serif Graphics Collection
/
Serif_Graphics_Collection_6_DTP_Porgrams_on_One_CD_Serif-SPF.iso
/
3DPLUS
/
data1.cab
/
VRML
/
chair.wrl
< prev
next >
Wrap
Text File
|
1998-04-22
|
6KB
|
349 lines
#VRML V1.0 ascii
#This chair looks so cool
#It took me forever to do but I decided I needed to make
#a chair myself so that I didn't have to use the
#example chair from the VRML Sourcebook on my page
Coordinate3 {
point [
-4.0 0.0 1.0,
-4.0 -1.0 1.0,
-3.0 0.0 0.7,
-3.0 -1.0 0.7,
-2.0 0.0 0.35,
-2.0 -1.0 0.35,
-1.0 0.0 0.15,
-1.0 -1.0 0.15,
0.0 0.0 0.0,
0.0 -1.0 0.0,
1.0 0.0 0.15,
1.0 -1.0 0.15,
2.0 0.0 0.35,
2.0 -1.0 0.35,
3.0 0.0 0.7,
3.0 -1.0 0.7,
4.0 0.0 1.0,
4.0 -1.0 1.0,
#and now the back of the back
-4.0 0.0 0.7,
-4.0 -1.0 0.7,
-3.0 0.0 0.4,
-3.0 -1.0 0.4,
-2.0 0.0 0.05,
-2.0 -1.0 0.05,
-1.0 0.0 -0.15,
-1.0 -1.0 -0.15,
0.0 0.0 -0.3,
0.0 -1.0 -0.3,
1.0 0.0 -0.15,
1.0 -1.0 -0.15,
2.0 0.0 0.05,
2.0 -1.0 0.05,
3.0 0.0 0.4,
3.0 -1.0 0.4,
4.0 0.0 0.7,
4.0 -1.0 0.7
]
}
Material {
diffuseColor 0.25 0.15 0.1
shininess 1.0
specularColor 1.0 1.0 1.0
}
IndexedFaceSet {
coordIndex [
0, 1, 3, 2, -1,
2, 3, 5, 4, -1,
4, 5, 7, 6, -1,
6, 7, 9, 8, -1,
8, 9, 11, 10, -1,
10, 11, 13, 12, -1,
12, 13, 15, 14, -1,
14, 15, 17, 16, -1,
#and now th back half
18, 19, 21, 20, -1,
20, 21, 23, 22, -1,
22, 23, 25, 24, -1,
24, 25, 27, 26, -1,
26, 27, 29, 28, -1,
28, 29, 31, 30, -1,
30, 31, 33, 32, -1,
32, 33, 35, 34, -1,
#and now to join up the ends
# first the two end bits
0, 1, 19, 18, -1,
16, 17, 35, 34, -1,
# and the the top pieces
0, 2, 20, 18, -1,
2, 4, 22, 20, -1,
4, 6, 24, 22, -1,
6, 8, 26, 24, -1,
8, 10, 28, 26, -1,
10, 12, 30, 28, -1,
12, 14, 32, 30, -1,
14, 16, 34, 32, -1,
# and the bottom pieces
1, 3, 21, 19, -1,
3, 5, 23, 21, -1,
5, 7, 25, 23, -1,
7, 9, 27, 25, -1,
9, 11, 29, 27, -1,
11, 13, 31, 29, -1,
13, 15, 33, 31, -1,
15, 17, 35, 33
]
}
#Now to make the funny shaped seat
Coordinate3 {
point [
-1.5 -8.0 2.0,
-2.2 -8.0 2.3,
-2.5 -8.0 2.6,
-3.5 -8.0 6.4,
-3.25 -8.0 6.7,
-3.0 -8.0 7.0,
1.5 -8.0 2.0,
2.2 -8.0 2.3,
2.5 -8.0 2.6,
3.5 -8.0 6.4,
3.25 -8.0 6.7,
3.0 -8.0 7.0,
#The bottom half of the chair
-1.5 -8.5 2.0,
-2.2 -8.5 2.3,
-2.5 -8.5 2.6,
-3.5 -8.5 6.4,
-3.25 -8.5 6.7,
-3.0 -8.5 7.0,
1.5 -8.5 2.0,
2.2 -8.5 2.3,
2.5 -8.5 2.6,
3.5 -8.5 6.4,
3.25 -8.5 6.7,
3.0 -8.5 7.0
]
}
IndexedFaceSet {
coordIndex [
0, 1, 2, -1,
2, 5, 3, -1,
3, 4, 5, -1,
6, 7, 8, -1,
8, 11, 9, -1,
9, 10, 11, -1,
0, 2, 8, 6, -1,
2, 5, 11, 8, -1,
#The bottom half of the chair
12, 13, 14, -1,
14, 17, 15, -1,
15, 16, 17, -1,
18, 19, 20, -1,
20, 23, 21, -1,
21, 22, 23, -1,
12, 14, 20, 18, -1,
14, 17, 23, 20, -1,
#And now to join the two halves together
0, 12, 13, 1, -1,
1, 13, 14, 2, -1,
2, 14, 15, 3, -1,
3, 15, 16, 4, -1,
4, 16, 17, 5, -1,
6, 18, 19, 7, -1,
7, 19, 20, 8, -1,
8, 20, 21, 9, -1,
9, 21, 22, 10, -1,
10, 22, 23, 11, -1,
5, 17, 23, 11, -1,
0, 12, 18, 6
]
}
#nOW THE SEAT IS FINISHED (i hATE caps lock)
#Now for the supports between the back and the seat
Separator {
Translation {
translation 2.5 -4.2 1.225
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
0.2 1.0 -0.25 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
Cylinder {
radius 0.2
height 7.9
}
DEF beadthing Group {
Translation {
translation 0.0 -1.5 0.0
}
Scale {
scaleFactor 1.0 2.0 1.0
}
Sphere {
radius 0.35
}
Translation {
translation 0.0 0.35 0.0
}
Scale {
scaleFactor 1.0 0.25 1.0
}
Sphere {
radius 0.35
}
Translation {
translation 0.0 -2.8 0.0
}
Sphere {
radius 0.35
}
}
}
Separator {
Translation {
translation -2.5 -4.2 1.225
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
-0.2 1.0 -0.25 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
Cylinder {
radius 0.2
height 7.9
}
USE beadthing
}
Separator {
Translation {
translation 1.25 -4.2 1.0
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
0.1 1.0 -0.315 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
Cylinder {
radius 0.2
height 7.9
}
USE beadthing
}
Separator {
Translation {
translation -1.25 -4.2 1.0
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
-0.1 1.0 -0.315 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
Cylinder {
radius 0.2
height 7.9
}
USE beadthing
}
Separator {
Translation {
translation 0.0 -4.2 0.8
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
0.0 1.0 -0.35 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
Cylinder {
radius 0.2
height 7.9
}
USE beadthing
}
#And now for the legs (I'm not lookng forward to this)
Separator {
Translation {
translation 3.25 -12.1 7.5
}
DEF leg Separator {
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
-0.2 1.0 -0.25 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
Cylinder {
radius 0.3
height 8.0
}
Scale {
scaleFactor 1.0 2.0 1.0
}
Sphere {
radius 0.5
}
Translation {
translation 0.0 0.5 0.0
}
Scale {
scaleFactor 1.0 0.25 1.0
}
Sphere {
radius 0.5
}
Translation {
translation 0.0 -4.0 0.0
}
Sphere {
radius 0.5
}
}
}
Separator {
Translation {
translation -3.25 -12.1 7.5
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
0.4 1.0 0.0 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
USE leg
}
Separator {
Translation {
translation 2.75 -12.1 1.5
}
Rotation {
rotation 0.0 1.0 0.0 3.142
}
MatrixTransform {
matrix 1.0 0.0 0.0 0.0
0.4 1.0 0.0 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
}
USE leg
}
Separator {
Translation {
translation -2.75 -12.1 1.5
}
Rotation {
rotation 0.0 1.0 0.0 3.142
}
USE leg
}