NCF参数化建筑论坛

标题: grasshopper曲线分段问题 [打印本页]

作者: gg123    时间: 2021-3-16 02:47
标题: grasshopper曲线分段问题
题主想做个标准段廊架,在做分段的时候遇到问题。我用等距切分线段的时候,如果按照某个值(这里用了6000mm),线段剩下的部分太短了,多设一条梁有点浪费,所以是想把等分点去掉一个然后和后面剩下的那段距离加一起,再取中间值,这个步骤在gh里面不知如何操作,向大佬们求助,谢谢!

作者: fuhandong    时间: 2021-4-28 10:54
试着做了一下,看是不是能解决。但是上传不了文件和图片
作者: fuhandong    时间: 2021-4-28 10:57
我把它放在Grasshopper论坛那里,你找一下
作者: fuhandong    时间: 2021-4-28 11:04
给我你邮箱吧,我发给你,不知为何不能上传文件
作者: fuhandong    时间: 2021-4-28 11:25
先在这里简单说下,其实不复杂,但是用到逻辑判断。
1.按照t分段各自曲线,找出尾部线段,获得长度;
2.用大于号,要求尾部这两段同时满足大于标准段的几分之一,同时要求满足,使用Gate And;
3.逻辑判断结果为True或False,使用Stream Fliter,获得两个对应输入端口。T时用1数据流,F时用0数据流;也可以VB编程,做个分流开关;
4.把各自尾段分离出来,相互连接,取出中点,这个就是取中点的数据流,接到0端;
5.把曲线之一的终点选出,接入1端;
6.输出端S(1)就是需要的点,可以编入原来的点续中。

这里,从两端等分点,各自剩余线段可长可短,共有4中组合:长长、长短、短长、短短。我理解只有长长情况,才不需要获得新中点,否则都需要求新中点。所以要求每个曲线剩余段都要同时满足大于一个自定值,这样就用原来线段的一个端点,就可以了。否则就把这两个尾端连接起来,获得中点。
   不知对否,下次记着把原始线段内存在GH里,便于他人处理。
作者: fuhandong    时间: 2021-4-28 11:37
上面使用同时满足条件来获得不采取行动的情况。
也可以
1.在获得各自尾段长度的情况下,求其和是否大于自定值,获得TF。大于者(T)不加点,只是连接尾段,输出;
2.在小于自定值时(F),连接两个尾段和任意一个次尾段,求中点,输出;

都可以利用上述StreamFilter。
作者: gjj81688163    时间: 2021-4-28 16:48
发我GH,275704798@qq.com。我帮你弄。
作者: smartxixi    时间: 2022-3-24 08:18
本帖最后由 smartxixi 于 2022-3-24 08:23 编辑

你说的这个问题。其实是有现成的电池的。
当然也可以自己写一段代码。也就是除不尽的时候。让整个长度去除一下你的段数。用得到的新长度开等分。肯定就能整除了。
作者: fyj967269    时间: 2023-6-6 12:10
两种思路,看下





欢迎光临 NCF参数化建筑论坛 (http://ncf-china.com/) Powered by Discuz! X3.2