2012-02-13 15 views
1

私はプロットしたい特定の対称性を持つ関数f(x、y)を持っています。ここでの例である:MATLAB三角形分割による面データの整列

view(2)view(3)

このプロットを用いて生成することができる。だから、その関数は、Y = Xの約反射対称性を有している知っているし、その後、得られた機能があることがある

[x,y,z] = 
    0   0 0.1415 
0.1999 0.1999 0.1165 
0.2760   0 0.1268 
0.3694 0.3694 0.0983 
0.4830   0 0.1142 
0.5090 0.5090 0.0903 
0.5550 0.1871 0.0881 
0.6189 0.3558 0.0715 
0.6197 0.6197 0.0907 
0.6399   0 0.1056 
0.7071 0.7071 0.1415 
0.7169 0.4835 0.0869 
0.7215 0.1200 0.0859 
0.7304 0.2392 0.0680 
0.7643   0 0.1005 
0.7926 0.3574 0.0856 
0.8090 0.5878 0.1393 
0.8581 0.1122 0.0821 
0.8634 0.2343 0.0878 
0.8794   0 0.0986 
0.8910 0.4540 0.1332 
0.9511 0.3090 0.1253 
0.9877 0.1564 0.1191 
1.0000   0 0.1169 

t = 
6  4  8 
12  6  8 
8  4  7 
4  2  7 
8  7 14 
14  7 13 
3  2  1 
5  7  3 
3  7  2 
17 12 21 
6 12  9 
9 17 11 
12 17  9 
10 15 13 
10  7  5 
13  7 10 
21 12 16 
16 12  8 
8 14 16 
18 14 13 
15 20 18 
13 15 18 
24 23 18 
18 20 24 
21 16 22 
23 22 19 
19 18 23 
14 18 19 
19 16 14 
19 22 16 

trisurf(t,x,y,z) 

すべての象限で繰り返される。

allx = [x; x;-x;-x;y; y;-y;-y]; 
ally = [y;-y; y;-y;x;-x; x;-x]; 
allz = [z; z; z; z;z; z; z; z]; 

これは、プロットしたいサーフェスの新しい頂点です。今、この新しいサーフェスのフェイスを正しく生成するにはどうすればよいですか? 、

だからあなたの質問にセットアップする方法trisurfの最初の引数をについてです: enter image description here

+0

私はここで何が起こっているか完全に理解していません。私はあなたのコードを拡張して、人々が実験することができる「楽しい」ための値を生成し、さらに「顔データ」を意味するものをより詳細に説明する(および/またはコードに追加する) 。 – YXD

+0

@MrE - 迅速な返信をありがとう。うまくいけば私が探しているものを明確にするために質問を編集しました。 –

答えて

2

投機:私は細かいメッシュとかなりライトを追加使用する場合

が、それは次のようになりますつまり、コード内に拡張tを定義する方法です。 docsによれば、これは残りの引数によって定義される頂点へのインデックスです。私はMATLABは、このマシンにインストールされていないが、あなたがしなければ何が起こる:

allx = [x; x;-x;-x]; 
ally = [y;-y; y;-y]; 
allz = [z; z; z; z]; 
s = size(x,1); 
t = [t; t + s; t + 2*s; t + 3*s] 

ただ、これは理にかなって、それが他の象限内に延びている場合は/どのようならばと思いますしようとしています。

+0

それは、ありがとう!そして、はい、それは拡張します。結果は次のとおりです:http://imgur.com/2MnMo。 –

+0

素晴らしいですね!それがうれしいです。 – YXD

関連する問題