Wenn man nur über diese SetLength-Variante alles auf einmal setzt, dann kann man schon davon ausgehn, daß alle Arrays einer Ebene gleich groß sind.
Demnach kann man jeweils den ersten Eintrag einer Ebene nutzen und darüber nachsehn.
Delphi-Quellcode:
HauptEbene := Length(MyArr);
ZweiteEbene := Length(MyArr[0]);
DritteEbene := Length(MyArr[0][0]) oder Length(MyArr[0, 0]);
Ansonsten geb ich Detlef schon Recht.