簡體   English   中英

如何使用Matlab將Surf轉換為3D對象

[英]How to convert surf to 3D object using matlab

我有3個向量,大小為x = 500y = 500z = 500*500 z是從-33高度。 我已經使用surf(x,y,z)顯示了它,但是我的問題是在這里我想將其轉換為大小為x=500y=500z=500 3D對象。 專家,我該如何轉換?

help surf

SURF(x,y,Z)和SURF(x,y,Z,C),其中兩個向量自變量替換了前兩個矩陣自變量,必須具有length(x)= n和length(y)= m,其中[m, n] = size(Z)。 在這種情況下,表面補丁的頂點是三元組(x(j),y(i),Z(i,j))。 注意,x對應於Z列,y對應於行。

因此:

[x,y] = meshgrid(x,y);      %// replicate vectors appropriately
xyz   = [x(:) y(:) z(:)];   %// make [X,Y,Z] triplets

編輯 :請參見下圖。

在此處輸入圖片說明

在此圖像中,存在3個不同的x坐標,3個不同的y坐標,但有9個不同的z坐標。 因此,3D對象將包含9個點,通常由9 ×3坐標表示。

我知道您想以某種方式將其減少為3 ×3坐標,或以某種方式將其表示為3×3×3 = 27坐標....我只是不知道您想怎么做。

因此,請提供您想要的清晰清晰的圖片,我們將為您提供更好的幫助:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM