MetaPost/MetaFont 中交叉點的語意

MetaPost/MetaFont 中交叉點的語意

我可能在 MetaPost 和 MetaFont 中發現了一個錯誤,但在報告之前,我想確保它確實是一個錯誤。

從直覺的角度來看,我期望如果兩條路徑有交點,那麼其中一條路徑和另一條路徑的反向路徑應該有交集。

然而,以下 MetaPost/MetaFont 程式顯示 MetaPost/MetaFont 有所不同。

path pa, pb; pair ta, tb;

pa = (6.51782,19.85922)..controls (1.38812,14.72952) and (-1.67604,7.1873)
         ..(-1.67604,-0.64035)..controls (-0.65317,-0.04979) and (0.36969,0.54076)
         ..(1.39256,1.13132)..controls (1.39256,8.95897) and (4.8107,15.6466)
         ..cycle;
pb = (-1.67339,-0.64497)..controls (-1.57977,-0.80708) and (-1.48618,-0.96921)
         ..(-1.39256,-1.13132)..controls (-1.39256,-0.91154) and (-1.39026,-0.69205)
         ..(-1.38567,-0.47285);

ta = pb intersectiontimes pa;
tb = (reverse pb) intersectiontimes pa;

show ta; % (1.99997,1.09459), so there's an intersection
show tb; % (-1,-1), so there's no intersection

end

我錯過了什麼嗎?

答案1

作為記錄,Jacko(我不知道他是否寫信給您)已經根據您的原始範例建立了一個更簡單的範例,我們計劃要求 Knuth 在下次查看累積的錯誤報告時(明年)查看該問題。我們對實際問題沒有答案:(。--最好,卡爾(在 tug dot org)。

相關內容