找回密码
 欢迎注册
楼主: ejsoon

[转载] 已知兩個不同點畫七個圓,得到另兩個正方形頂點

[复制链接]
发表于 2021-10-5 13:58:41 | 显示全部楼层
上面的代码发现包含一些非法解,最后发现存在bug,修复了两个bug后,得到如附件更多的结果:
pcl2.zip (10.53 KB, 下载次数: 1)
其中第六个圆分为半径为$\sqrt{2}$和$\sqrt{5}$俩大类。

比如可以如下面几个图,初始点A和B,其中红色的是最后一步圆和正方形第三个顶点H(但是第二个图H标错了)(6个圆做出正方形第三个顶点),其它各圆的半径为图中同色线段的长度
d.png
c.png
b.png
a.png
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-5 22:14:14 | 显示全部楼层
另外我一直在考虑另外一种做图方案,在做好5个圆以后,前面的方案总是在第6个圆做出一个正方形的顶点,然后第7个圆做出另外一个顶点。
那么有没有可能第7个圆直接做出两个正方形的顶点呢?这个步骤需要第7个圆的圆心在已知边的中垂线上,而且半径长度为这个圆心到正方形另外两个顶点的距离。而这些方案也是现在前面搜索过程唯一可能遗漏的方案。
然后添加搜索方案以后,发现找出了非常多的解,原来对于任何一个前面的方案(第6个圆做出一个正方形的顶点后,由于我们总是已经找出一些点在已知边的中垂线上,那么一这些点为圆心,它们到第6个圆做出的顶点的距离为半径,就可以得到一个同时经过最后两个顶点的圆),但是这些方案显然是平凡的,不是我们需要的。
过滤掉这些方案以后,果然可以发现新的做图方法,比如
a.png

如下附件,共可以找到490种不同做图方案(应该有很多类似的做图方案),其中新方案只有8种
pcl3.zip (93.78 KB, 下载次数: 1)

点评

附件添加了svg格式的图片  发表于 2021-10-7 14:10
11#第二个图就可以做成完全对称的方案,只是第7个圆没有做出来  发表于 2021-10-6 07:30
我看了一下,8种新方案区别都不大,本质上是相同的,比如把绿色圆挪到右边对称位置就构成另外一种方案。  发表于 2021-10-6 07:29
我找到的網上的答案,它的作圖結果是對稱的,不知你的這些方法裏有沒有其它的對稱作法。  发表于 2021-10-6 02:46
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2021-10-6 01:47:43 | 显示全部楼层
mathe 发表于 2021-10-5 13:58
上面的代码发现包含一些非法解,最后发现存在bug,修复了两个bug后,得到如附件更多的结果:

其中第六个 ...

我忘記加一個限制條件了,在Euclidea這個遊戲的4.11出現這道題時,還不能量長度。亦即只能通過現有的點作為圓心,經過另一個點畫圓。

点评

对于计算机来说,这样就会更简单,复杂度降低了很多。我们这个更有意思。  发表于 2021-10-6 07:26
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-6 09:32:07 | 显示全部楼层
加上限制以后,只找到44个解,但是两种方案都存在,
比如其中第一个方案就是第7个圆同时产生两个顶点,人工挺难构造的。
a.png

Find 6th circle center P[183](1.213525,-0.165396) R[146]0.756934
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.695909,0.386892)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[18] center P[4](-0.500000,0.866025) R[2]2.000000
        Circle[32] center P[6](-0.500000,-0.866025) R[1]1.732051

Find 6th circle center P[184](-0.463525,-1.133642) R[147]1.981679
        7th circles center (0.500000,0.866025), Radius 0.517638 to (-0.012896,0.796121)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[18] center P[4](-0.500000,0.866025) R[2]2.000000
        Circle[32] center P[6](-0.500000,-0.866025) R[1]1.732051

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[29] center P[5](-1.000000,0.000000) R[11]2.524338

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[29] center P[5](-1.000000,0.000000) R[11]2.524338

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[30] center P[5](-1.000000,0.000000) R[12]0.792287

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[30] center P[5](-1.000000,0.000000) R[12]0.792287

Find 6th circle center P[100](1.213525,0.165396) R[146]0.756934
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (1.231142,0.922125)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[17] center P[4](-0.500000,0.866025) R[1]1.732051
        Circle[33] center P[6](-0.500000,-0.866025) R[2]2.000000

Find 6th circle center P[101](-0.463525,1.133642) R[147]1.981679
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (-1.414155,-0.605138)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[17] center P[4](-0.500000,0.866025) R[1]1.732051
        Circle[33] center P[6](-0.500000,-0.866025) R[2]2.000000

Find 6th circle center P[1](1.000000,0.000000) R[45]1.414214
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[48] center P[8](2.000000,0.000000) R[0]1.000000

Find 6th circle center P[1](1.000000,0.000000) R[45]1.414214
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[48] center P[8](2.000000,0.000000) R[0]1.000000

Find 6th circle center P[189](1.463525,-1.133642) R[147]1.981679
        7th circles center (0.500000,0.866025), Radius 0.517638 to (1.012896,0.796121)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[41] center P[7](1.500000,0.866025) R[2]2.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051

Find 6th circle center P[190](-0.213525,-0.165396) R[146]0.756934
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.304091,0.386892)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[41] center P[7](1.500000,0.866025) R[2]2.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051

Find 6th circle center P[1](1.000000,0.000000) R[45]1.414214
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[48] center P[8](2.000000,0.000000) R[0]1.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051

Find 6th circle center P[1](1.000000,0.000000) R[45]1.414214
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[48] center P[8](2.000000,0.000000) R[0]1.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051

Find 6th circle center P[104](1.463525,1.133642) R[147]1.981679
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (2.414155,-0.605138)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[56] center P[9](1.500000,-0.866025) R[2]2.000000

Find 6th circle center P[105](-0.213525,0.165396) R[146]0.756934
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (-0.231142,0.922125)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[56] center P[9](1.500000,-0.866025) R[2]2.000000

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[65] center P[10](1.457427,0.577350) R[1]1.732051

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[76] center P[11](-0.457427,0.577350) R[1]1.732051

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[86] center P[12](1.457427,-0.577350) R[1]1.732051

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[97] center P[13](-0.457427,-0.577350) R[1]1.732051

Find 6th circle center P[178](1.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[32] center P[6](-0.500000,-0.866025) R[1]1.732051
        Circle[478] center P[4](-0.500000,0.866025) R[11]2.524338

Find 6th circle center P[178](1.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[32] center P[6](-0.500000,-0.866025) R[1]1.732051
        Circle[479] center P[4](-0.500000,0.866025) R[12]0.792287

Find 6th circle center P[91](1.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (-0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[17] center P[4](-0.500000,0.866025) R[1]1.732051
        Circle[692] center P[6](-0.500000,-0.866025) R[11]2.524338

Find 6th circle center P[91](1.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (-0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[17] center P[4](-0.500000,0.866025) R[1]1.732051
        Circle[693] center P[6](-0.500000,-0.866025) R[12]0.792287

Find 6th circle center P[177](0.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.133975,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051
        Circle[789] center P[7](1.500000,0.866025) R[12]0.792287

Find 6th circle center P[177](0.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.133975,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051
        Circle[790] center P[7](1.500000,0.866025) R[11]2.524338

Find 6th circle center P[90](0.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (1.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[1003] center P[9](1.500000,-0.866025) R[12]0.792287

Find 6th circle center P[90](0.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (1.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[1004] center P[9](1.500000,-0.866025) R[11]2.524338

Find 6th circle center P[177](0.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.133975,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051
        Circle[1457] center P[14](0.728714,0.684819) R[1]1.732051

Find 6th circle center P[90](0.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (1.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[1492] center P[15](0.728714,-0.684819) R[1]1.732051

Find 6th circle center P[90](0.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (1.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[39] center P[7](1.500000,0.866025) R[1]1.732051
        Circle[1529] center P[16](-0.228714,0.973494) R[1]1.732051

Find 6th circle center P[177](0.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.133975,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[54] center P[9](1.500000,-0.866025) R[1]1.732051
        Circle[1566] center P[17](-0.228714,-0.973494) R[1]1.732051

Find 6th circle center P[91](1.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (-0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[17] center P[4](-0.500000,0.866025) R[1]1.732051
        Circle[2182] center P[52](1.228714,0.973494) R[1]1.732051

Find 6th circle center P[178](1.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[32] center P[6](-0.500000,-0.866025) R[1]1.732051
        Circle[2219] center P[53](1.228714,-0.973494) R[1]1.732051

Find 6th circle center P[178](1.000000,-1.732051) R[86]2.236068
        7th circles center (0.500000,0.866025), Radius 0.517638 to (0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[4] center P[3](0.500000,-0.866025) R[0]1.000000
        Circle[32] center P[6](-0.500000,-0.866025) R[1]1.732051
        Circle[2254] center P[54](0.271286,0.684819) R[1]1.732051

Find 6th circle center P[91](1.000000,1.732051) R[86]2.236068
        7th circles center (0.500000,-0.866025), Radius 1.931852 to (-0.866025,0.500000)
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[2] center P[2](0.500000,0.866025) R[0]1.000000
        Circle[17] center P[4](-0.500000,0.866025) R[1]1.732051
        Circle[2289] center P[55](0.271286,-0.684819) R[1]1.732051

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[7] center P[0](0.000000,0.000000) R[2]2.000000
        Circle[3401] center P[122](-1.000000,1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[7] center P[0](0.000000,0.000000) R[2]2.000000
        Circle[3401] center P[122](-1.000000,1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[26] center P[5](-1.000000,0.000000) R[1]1.732051
        Circle[3401] center P[122](-1.000000,1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[3] center P[2](0.500000,0.866025) R[1]1.732051
        Circle[26] center P[5](-1.000000,0.000000) R[1]1.732051
        Circle[3401] center P[122](-1.000000,1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[7] center P[0](0.000000,0.000000) R[2]2.000000
        Circle[4831] center P[209](-1.000000,-1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[7] center P[0](0.000000,0.000000) R[2]2.000000
        Circle[4831] center P[209](-1.000000,-1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[26] center P[5](-1.000000,0.000000) R[1]1.732051
        Circle[4831] center P[209](-1.000000,-1.732051) R[5]2.645751

Find 6th circle center P[8](2.000000,0.000000) R[86]2.236068
        Circle[0] center P[0](0.000000,0.000000) R[0]1.000000
        Circle[1] center P[1](1.000000,0.000000) R[0]1.000000
        Circle[5] center P[3](0.500000,-0.866025) R[1]1.732051
        Circle[26] center P[5](-1.000000,0.000000) R[1]1.732051
        Circle[4831] center P[209](-1.000000,-1.732051) R[5]2.645751

点评

你這個軟件真是太強了,可能這應該就是全部的解了,不過不知道裏面有沒有對稱重覆的。  发表于 2021-10-6 12:14
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-6 14:48:23 | 显示全部楼层
pcl4.zip (5.01 KB, 下载次数: 4)
结果做成svg格式的html文件在附件中,可以直接用浏览器打开
比如如下的两个图,所有点按照被使用到的顺序予以字母标号
比如下面第一个图中先做了虚线圆A和圆B,两者都过C点。然后做圆D,也过C点。
  然后做圆E过F点 (E为圆A和圆D交点,F为圆C和圆D交点).
  然后做圆C过A点。
最后做第六圆圆G过H点(G为圆B和圆D交点, H为圆E和圆C交点)
   红色圆G和圆A交点I就是所求正方形第三个顶点。最后可以通过第7圆做出正方形另外一个顶点(但是图中没有给出)
  图上面存在一点误差,是由于做图过程中四舍五入引起,不是因为计算的原因。原始数据可以看14#
a.png

评分

参与人数 1威望 +2 金币 +2 贡献 +2 鲜花 +2 收起 理由
ejsoon + 2 + 2 + 2 + 2 該附件值得收藏。

查看全部评分

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-7 09:47:01 | 显示全部楼层
a.png
如上图,对结果做了如下更新:
i)坐标使用浮点数,结果图片可以发现更加精确,不会出现看上去圆不经过点的情况
ii)每个图下面按顺序加上了各个圆的圆心和对应的圆上一点,比如第一个总是A(B)代表以A为圆心,过B点做的圆。
可以看到上面复制下来的两个图几乎一模一样,咋一看以为重复了,仔细查看才发现标的G点不同,可以有两个不同的选择。当然两种方案没有本质的区别

pcl4.zip (7.15 KB, 下载次数: 6)

点评

是类似,而不是重复。主要是类似的标准是什么不好界定,这个可以人工自己判断  发表于 2021-10-7 16:04
從37到44一共有四對重覆的,有沒有辦法在程序中去掉這些重覆的作圖方法?  发表于 2021-10-7 15:18
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-7 16:15:32 | 显示全部楼层
pcl4.2.html.zip (6.39 KB, 下载次数: 6)
可以对于做图后得到的前五个圆相同的方案看成一样的,那么可以减少到只有34种

点评

用第五個圓来排重是個好方法。  发表于 2021-10-7 23:06
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2021-10-8 09:01:17 | 显示全部楼层
mathe 发表于 2021-10-7 16:15
可以对于做图后得到的前五个圆相同的方案看成一样的,那么可以减少到只有34种

Screenshot_20211008-085009.png

這個是正解的圖,左右對稱,非常美妙。好像我在你的4.2html裏面沒有見到?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-8 14:54:52 | 显示全部楼层
知道4.html里面为什么没有上面的结果了,是因为这几个圆搜索结果如下:
Circle[0] (0,0), 1.0
Circle[1] (1,0), 1.0
Circle[3](0.5,0.866025), 1.732051
Circle[25], (-1,0) 2.0
    Dep (0,1,3,25)
    ...
Circle[47], (2,0) 2.0
    Dep (0,1,3,47)
    Dep (0, 1, 5,47)
    ...
而后面继续搜索时,我偷懒直接一个圆的的依赖集出发搜索,而由于我们这里圆25和圆47不会相互依赖,所以就找不到同时使用它们俩的解了。
下面附件简单添加了双圆依赖,从34个增加到40个,其中5,6个就是你上面的方案
pcl4.zip (7.22 KB, 下载次数: 5)
a.png

还有第三个解也超级对称:
b.png

点评

双圆依赖,只增加了6个  发表于 2021-10-8 15:13
「從一個圓的依賴集…」,我的理解是,你的代碼並沒有搜索完所有的作圓可能以及新產生的點。因此估計一共會有兩倍以上的解。  发表于 2021-10-8 15:07
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-10-8 15:29:30 | 显示全部楼层
引入递归机制,支持多圆,又添加两个结果 pcl4.zip (7.26 KB, 下载次数: 10) ,但是仔细比较,发现增加的是重复的解(还没有找原因),所以上面40个解应该全了。

点评

我下載了附件,這個是最終結果了,非常精彩!  发表于 2021-10-9 11:06

评分

参与人数 1威望 +2 金币 +2 贡献 +2 鲜花 +2 收起 理由
ejsoon + 2 + 2 + 2 + 2 完美

查看全部评分

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-25 08:39 , Processed in 0.028571 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表