@@ -447,41 +447,17 @@ end;
447447
448448function TRSMapLoader.SetupGraph(name: String; idx, plane, padding: Integer; collision: TImage): TWebGraph;
449449var
450- gray, white, merged, graySubset: TPointArray;
451- whiteClusters, grayClusters, mergedClusters: T2DPointArray;
452- i, j: Integer;
450+ i: Integer;
453451begin
454452 Result := Self.GetGraph(name, plane, collision);
455453 Result.Nodes := Self.GetGlobal(idx, Result.Nodes, [padding,padding]);
456454
457- white := collision.FindColor($FFFFFF, 0);
458- gray := collision.FindColor($333333, 0);
459-
460- white := Self.GetGlobal(idx, white, [padding,padding]);
461- gray := Self.GetGlobal(idx, gray, [padding,padding]);
462-
463- whiteClusters := white.Cluster(1.0);
464- grayClusters := gray.Cluster(1.0);
465-
466- for i := 0 to High(whiteClusters) do
467- begin
468- if Length(whiteClusters[i]) <= 6 then
469- Continue;
470-
471- graySubset := gray.ExtractBox(whiteclusters[i].Bounds().Expand(80));
472- merged := whiteclusters[i] + graySubset;
473- mergedClusters := merged.Cluster(1.0);
474-
475- for j := 0 to high(mergedClusters) do
476- if mergedClusters[j].Contains(whiteClusters[i][0]) then
477- begin
478- Result.WalkableClusters += mergedClusters[j];
479- Break;
480- end;
481- end;
455+ Result.WalkableSpace := Self.GetGlobal(idx, Result.WalkableSpace, [padding,padding]);
456+ for i := 0 to High(Result.WalkableClusters) do
457+ Result.WalkableClusters[i] := Self.GetGlobal(idx, Result.WalkableClusters[i], [padding,padding]);
482458
483- Result.WalkableSpace := white + gray;
484- Result.ObjectClusters := grayClusters ;
459+ for i := 0 to High(Result.ObjectClusters) do
460+ Result.ObjectClusters[i] := Self.GetGlobal(idx, Result.ObjectClusters[i], [padding,padding]) ;
485461
486462 for i := 0 to High(Result.Doors) do
487463 begin
0 commit comments