https://community.embarcadero.com/index.php/blogs/entry/custom-firemonkey-tsimpletriangle-component-39692
procedure DrawLine(const APt1, APt2: TPointF; const AOpacity: Single); virtual; abstract;
procedure FillRect(const ARect: TRectF; const XRadius, YRadius: Single; const ACorners: TCorners;
const AOpacity: Single; const ACornerType: TCornerType = TCornerType.ctRound); virtual; abstract;
procedure DrawRect(const ARect: TRectF; const XRadius, YRadius: Single; const ACorners: TCorners;
const AOpacity: Single; const ACornerType: TCornerType = TCornerType.ctRound); virtual; abstract;
procedure FillEllipse(const ARect: TRectF; const AOpacity: Single); virtual; abstract;
procedure DrawEllipse(const ARect: TRectF; const AOpacity: Single); virtual; abstract;
procedure FillArc(const Center, Radius: TPointF; StartAngle, SweepAngle: Single; const AOpacity: Single);
procedure DrawArc(const Center, Radius: TPointF; StartAngle, SweepAngle: Single; const AOpacity: Single);
function PtInPath(const APoint: TPointF; const APath: TPathData): Boolean; virtual; abstract;
procedure FillPath(const APath: TPathData; const AOpacity: Single); virtual; abstract;
procedure DrawPath(const APath: TPathData; const AOpacity: Single); virtual; abstract;
procedure DrawBitmap(const ABitmap: TBitmap; const SrcRect, DstRect: TRectF; const AOpacity: Single;
const HighSpeed: Boolean = False); virtual; abstract;
procedure DrawThumbnail(const ABitmap: TBitmap; const Width, Height: Single); virtual; abstract;
{ routines }
procedure DrawRectSides(const ARect: TRectF; const XRadius, YRadius: Single; const ACorners: TCorners;
const AOpacity: Single; const ASides: TSides; const ACornerType: TCornerType = TCornerType.ctRound);
{ linear polygon }
procedure FillPolygon(const Points: TPolygon; const AOpacity: Single); virtual;
procedure DrawPolygon(const Points: TPolygon; const AOpacity: Single); virtual;
http://docwiki.embarcadero.com/RADStudio/en/FireMonkey_Components_Guide
http://docwiki.embarcadero.com/RADStudio/en/Creating_a_FireMonkey_Component
http://docwiki.embarcadero.com/RADStudio/en/Creating_a_FireMonkey_Component_(C%2B%2B)
Tags: component development Delphi Delphi Delphi Programming Delphi Programming Delphi XE2 FireMonkey graphics HD News Open Tools API RAD RAD Studio XE2 shapes source-code source-code triangle XE2
https://jonlennartaasenden.wordpress.com/category/firemonkey/
firemonkey | Jon L. Aasenden
HTMLComponents for Delphi, a closer look