资源说明:#VRML V2.0 utf8
#创建5×5的球矩阵
#在我们还未学习高级脚本的时候,对于复制大量对象的情况,
#我们需要用这种比较原始的办法来实现
#Y方向坐标值为0,故为最中间一排
DEF sp2 Transform {
translation -3.0 0.0 0.0
children [
#先定义一个基本的球体供后面调用
#这个球在屏幕的最左边
DEF sp Shape {
appearance Appearance {
material Material {
diffuseColor 1.0 1.0 0.0
}
}
geometry Sphere {
radius 0.4
}
}
#开始重用,请注意这里的思路:
#先以一个球进行复制,做出一排,
Transform {
children [
USE sp #左起第二个
Transform {
translation 1.5 0.0 0.0
children [
USE sp #最中间那个
Transform {
translation 1.5 0.0 0.0
children [
USE sp #右起第二个
Transform {
translation 1.5 0.0 0.0
children [USE sp #最右边那个
]
}
]
}
]
}
]
translation 1.5 0.0 0.0
}
]
}
#再以排为单位进行复制,做出5排
Transform {
translation 0.0 3.0 0.0
children [
USE sp2 #最上面一排
Transform {
translation 0.0 -1.5 0.0
children [
USE sp2 #从上数第二排
Transform {
translation 0.0 -3.0 0.0
children [
USE sp2 #从下面数第二排
Transform {
translation 0.0 -1.5 0.0
children [USE sp2 #最下面一排
]
}
]
}
]
}
]
}
#注意理清坐标变换关系,要理解相对坐标
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。