我想弄清楚如何使用Delphi XE7 Firemonkey填充3D多邊形。在使用內置組件的GLScene後,Firemonkey對我來說似乎對健康有害,因爲內置控件少,樣本少,文檔少。Delphi Firemonkey繪製並填充任意三維形狀或多邊形
使用此代碼生成我的多邊形:
Context.BeginScene;
try
Context.DrawLine(TPoint3D.Create(1, -1, 0), TPoint3D.Create(1, 1, 0), 0.5, TAlphaColorRec.Black);
Context.DrawLine(TPoint3D.Create(1, 1, 0), TPoint3D.Create(0, 1, 0), 0.5, TAlphaColorRec.Black);
Context.DrawLine(TPoint3D.Create(0, 1, 0), TPoint3D.Create(-1, 0.5, 0), 0.5, TAlphaColorRec.Black);
Context.DrawLine(TPoint3D.Create(-1, 0.5, 0), TPoint3D.Create(-1, 0, 0), 0.5, TAlphaColorRec.Black);
Context.DrawLine(TPoint3D.Create(-1, 0, 0), TPoint3D.Create(-0.5, 0, 0), 0.5, TAlphaColorRec.Black);
Context.DrawLine(TPoint3D.Create(-0.5, 0, 0), TPoint3D.Create(-0.5, -1, 0), 0.5, TAlphaColorRec.Black);
Context.DrawLine(TPoint3D.Create(-0.5, -1, 0), TPoint3D.Create(1, -1, 0), 0.5, TAlphaColorRec.Black);
finally
Context.EndScene;
end;
該代碼生成這樣的多邊形:https://cyberflexsoftware.tinytake.com/sf/NDQ5NTIxXzI0MjgzNjg
不過,我需要填補這一形狀與顏色的材料,我不知道如何做這個。我想我需要創建一個TMesh,但是如果沒有數學博士學位,我很難弄清楚,而且我完全迷失了。任何幫助都會很棒。
謝謝,但這是我已經知道的2D畫布。我需要弄清楚TContext3D沒有相同的方法。 –