function main(){
/*车*/
var che=qiche();
che=che.translate([-40,40,12]);
/*地面*/
var di=dimian();
/*基地*/
var fang=jidi();
fang=fang.translate([0,0,10]);
return [di,che,fang];
}
function jidi(){
/*基地地面*/
var dimian=cube([100,100,2]);
dimian=dimian.translate([-100,-100,0]);
dimian=dimian.setColor([0.8,0.8,0.8,1]);
/*基地房屋*/
var a=cylinder({r:15,h:10});
var b=sphere({r:15}).translate([0,0,8]);
var c=union(a,b).translate([-50,-50,2]);
/*基地通道*/
var d=cube([4,20,4]).translate([-52,-43,2]);
var e=cylinder({r:2,h:20});
e=e.rotateX(90);
e=e.translate([-50,-23,6]);
var f=c.scale(0.65);
f=f.translate([-17.5,18,0]);
/*联合通道和房房屋*/
var g=union(f,e,d);
/*创建新的房屋变量 并赋值*/
var g1=g;
var g2=g;
/*调整房屋的旋转角度和位置*/
g=g.rotateZ(60).translate([-70,18,0]);
g1=g1.rotateZ(120).translate([-120,-35,0]);
g2=g2.rotateZ(180).translate([-101,-100,0]);
/*将所有的房屋联合起来修改颜色*/
var fangzi=union(c,d,e,f,g,g1,g2);
fangzi=fangzi.setColor([1,1,1,1]);
/*联合房屋和地面 并返回*/
var fang=union(dimian,fangzi);
return fang;
}
function dimian(){
/*地面*/
var a=cube([200,200,10]);
a=a.translate([-100,-100,0]);
/*底部小,顶部大的圆台*/
var b=cylinder({r1:2,r2:10,h:4}).translate([20,95,6]);
var c=cylinder({r1:3,r2:20,h:8}).translate([80,85,2]);
var d=c.translate([-20,-15,0]);
var e=c.translate([-20,-75,0]);
/*联合底部小,顶部大的圆台 用于相减制作陨石坑*/
var ken=union(b,c,d,e);
/*底部大,顶部小的圆台 用于联合制作小山丘*/
var f=cylinder({r1:20,r2:14,h:4}).translate([20,45,10]);
var g=cylinder({r1:30,r2:18,h:12}).translate([40,-45,10]);
/*将地面与ken模型进行相减*/
a=difference(a,ken);
/*联合地面和小山丘*/
var di=union(a,f,g);
/*修改颜色并返回*/
return di.setColor([0.6,0.25,0,1]);
}
function qiche(){
/*通过a1,a2 两个立方体相减 制作车厢*/
var a1=cube([10,57,10]);
var a2=cube([9,55,9]).translate([0.5,1,0.5])
var a=difference(a1,a2);
/*制作a3立方体 取a3和a模型相交的部分 制作窗户*/
var a3=cube([8,66,4]).translate([1,-5,4]);
var a31=intersection(a,a3);
a31=a31.setColor([0.5,0.5,1,0.7]);
/*通过车厢和窗户相减 将车厢挖出窗户的开口*/
a=difference(a,a31);
/*通过a4~a11 制作立方体并移动到相应的位置*/
var a4=cube([20,4,4]).translate([-5,15,4]);
var a5=a4.translate([0,6,0]);
var a6=a5.translate([0,6,0]);
var a7=a6.translate([0,6,0]);
var a8=a7.translate([0,6,0]);
var a9=a8.translate([0,6,0]);
var a11=a9.translate([0,6,0]);
var a10=a4.translate([0,-13,0]);
/*将模型联合起来*/
var b=union(a4,a5,a6,a7,a8,a9,a10,a11);
/*通过相交 将车厢和模型b 取交集 制作车窗*/
var c=intersection(a,b);
/*通过车厢和窗户相减 将车厢挖出窗户的开口*/
var d=difference(a,c);
c=c.setColor([0.5,0.5,1,0.7]);
/*通过圆柱体制作车轮 并旋转*/
var lun1=cylinder([2,2,2]).rotateY(90);
lun1=lun1.translate([-1,7,0]).setColor([0,0,0,1]);
var lun2=lun1.translate([0,20,0]);
var lun3=lun2.translate([0,20,0]);
lun1=lun1.translate([0,-3,0]);
var lun4=lun1.translate([10,0,0]);
var lun5=lun2.translate([10,0,0]);
var lun6=lun3.translate([10,0,0]);
var lun=union(lun1,lun2,lun3,lun4,lun5,lun6);
/*制作车门*/
var men=cube([1,5,8]).translate([0,8,0]);
men=men.setColor([0.85,0.85,0.85,0.9]);
/*通过车厢和车门相减 将车厢挖出车门的开口*/
d=difference(d,men);
d=d.setColor([1,1,1,1]);
var che=union(d,c,lun,men,a31);
return che;
}
浏览器打开 “c6c6.cc” 点“快速入门-1”粘贴运行
最新推荐文章于 2024-09-26 09:13:29 发布