2012-01-02 25 views
2

我正在構建一款Android益智遊戲,其中用戶旋轉並移動拼圖碎片以形成最終圖片。這有點像滑塊拼圖,但拼塊的形狀和大小不統一 - 更像是滑塊版的俄羅斯方塊。構建一個拖放式拼圖對齊界面,使用對齊方式

目前我已經有拼圖作爲imageViews可以選擇和移動一個視圖來定位它們。我已經將背後形狀的矢量形式作爲點的ArrayLists。

但是......我被困在如何將碎片對齊在一起。即當一件物品在另一件附近時,移動一件以使附近的邊緣彼此重疊(即基本上共享邊界)。

我相信這已經做了很多次,但找不到代碼示例(任何語言)。它類似於捕捉到網格,但不一樣,並且當您可以將對象捕捉到彼此時,您可以在圖表類型界面中獲得同樣的功能。

任何人都可以指向我的教程(任何語言)/代碼/或建議如何實現它?

回答

1

Urs就像七巧板遊戲。我認爲不能用圖像來完成最終的圖像。可以通過使用android.Graphics包創建幾何形狀(對於最終形狀和最終圖片的片段)來完成。它很容易從片/切片的邊緣和頂點確定最終形狀。

0

http://code.google.com/p/photogaffe/值得一試。它是一個由15個部分組成的開源幻燈片拼圖,允許用戶從他們的畫廊中選擇一幅圖像。

你只需要弄清楚你的各種形狀以及如何旋轉它們。如果你提供自己的圖像......如何加載它們。

希望有所幫助。

0

怎麼樣在每個形狀周圍畫一個盒子。之後你定義它的中間。然後你可以存儲每個片段的旋轉值。你需要將鄰居與中間的矢量一起存儲。

然後,你只需要計算矢量是在一個合理的範圍內,旋轉是+ -X度。例如,如果矢量在+ -10像素範圍內,旋轉角度爲+ -3°,則可以旋轉該部件並將其安裝到拼圖中。