Hallo,
und Dank an Marabu.
Wenn ich Dich richtig verstanden habe: einfach ein
array of array of single deklarieren und diesen nativ in der Parameterliste übergeben.
Frage1:
Bestimmt handelt es sich bei einem solchen Typ um einen Referentdatentyp.
Wird in der Parameterliste einer Funktion ein solches Skalarfeld kopierend übergeben oder nur synchronisierend gleichgesetzt.
Frage2:
Und wie verhält es sich mit folgendem Beispiel in Richtung Code-Unempfindlichkeit
in der Art:
Delphi-Quellcode:
A : array od array of single;
...
B : array od array of single;
...
B := COPY(A);
oder
Delphi-Quellcode:
interface
var
A : array od array of single;
procedure XYZ(B : array od array of single);
begin
end;
implementation
...
XYZ(A);
...
Sicherlich wird das nicht gehen, und ich muß einen interface-bildenden Typ bilden.
Damit könnte ich leben.
Frage3:
gibt es gute Komponenten zu 2D-Skalarfeldern, die auch die bilineare Transformation als Algorithmus beinhalten?
(ich bilde eine Funktion eines 10x10cm-Feldes einer 25x25-Matrix in ein 10x10cm-Feld einer 17x17-Matrix ab).
Frage4:
Wie geht das richtig, Längendimensionierung in die function übernehmen?
Delphi-Quellcode:
interface
type
TA : array od array of single;
var
A : TA;
Ergebnis : single;
function XYZ(B : TA);
begin
result:=B[17,17]; // hier fehlt doch die LängenDimensionierung - wie geht das richtig?
end;
implementation
...
setLength(A,25,25);
Ergebnis :=XYZ(A);
...
Vielen Dank
und einen schönen Abend
E. B.