Rhino(犀牛)中国技术支持与推广中心

标题: 怎么快速画这样的线(深大提供参考方法) [打印本页]

作者: 起飞犀牛    时间: 2015-4-3 18:24
标题: 怎么快速画这样的线(深大提供参考方法)
本帖最后由 Jessesn 于 2017-5-4 12:24 编辑
在两条线建正方或长方,要中点在曲线上,请教好的方法,因为太多个了,几个的话就会去调,帮帮忙




模型下载 http://pan.baidu.com/s/1o7TI9dg
Hi,如果要绘制很多个这种方块的话,手工的方式的确没有效率。要想到用程序来帮我们“”,我不太清楚你是否熟悉Grasshopper或者脚本语言的编写,但无论你用哪种方式来解决“”的问题,都是要从这样的图形中找到规律,然后将这些规律转化为你的编程思路,最后将思路“”出来,这其实就是编写算法的过程。

这其实是一个纯几何的问题,从这些方块的排布及大小来看,他们的边长组成的就是一个等差数列,方块的边长如何得到,就要用到一些三角函数来求出,例如下图中我所绘制的这几种线条,这是我分析的一个过程,当然还有其他的更加简便的方法。



下图中我使用Grasshopper来“写”,用到了一个循环运算器

如果使用代码来做,用递归的方式来解决会更加快速,途径不同,但“核心”差不多。



如果上面的方法你并不了解,没有关系,你可以按照最传统的方式手工绘制这些图形,如果感兴趣的话,可以学习下Grasshopper或者脚本语言,这样再回过头看这些问题,你会理解的更深刻,希望能够帮到你。


(PS:运算器我摆的比较乱,没有花时间精简程序)

1.zip

59.57 KB, 下载次数: 88


作者: a1781314    时间: 2015-4-3 21:15
本帖最后由 深蓝 于 2015-4-5 06:54 编辑

在你已经绘制好的正方形上使用曲线工具把正方形2边的中点连接起来,然后打开最近点捕捉,将曲线端点放置到2条长曲线上就好了。如果正方形不够长,使用缩放工具拉长或者缩短就好。








作者: 起飞犀牛    时间: 2015-4-3 22:57
a1781314 发表于 2015-4-3 21:15
在你已经绘制好的正方形上使用曲线工具把正方形2边的中点连接起来,然后打开最近点捕捉,将曲线端点放置到2 ...

谢谢帮忙,
做一个是这样,那这边要做许多个怎么处理,
作者: a1781314    时间: 2015-4-4 07:49
起飞犀牛 发表于 2015-4-3 22:57
谢谢帮忙,
做一个是这样,那这边要做许多个怎么处理,

我也没想到其他好办法,只是不是几百上千个, 就这样手工做吧
作者: shadow    时间: 2015-4-4 08:03
orient
作者: 起飞犀牛    时间: 2015-4-4 09:14
谢谢了麻烦大家了


作者: 深蓝Ansen    时间: 2015-4-4 11:56
本帖最后由 深蓝 于 2015-4-4 12:44 编辑

Hi,如果要绘制很多个这种方块的话,手工的方式的确没有效率。要想到用程序来帮我们“”,我不太清楚你是否熟悉Grasshopper或者脚本语言的编写,但无论你用哪种方式来解决“”的问题,都是要从这样的图形中找到规律,然后将这些规律转化为你的编程思路,最后将思路“”出来,这其实就是编写算法的过程。

这其实是一个纯几何的问题,从这些方块的排布及大小来看,他们的边长组成的就是一个等差数列,方块的边长如何得到,就要用到一些三角函数来求出,例如下图中我所绘制的这几种线条,这是我分析的一个过程,当然还有其他的更加简便的方法。



下图中我使用Grasshopper来“写”,用到了一个循环运算器

如果使用代码来做,用递归的方式来解决会更加快速,途径不同,但“核心”差不多。



如果上面的方法你并不了解,没有关系,你可以按照最传统的方式手工绘制这些图形,如果感兴趣的话,可以学习下Grasshopper或者脚本语言,这样再回过头看这些问题,你会理解的更深刻,希望能够帮到你。


(PS:运算器我摆的比较乱,没有花时间精简程序)
作者: 起飞犀牛    时间: 2015-4-4 21:33
深蓝 发表于 2015-4-4 11:56
Hi,如果要绘制很多个这种方块的话,手工的方式的确没有效率。要想到用程序来帮我们“算”,我不太清楚你是 ...

辛苦大家了,谢谢了
作者: lmjs    时间: 2015-4-6 08:31
深蓝大大威武!!!




欢迎光临 Rhino(犀牛)中国技术支持与推广中心 (http://bbs.rhino3d.asia/) Powered by Discuz! X3.2