Changeset 172 for trunk/UMap.pas
- Timestamp:
- Nov 24, 2017, 10:11:54 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/UMap.pas
r171 r172 239 239 { TVoronoiMap } 240 240 241 function CompareDistance(C1, C2: Pointer): Integer; 242 begin 243 if TCellsDistance(C1).Distance > TCellsDistance(C2).Distance then Result := 1 244 else if TCellsDistance(C1).Distance < TCellsDistance(C2).Distance then Result := -1 245 else Result := 0; 246 end; 247 248 function CompareDistanceReverse(const C1, C2: TCellsDistance): Integer; 249 begin 250 if C1.Distance > C2.Distance then Result := -1 251 else if C1.Distance < C2.Distance then Result := 1 241 function CompareDistance(const C1, C2: TCellsDistance): Integer; 242 begin 243 if C1.Distance > C2.Distance then Result := 1 244 else if C1.Distance < C2.Distance then Result := -1 252 245 else Result := 0; 253 246 end; … … 321 314 CellsDistance.Add(NewCellDist); 322 315 end; 323 CellsDistance.Sort(CompareDistance Reverse);316 CellsDistance.Sort(CompareDistance); 324 317 325 318 // Keep shortest non-intersected cell pairs 326 319 SelectedCells := TFPGObjectList<TCellsDistance>.Create; 327 320 SelectedCells.FreeObjects := False; 328 I := CellsDistance.Count - 1;329 while I >= 0do begin321 I := 0; 322 while I < CellsDistance.Count do begin 330 323 Intersected := False; 331 324 for J := 0 to SelectedCells.Count - 1 do … … 347 340 end; 348 341 if not Intersected then SelectedCells.Add(CellsDistance[I]); 349 Dec(I);342 Inc(I); 350 343 end; 351 344
Note:
See TracChangeset
for help on using the changeset viewer.