【发布时间】:2016-01-13 09:05:42
【问题描述】:
我试图弄清楚如何使用 Delphi XE7 Firemonkey 填充 3D 多边形。使用具有内置组件的 GLScene 后,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,但是如果没有数学博士学位就很难弄清楚,我完全迷路了。任何帮助都会很棒。
【问题讨论】:
标签: delphi 3d firemonkey