如何快速合并相交的树形数据

请问老师,如何快速合并相交的树形数据,自己利海葵循环写了一个,感觉很繁琐,请问有不有什么简单点办法?
如何快速合并相交树形数据.gh (36.8 KB)

走了个野路子,数据不能打组那就转化成点后打,最后再解组..
成组处理起来就简单了…

提供一个路径替换的思路供你参考:

1 个赞

非常感谢Ansen老师的解答!思路非常好,学到很多,但有一点没懂,就是数据碰巧是按1,2,3,4数列的顺序相互相交,如果改成10000组数据,而且相交的数列是乱序,我怎么能让程序自动把那些不同的相交数列分成很多组呢?

我提供的路径替换只是大的思路,至于说你上面提到的“相交”数据怎么筛选,怎么组合这些逻辑完全是需要你来定的,你问我怎么定,我其实也不知道你最终要什么效果,所以这个问题我也没办法回答你。

同样的,程序自动执行的前提是你告诉他该怎么做,而不是说给它10000组数据,它自己定规则。

你现在的这个需求如果是在补救前面的程序中出现的问题,建议多优化下前面程序中的逻辑,尽可能的规避后面出现这些问题,而不是处在一个被动的补救过程中,这样程序会越来越庞大,效率也会变得很低。

我写过类似的。但是基本需要借助循环,如果没有循环插件的话,需要自己多加几组。总之是挺麻烦的。

我会选择转化为几何问题,如果不想用插件或者代码的话。

因为你出现了9-11这样的跨度为2的数据组
因此需要加入红框内的操作
否则红框内可以不要

2 个赞

谢谢!真是一个神奇的操作,居然能不用代码和插件,做到这么简化就分出组数据了!学习GH对普通用户就是要的这样的效果,有些群动不动就要别人去学代码和买插件,那就没有GH的意义了

谢谢,我一开始也是用循环写的,但是发现很麻烦,还不如用插件,但是为了学习想写一下,不过这个问题下面Deer的方案,我觉得不用循环也不用插件,这个方法很好,原生GH就能处理最好了

犀牛是三维建模软件,在这个情况下GH会拥有大量的几何运算库供你操作。
数字或集合类的问题,如果GH自带的运算器不满足你的需求,可以首先考虑从几何思路求解。

1 个赞

最后理解后,我也做一个理解后最后优化相交分组.gh (34.8 KB)

1 个赞


数据去重.gh (16.6 KB)

写了个好像有点复杂的逻辑,数据用的是隔壁帖子里面的。第一次测试的时候完美解决包含和被包含数据的整理合并,但根据逻辑发现应该有bug,于是加了完全重复的数据进去,发现完全重复的这部分也被完美地删掉了 :joy:
暂时没有想到要怎么解决,反正我暂时接触不的这类问题就当交个半成品作业,当然有大佬完善一下就更好了。

近期学习中,又把相交合并数据成组,重新改进写了一遍,感觉比较好了,发上来,欢迎大家批评指定学习!
20221022改进优化相交分组.gh (32.4 KB)

请教一下大鹿老师?等分点工具用长度当段数求T值好理解,正好每根线长度等于每根线段数,但9-11跨度指什么,如果不这么做,后面去重直线,就去不干净,得加上另外的删重合或合并重合线的功能,最后才能完全正确

这个理解了,有些线长覆盖单条线的长度,用普通炸开线,不能完全炸开到自己需要的,这个好用,理解后,昨天发上来的,中间删重合补加的就不需要了

彻底掌握用转化点连线组合炸开去重解决相交分组问题.gh (24.3 KB)

个人感觉操练可以,但是别把这类操作当成常态
GH有一定的框架,尽可能去熟悉和在这框架下操作,从根部避免出现你帖子的情况。
至少就我来看,我从没遇见过这类需求。
通常情况下如果你说出你这个问题的母问题,可以想办法回避这个很麻烦的子问题
如果没有母问题,只是一个独立的想要研究的问题,我还是建议不要花费太多时间

谢谢老师指导提醒!GH纯属个人爱好,自学中,近期感觉才入门,在家没事学习打发时间

Series为手工输入1234 前提是你知道结果是1234个 这样的回答就没有意义了

如果是想只通过截图,不发文件来提供解决方案。不要让自己的电池包含隐藏数据,例如你的series参数