2013-03-28 2 views
2

У меня есть набор данных XYZ как координаты и V как значение в каждой точке (матрица 100x4).Как построить контурные линии 4D (XYZ-V) в MATLAB?

Я рисую трехмерную поверхность, используя патч. (по граням & вершины)

Как можно построить контурные линии V (НЕ Z) над поверхностью 3D!?

(Функция Contour3 участков 3D контурные линии Z, но мне нужно контурные линии V.)

На самом деле я хочу что-то вроде this или this.

Благодарим миллиард за помощь.

На самом деле я узнал, что команда isosurface - это именно то, что я хочу.

Однако эта команда требует, чтобы данные V были 3D-матрицей. Но мой V является вектором. И данные в нем полностью неоднородны и нерегулярны. Теперь возникает новый вопрос:

Как преобразовать этот неоднородный вектор в трехмерную матрицу, чтобы он был готов к использованию с командой isosurface !!?

Пожалуйста, помогите мне с этим.

ответ

1

cont3d от MathWorks FileExchange не совсем то, что вы ищете, но это может дать вам некоторые идеи.

+0

Большое спасибо за вашу помощь и предоставленную ссылку. Это было действительно полезно и дало мне несколько намеков и идей, что делать. Но проблема в том, что контурные линии в этой функции (cont3d) были параллельны оси xyz. На самом деле я хочу, чтобы некоторые контурные линии были на трехмерной поверхности, такой как человеческое тело. Не могли бы вы помочь? – Omid1989

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