我遇到了一个难题,亲吻大神求解惑。 关于画不相交圆的问题。


1、有固定的点 折现点是不能被移动的。
2、以这些点为圆心画圆圈,要求圆圈不能相互存在相交的情况。

我是这样想的, 首先知道我画的圆半径假设是5, 那么我就要比较每个点之间的距离是不是超过10,
2、 超过了那就给相应的点上画5半径的圆,
3、但是问题就出现了,一个点周围在没有画圆的时候 他是有多个点满足条件的,但是这些点很可能只能是其中的一个画了圆之后,别的点位就不满足条件了,
此时我就不知道怎么操作了。
image

如果需要协助,你可能需要先提供一下你这个 3DM 文档

我能猜测你的需求, 看起来你这个和之前一个讨论贴的需求比较接近,给每个点找附近最近的几个点, 然后以最短的距离为直径画圆即可。

提供一个思路供你参考,关键是使用 ClosestPoints 这个运算器,关于这个运算器的使用方法请浏览
http://docs.rhino3d.com.cn/gh/Vector/754

您好
我试了下求最近点的这个,但是这个似乎无法解决我想解决的问题。
问题咨询2.3dm (45.5 KB)

image
下面是一组圆圈,所有的圆圈的直径都是6MM,且每个圆之间的中心距离都是12mm。
我现在需要在小圆的边缘画大圆圈,(也就是在蓝色的圆圈上画大圆) 大圆的直径是 15.8mm 和11.8mm, 两个圆的数量不受限制,目的是尽量多放。

1、要求大圆尽量平铺整个画面。
2、大圆之间不能有相交。

我前面的提问最终想解决的问题就是这个问题。

我自己的思路是:
通过大圆占用的面积多少来确认大圆是否是最大的面积摆放方案。

感谢您的帮助

:exclamation: 重要提醒 :我们无法为任何盗版授权的用户提供任何技术支持服务!!

:exclamation: 请注意 ,你使用的是一组盗版许可证 :skull_and_crossbones: ,如果你是从我们的授权经销商购买,烦请与经销商联系且索回你应有的正版许可证,我们会提供相关协助。如果你是从其他渠道获得,请卸载之,然后你可以至下面的网站联系你附近的经销商洽谈购买 :point_down:

:point_right: Rhino - Buy - Rhinoceros :point_left:

:loudspeaker: 提醒与呼吁 :尊重知识产权请从拒绝盗版软件开始,不要等到自己的设计与其他智力劳动成果被剽窃、盗取、盗用或抄袭的时候才想到要维护知识产权,维持良好的知识产权环境需要你的参与 :pray: