2015-01-19 3 views
1

У меня есть список двумерных точек. Я хочу нарисовать фигуру на холсте JavaFX. Поэтому мне нужно создать многоугольник из моего списка точек. Как мне это сделать?Создать многоугольник из множества точек

Проблема в том, что мои точки не определяют внешнюю границу, а больше похожи на облако. Для создания формы мне нужно знать, какие точки нужны. This image показывает, чего я хочу достичь, хотя формы не должны быть такими совершенными.

Edit: Дал более подробно объяснить, что основная проблема заключается в

+0

Это не проблема. Я отредактировал вопрос, чтобы лучше описать мою проблему. – user1406177

+0

Похоже, вам нужно рассчитать приблизительную форму, основанную на облаке точек данных. Звучит скорее как математическая проблема для меня, чем проблема программирования. Я предлагаю вам рассказать об этом на http://math.stackexchange.com/ – forgivenson

ответ

3

Как Документация (http://docs.oracle.com/javase/8/javafx/api/javafx/scene/shape/Polygon.html) говорит:

import javafx.scene.shape.*; 

Polygon polygon = new Polygon(); 
polygon.getPoints().addAll(new Double[]{ 
    0.0, 0.0, 
    20.0, 10.0, 
    10.0, 20.0 }); 

Итак, после редактирования: Это своего рода кластерного анализа. Посмотрите на хороший алгоритм: http://en.wikipedia.org/wiki/Cluster_analysis

Смежные вопросы