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

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

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

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

1 个赞

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

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

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

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

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

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

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

1 个赞

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

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

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

1 个赞

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

1 个赞


数据去重.gh (16.6 KB)

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