並不是真的3D,類似游戲的2.5D。
先上效果圖。
變形一下也可以
起先我是想,把這種繪圖啊啥的,都做成控件,給別人直接用就行了。但是做的過程中發現。
要做簡單易用的控件,實在是花時間。 而且花的時間又大多數和如何繪制這個主題無關。就是一些基礎性的屬性,事件的東西。
現在現狀是用WPF的人實在不多,所以我也真的沒啥動力去做這件事。 不如拋出一種思路。 直接放個源碼,有什么需求或者疑問可以聯系我QQ384347789
源碼如下 https://gitee.com/csszbb/wpf_drawing
整個繪制思路如下:一個立方體,其實只要兩個一樣的平行四邊形就可以確定,底 和頂。
真正繪制的時候,需要確定底和頂的分別4個頂點的坐標,就是共8個。假設以底的左上角為坐標(0,0)那么如果知道這個四邊形的傾斜角度(假設45度,長100,寬60)。是可以計算出來其他3個點的坐標的。
這個應該是小學數學.怎么算我不說了。
那么底的4個頂點坐標確認了,假設這個立方體的高是100.那么頂的平行四邊形的4個頂點的坐標也會算了把?X不變,Y平移一下就是了。
那么8個點的坐標確認了
繪制的時候,在意的其實是8個點確定的 3個平行四邊形。分別如下(其實只用到了7個點)
用Path分別用不同顏色繪制這3個面。得到一個立方體。在用坐標系。得到很多立方體。就是整個思路。
感謝閱讀。如果對您有幫助,請幫我點個贊