2009-11-06 3 views
3

Есть ли какая-либо подпрограмма в MATLAB, которая принимает список точек и возвращает мне хорошую сетку, которую я могу использовать для показа моим коллегам, например?Создание сетки в MATLAB

alt text

На самом деле, все, что мне нужно, это только простой 2D генератор сетки, которая принимает в серии X, Y координаты (что определяет границу области), и отдай мне список элементов, может хорошо закрепить эту область. I can do the rest by using MATLAB command to interpolate the Z value.

Edit: Я не заинтересованы использовать MATLAB для получения выше перспективного участка. Я заинтересован в использовании библиотеки MATLAB для получения списка элементов, так что, когда я сам создаю этот элемент (не сам MATLAB, а в моей собственной программе на C#), я могу получить эту сетчатую поверхность.

PS: Я знаю, что это DistMesh, но я ищу что-то более простое - что-то встроенное прямо в MATLAB. И нет, meshgrid is не Генерация сетки.

+3

Показанная вами фигура может вводить в заблуждение. Если я правильно понимаю, вы начинаете с набора точек, определяющих границу области. Затем вы хотите создать треугольную сетку, которая создает больше точек * внутри * этого региона? – gnovice

+1

Да, я хочу создать треугольную сетку, которая создает больше точек в этом регионе. – Graviton

ответ

6

Это звучит, как вы хотите создать finite element mesh, начиная с множества точек, определяющих границу области, а затем генерации треугольной сетки, которая создает больше точек в этом регионе. Я не думаю, что есть «простое» решение этой проблемы.

Ближайшее решения «встроенные», вероятно, будут Partial Differential Equation Toolbox, в частности, некоторые из Geometry Algorithms как INITMESH и REFINEMESH.

Ссылка, которую вы дали DistMesh, является еще одним хорошим решением. Есть также несколько представлений о MathWorks File Exchange, что вы могли бы взглянуть на:

+0

Персоновский чистый Matlab DistMesh может также представлять интерес: http://persson.berkeley.edu/software.html для сверхмощной сетки, однако я бы написал код в файл csv и сделал системный вызов треугольника Шевчука , однако: http://www.cs.cmu.edu/~quake/triangle.html – shabbychef

1
  • Эта фотография выглядит точно так же, как и у документации griddata. Пример там выглядит так, как вы хотите.
  • SFTOOL будет легко сделать изображение, которое вы покажете.
  • Сплав из тонкой пластины, например, TPAPS, также должен выполнять эту работу.
+0

sftool определенно не то, что я хочу, тогда как TPAPS кажется более применимым для получения общей большой тонкой поверхности, а не сетчатых поверхностей. – Graviton

0

Mesh поколения, как и в триангуляции Делоне + Штейнера Points? В MATLAB есть встроенная функция Delaunay.

1

Я думаю, что созданное пользователем «gridfit» - лучшее, что я нашел для одной поверхности, намного лучше/красивее, чем гриддата.

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