Code: Alles auswählen
type
TSDL_Color = record
r: uint8;
g: uint8;
b: uint8;
a: uint8;
end;
Code: Alles auswählen
type
TVec2 = array[0..1] of single;
TSDL_ColorHelper = type Helper for TSDL_Point
private
function Getarr: TVec2;
procedure Setarr(AValue: TVec2);
public
property arr: TVec2 read Getarr write Setarr;
end;
function TSDL_ColorHelper.Getarr: TVec2;
begin
Result[0] := Self.x;
Result[1] := Self.y;
end;
procedure TSDL_ColorHelper.Setarr(AValue: TVec2);
begin
Self.x := AValue[0];
Self.y := AValue[1];
end;
So das man den Getter und Setter weglassen könnte ?
Evtl. gibt es auch etwas mit absolute.
Gut ich könnte es in der bestehenden Unit auf folgende Art abändern, aber wen es etwas einfaches mit typehelper geben würde, würde ich die vorziehen.
Code: Alles auswählen
type
TNewSDL_Point = record
case Byte of
1: (
r: single;
g: single);
2: (arr: array[0..3] of single);
end;