猫史档案馆


【box3】YDS尹子分享代码:球体建造!

用户:YDS尹子YDS尹子查看:16 回复:21 评论:16 创建时间:2020-07-02T20:54:42


先上图:

center_image

可能略微有些不圆。。不过我尽力了

下面是代码。

注意事项:

blockN是方块名

radius是半径

start是圆心位置

var blockN="water";
var radius=15;
var start={x:喵,y:30,z:喵};
function circle(block,y,rad){
    for(let radius=1;radius<=rad;radius++){
	for(let angle=0;angle<360;angle++){
		var x=Math.round(Math.sin(Math.PI/180*angle)*radius+start.x);
		var z=Math.round(Math.cos(Math.PI/180*angle)*radius+start.z);
		voxels.setVoxel(x,y,z,blockN);
	}
    }
    voxels.setVoxel(start.x,start.y,start.z,rad);
}
function ball(radiusNum,blockName){
    for(let ang=0;ang<=90;ang++){
        var radi=Math.round(Math.cos(Math.PI/180*ang)*radiusNum);//把球切片
        var slice=Math.round(Math.sin(Math.PI/180*ang)*radiusNum);
        circle(blockName,start.y+slice,radi);
        circle(blockName,start.y-slice,radi);
    }
}
ball(radius,start.y,blockN);

copyright© YDS尹子,All rights reserved.

代码使用愉快!


回复

上一页1 页 / 共 1下一页
QBZ_QBZ_

sofa

点赞1


评论


KLSAKKLSAK

谢谢啊

点赞0


评论


害羞的独角蛛907害羞的独角蛛907

沙发

点赞0


评论


LightnessLightness

板凳

点赞0


评论


BSS梅者如西BSS梅者如西

板凳

点赞0


评论


BSS梅者如西BSS梅者如西

这个代码应该是用了math对象(群众:这不是废话么)

点赞0


评论


QBZ_QBZ_

万恶的 输入法

点赞0


评论


蒋双诠蒋双诠

捕捉

点赞0


评论


TobylaiTobylai

wow

ddd

dddd

ddddd

dddddd

点赞0


评论


凌_墨水凌_墨水

好厉害的亚子

点赞2


评论


猫悟淡猫悟淡

d'd

点赞0


评论


面具狐狸云绾兮面具狐狸云绾兮

太好了!我下次出个这种的!尹子你可以做一个金字塔的生成程序的喵OWO?

点赞0


评论


打酱油的企鹅呀打酱油的企鹅呀

ohhhhhhhhhhhhhh,谢谢!!!!!!!!!!!!1

点赞0


评论


面具狐狸云绾兮面具狐狸云绾兮

尹子你告诉我这是怎么回事..............center_image

点赞0


评论


面具狐狸云绾兮面具狐狸云绾兮

尹子发出来的代码是不能在调试台用的,我给改了一下,其实就是注释删掉就可以了

var blockN="water";
var radius=15;
var start={x:喵,y:30,z:喵};
function circle(block,y,rad){
    for(let radius=1;radius<=rad;radius++){
	for(let angle=0;angle<360;angle++){
		var x=Math.round(Math.sin(Math.PI/180*angle)*radius+start.x);
		var z=Math.round(Math.cos(Math.PI/180*angle)*radius+start.z);
		voxels.setVoxel(x,y,z,blockN);
	}
    }
    voxels.setVoxel(start.x,start.y,start.z,rad);
}
function ball(radiusNum,blockName){
    for(let ang=0;ang<=90;ang++){
        var radi=Math.round(Math.cos(Math.PI/180*ang)*radiusNum);
        var slice=Math.round(Math.sin(Math.PI/180*ang)*radiusNum);
        circle(blockName,start.y+slice,radi);
        circle(blockName,start.y-slice,radi);
    }
}
ball(radius,start.y,blockN);

点赞0


评论


SCS_user_eee2detYg0SCS_user_eee2detYg0

哇,大佬太棒了

点赞0


评论


指令者指令者

emotion_编程猫_点赞

点赞0


评论


两个小八路两个小八路

emotion_编程猫_点赞

点赞0


评论


指令者指令者

emotion_编程猫_点赞

点赞0


评论


芜湖咸鱼芜湖咸鱼

徒弟都开始写算法了,爷青结

点赞1


评论


Chara_juechuief_sChara_juechuief_s

哈哈哈

 

点赞0


评论