So wie ich das sehe, kann es garnicht funtionieren.
Delphi-Quellcode:
for counter1 := 0 to Length(Points[Line])-1 do
begin
if Points[Line][counter1]='-' then
begin
Start:=Points[Line];
SetLength(Start, counter1-1); <--- counter1 = 0 | 0 - 1 = -1 -> SetLength(Start, -1); <-- BOOOM!!!
...
Außerdem solltest du Points[Line] vor dem for-loop einer lokalen Variablen übergeben und diese innerhalb des for-loops benutzen, sonst wird es arschlangsam und zeichnet einen schlecht riechenden Code aus
.