Delphi 11 10 XE8 XE7 XE Seattle Berlin Tokyo Rio Firemonkey, Delphi Android, Delphi IOS

Free Triangle Component For Delphi XE5 Firemonkey On Android And IOS

| Delphi 11 10 XE8 XE7 XE Seattle Berlin Tokyo Rio Firemonkey Delphi Android Delphi IOS

Delphi XE5 Firemonkey Triangle Component | Delphi 11 10 XE8 XE7 XE Seattle Berlin Tokyo Rio Firemonkey Delphi Android Delphi IOSPawel Glowacki from Embarcadero has a blog post from a couple years ago where he explains how to create a Firemonkey component. The component he creates is called TSimpleTriangle and it is a triangle component similar to TRectangle in usage. Delphi XE5 Firemonkey doesn’t have a triangle component built in that I know of so this is a welcome addition to your component set. The component works on all platforms so Android, IOS, Windows, and OSX. I needed this triangle component when I was building Flappy Firemonkey. Originally the component was built for Delphi XE2 but it needed one extra line of code to make it work in Delphi XE5 Firemonkey. John Gray from the Embarcadero Firemonkey forums provided the solution. The FillPolygon and DrawPolygon functions take an array of points so you could expand this component to create any number of different polygon shapes. Here is the Paint event from the component:
procedure TSimpleTriangle.Paint;
var
R: TRectF; half: Single;
begin
R := GetShapeRect;

half := R.Left + (R.Right-R.Left)/2;
FPoints[0] := PointF(R.Left, R.Bottom);
FPoints[1] := PointF(half+1, R.Top);
FPoints[2] := PointF(R.Right, R.Bottom);
FPoints[3] := PointF(R.Left, R.Bottom);

Canvas.Fill.Assign(Self.Fill); // line added to support XE4 and XE5

Canvas.FillPolygon(FPoints, AbsoluteOpacity);
Canvas.DrawPolygon(FPoints, AbsoluteOpacity);
end;
Download Delphi XE5 Firemonkey Simple Triangle Component

Head over and check out the full blog post about building the Firemonkey triangle component.

Exit mobile version