我正在寫一個Java應用程序,幫助將非確定性自動機轉換爲確定性自動機(即時翻譯法語)。那麼這樣做的算法不是問題,因爲有規則可循。編譯器自動機,我該如何讓這個圖表不會相交?
但我無法搞清楚GUI的工作原理......我想出瞭如何繪製圓圈和箭頭以及所有的(它還沒有完成,但我沒有問這個問題)。我要問這裏是如何將我能夠編寫一個程序,計算出其圓應繪製在哪裏,所以該圖將與沒有交集看的話得出:
所以我想要什麼它就像左邊的那個一樣出來。相互連接並不是主要問題,只是程序如何首先擺脫佈局。
現在我知道通常我應該發佈一些代碼,並顯示努力和所有,但我已經編碼的部分已經沒有任何問題,因爲我說...自動繪圖部分是我第一次來到東西我甚至不知道該怎麼嘗試和編碼:/我在這段時間內對這個問題進行了頭腦風暴,但這一段時間無濟於事。思考佈局,遞歸算法,人工智能算法...我只是不知道我在這裏尋找什麼。
是否有某種詭計呢?因爲以前在其他程序中看過這個。有沒有我似乎錯過的任何信息?任何我可以閱讀來幫助這個將是多麼appartiated。
您正在尋找的術語是_planar_繪圖。並非所有圖形都是平面的,並且可以繪製出沒有交點的圖形。 [yFiles](http://www.yworks.com/yfiles)的正交佈局算法將繪製所有沒有交點的平面圖形,但是這有時看起來比具有幾個交點的簡單圖形更差。 – Sebastian 2014-10-12 10:56:59