CAD命令行深入理解——随机漫步图和一个小游戏

如果你看过前面两篇文章,你就会意识到CAD命令行其实是一种编程语言,没错,命令行就是AUTOLisp的简化版。AUTOLisp是lisp在CAD里的脚本语言实现方式,lisp语言本质上是一种非常难懂的古老编程语言,远比C更难学,但是十分高效,很多年前可以说不懂lisp的黑客都是小白,现在不一样了,有了很多的OOP、Java库等等帮助人们实现各种想法而不用操心底层和逻辑上的事了。LISP语言采用了参数倒置的语序,这使得他和市面上99%的编程语言都不一样,所以有人说lisp是倒着看世界的。好吧我不是很懂lisp,但是设计师知道命令行就基本了解了CAD的大部分的世界。

我们还是通过命令行来做一些东西:

随机漫步图


想象一个跳舞的小女孩,她迈出的的每一个脚步都在20公分以内,每下一步她都可以选择前后左右四个方向,这样跳了100步后,会到哪?舞步会是怎样的图像?

设计目标已经拟出,可以想象最终舞步是由连续的20公分以内的线段构成的。线段是L,核心是要做出随机的步长和方向,用L的 @步长<方向 构建整个图像。

方法:

1.打开EXCEL,构建20以内的步长数:  =MOD(INT(RAND()*1000000),50)

2.构建 四个方向,用0,1,2, 3 表示东南西北,随机的0~3函数为:=MOD(INT(RAND()*100000),4)

3.将方向转化为角度:  =SWITCH(B2,0,0,1,90,2,180,3,270)

4.构建CAD命令行:    =CONCATENATE("@",A2,"<",C2)

最终成表如下:

CAD命令行深入理解——随机漫步图和一个小游戏_第1张图片

接下来就很简单了,复制EXCEL里的CAD命令行到CAD里:

这是100步的图像:

CAD命令行深入理解——随机漫步图和一个小游戏_第2张图片

这是1万步的图像:

CAD命令行深入理解——随机漫步图和一个小游戏_第3张图片

一个小游戏

微博上有个减压小游戏,按照步长及方向连线,最后会生成一个可爱的图案,当然你得手画才能减压,用电脑画这个就不能减压了,只是它实在有点重复,懂CAD的人实在不能忍:


CAD命令行深入理解——随机漫步图和一个小游戏_第4张图片
图片发自App


实现方法:

1.用EXCEL列出步长,四个方向用0123,表示,转换成角度的函数为:  =SWITCH(G2,0,0,1,90,2,180,3,270)

2.生成CAD命令行字符串 : =CONCATENATE("@",F2,"<",H2)

最终成表如下:

CAD命令行深入理解——随机漫步图和一个小游戏_第5张图片

3.在CAD里运行命令行字符串,生成如下图案:

CAD命令行深入理解——随机漫步图和一个小游戏_第6张图片
图片发自App



减压小游戏还有很多类似图案,可以在微博里搜索下载。欢迎找我索取以上命令行源文件。

你可能感兴趣的:(CAD命令行深入理解——随机漫步图和一个小游戏)