Выпуклая фигура корпуса из вершинных точек - PullRequest
0 голосов
/ 05 июня 2018

Я хотел бы сделать выпуклую фигуру корпуса, дающую Гнуплоту вершины, соединяющие поверхности фигуры.

Я тестировал, но у меня нет какого-либо четкого способа сделать это.

Я могу нанести точки с помощью этого сценария:

set encoding iso_8859_1
set terminal postscript eps enhanced color  size 4.0in,4.0in #"Helvetica" 16
set output "RG1.eps"
set view 50,220
unset colorbox
splot "convex1.dat" with lines notitle ,\
"convex1.dat" u 1:2:3 with points palette pointsize 3 pointtype 7

, где, как convx1.dat содержит эти точки

0   0   0
0   0   0.285957
0   0.285957    0.285957
0   0.3812378724    0.1906189362
0   0.571914    0
0.1906761276    0.3812378724    0.1906189362
0.285957    0.285957    0.285957
0.571914    0   0
0.571914    0   0.285957 

Представление этого сценария:

enter image description here

Я могу сделать выпуклую оболочку с этими точками в среде Mathematica и создать нужный тип фигуры:

enter image description here

Вопрос в том, как сделать Gnuplot выпуклую оболочку, такую ​​как фигура Mathematica, и как я могу использовать прозрачность для создания фигур при сравнении двух выпуклых оболочек с одной и той же осью?

1 Ответ

0 голосов
/ 07 июня 2018

Gnuplot - это прежде всего средство визуализации структурированных числовых данных;это не большая часть системы математической обработки или рендерера для геометрических данных.Существует стиль pm3d для splot, который позволяет строить произвольные коллекции многоугольников, но он не выполняет скрытое удаление поверхности, не говоря уже о сложной визуализации, основанной на пересечении нескольких многоугольников.Фактически, сама документация гласит:

Gnuplot не [инструмент] виртуальной реальности для вычисления пересечений заполненных многоугольных сеток.

Для такого рода вещей выВы захотите использовать реальный пакет математической обработки (например, Mathematica!), который может выводить в векторный формат, а затем использовать его напрямую, а не через Gnuplot.

...