NCF参数化建筑论坛

标题: Noah第一步电池(红线处理)的一些疑惑和个人想法 [打印本页]

作者: lovearchi    时间: 2019-10-12 23:55
标题: Noah第一步电池(红线处理)的一些疑惑和个人想法
首先感谢NCF愿意公开这些东西,着实让我大开眼界了。
写在前面,首先我还没打开后面的电池,只是看了第一步电池内部的逻辑,有些步骤有点疑惑,自己试着改了一下,还是希望大佬给指点一下[attach]52209[/attach]就这步电池。。。
先提问题:
1.第一步拾取进红线后貌似先进行了分段处理,然后拍平点,再进行连线———疑:这样会不会对原红线有修改,如果是圆弧路口经过这一步
之后轮廓会不会改变?

2.如果输入的线不是闭合的线(如下图),或者是多段线,这步貌似没处理成闭合的线(后面的电池还没看,不知道会不会有后续的处理)——疑:如果输入的线是多段线,结果貌似会受影响,譬如下图,当然我这缺口是放大的,实际情况可能会存在细小的缺口。结果就是处理成了两个独立的地块。
不是我想要的一个单独的地块。
[attach]52205[/attach][attach]52206[/attach]

解决办法:
1.线拾取进来之后,不做分段处理,直接投影到xy平面上,这样把所有的线先处理到同一平面上,不改变原线的轮廓。
2.闭合的问题——提取几个线段的端点,然后找出每个端点除了自身之外的最近的端点,然后连线,这样得到的连线的数量一定是
缺口的两倍,依据线的长度把这些线段排序,再cull pattern,依次删掉重复的的线(这也是有bug,一旦出现不同位置的两个线
长度一致,结果就全乱了,小概率事件吧),删掉重复的线之后得到的线与拍平后的线进行连接,得到一个闭合的线。
这样说逻辑可能有点乱,但大致结果是对的。[attach]52207[/attach]
电池0.98MB超过600kb貌似没法上传,发个截图吧。
[attach]52208[/attach]
如果能看懂我乱糟糟的逻辑的话,麻烦大神指导下哈。







作者: Supers227    时间: 2019-10-14 09:19
感谢分享和回复!
这一步本来愿望只是对CAD里已绘制好的闭合红线,进行一定的优化,并没有考虑不闭合的单线,
作者: skywoolf    时间: 2019-10-14 13:58
嗯,很好的意见,之前在处理单块地的时候遇到过这样的问题。然后也考虑把断线和重复线重新拟合的思路。但是这个逻辑不适合多用地红线。或者说需要用户把不同用地的碎线分组输入,这样其实变相的也增加了使用者的操作难度。相比之下,目前这个思路的适应性可能会更广些,当然还有待完善。
作者: lovearchi    时间: 2019-10-14 14:32
skywoolf 发表于 2019-10-14 13:58
嗯,很好的意见,之前在处理单块地的时候遇到过这样的问题。然后也考虑把断线和重复线重新拟合的思路。但是 ...

嗯,确实,我做的时候考虑忽略了你说的这种情况,多地块多个断线的情况,其实断线这种问题在场地整理阶段就应该解决掉了,毕竟电池的初衷是大范围快速出规划图。还有就是把线拍平到零轴的操作,感觉还是直接投射到xy平面比较好,这样圆弧路口不会把圆弧转化成折线。
作者: lovearchi    时间: 2019-10-14 14:35
Supers227 发表于 2019-10-14 09:19
感谢分享和回复!
这一步本来愿望只是对CAD里已绘制好的闭合红线,进行一定的优化,并没有考虑不闭合的单 ...

嗯嗯,我只考虑了单地块的情况,大范围的话我的思路就不对了。想的稍微有点多了,场地都没整理好怎么做设计,哈哈
作者: ljwgh    时间: 2019-10-14 15:10
这样之间投影到XY平面的话,原始线条是不是有可能就会有重合。
作者: lovearchi    时间: 2019-10-14 15:52
ljwgh 发表于 2019-10-14 15:10
这样之间投影到XY平面的话,原始线条是不是有可能就会有重合。

应该不会吧,正常情况下曲线上每个点的xy坐标都不同,投影之后应该不会出现这种问题。




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