Диаграмма Вороного по широте, долговременным точкам и ограничивающей рамке с использованием кода Стивена Форчуна

Я использую http://ageeksnotes.blogspot.com/2010/11/fast-java-implementation-fortunes.html

 List<GraphEdge> allEdges = voronoi.generateVoronoi(latValues, lngValues, maxLatitude, minLatitude, minLongitiude, maxLongitude); 

у меня есть список точек (широта, длина) и ограничивающая рамка этих точек из этих «краев графика».

Список всех краев должен быть всем, что мне нужно

60.1365210529365,-1.32798132296606
60.1338473169364,-1.33199657348365
60.1392706837279,-1.33043515202468
60.1405725317445,-1.33005929108147
60.1393406902,-1.32942830065997
60.1365210529365,-1.32798132296606

//bounding box.
minLatitude[60.1365210529365]
minLongitiude[-1.32798132296606] 
maxLatitude[60.1405725317445] 
maxLongitude[-1.33199657348365]

дает мне коллекцию graphEdges GraphEdge size [9] с результатами:

GraphEdge size [9] 
 SITE 1 [2] x1,y1 [60.1365210529365,-1.330748782763273] 
 SITE 2 [5] x2,y2 [60.13899079297949,-1.32798132296606] 
 SITE 1 [2] x1,y1 [60.1365210529365,-1.330748782763273] 
 SITE 2 [0] x2,y2 [60.13737030236351,-1.3297971588651558] 
 SITE 1 [2] x1,y1 [60.137370302363514,-1.3297971588651558] 
 SITE 2 [4] x2,y2 [60.13984127151547,-1.3299689655876374] 
 SITE 1 [4] x1,y1 [60.137370302363514,-1.3297971588651558] 
 SITE 2 [0] x2,y2 [60.138302150610734,-1.32798132296606] 
 SITE 1 [3] x1,y1 [60.139841271515465,-1.329968965587637] 
 SITE 2 [4] x2,y2 [60.1405725317445,-1.3285413738219385] 
 SITE 1 [1] x1,y1 [60.1365210529365,-1.330879162193689] 
 SITE 2 [5] x2,y2 [60.1365210529365,-1.330879162193689] 
 SITE 1 [3] x1,y1 [60.13907967819445,-1.32798132296606] 
 SITE 2 [0] x2,y2 [60.13907967819445,-1.32798132296606] 
 SITE 1 [2] x1,y1 [60.1404266690477,-1.33199657348365] 
 SITE 2 [3] x2,y2 [60.139841271515465,-1.329968965587637] 
 SITE 1 [1] x1,y1 [60.13678377186855,-1.33199657348365] 
 SITE 2 [2] x2,y2 [60.1365210529365,-1.3310840580808576] 

как я должен «визуализировать это»? я хочу сделать многоугольники из исходных точек. список List allEdges должен быть всем, что мне нужно для создания полигонов.


person Jeryl Cook    schedule 03.01.2017    source источник


Ответы (2)


Не уверен, как бы вы хотели визуализировать это, в какой среде и с помощью какого программного обеспечения. Поэтому я думаю, что безопасно преобразовывать координаты широты и долготы в читаемый формат файла ГИС, такой как шейп-файл, WKT или GeoJSON и т. д.

Одним из возможных решений является использование GeoTools, который также находится на Java. Он имеет функцию, готовую для преобразования входных данных в шейп-файл или другие поддерживаемые ГИС форматы, а затем их можно просматривать в различных приложениях, таких как веб-API ГИС и настольные приложения.

Перейдите по следующей ссылке: http://docs.geotools.org/latest/tutorials/.

person Teng Ma    schedule 03.01.2017
comment
Привет, я пытаюсь понять, как мне использовать список GraphEdge для создания полигонов voronoi List‹GraphEdge› allEdges ... - person Jeryl Cook; 03.01.2017

В итоге я использовал пакет топологии JTS, чтобы получить необходимые выходные данные для визуализации. https://mvnrepository.com/artifact/com.vividsolutions/jts/1.13

person Jeryl Cook    schedule 08.01.2017