reducepatch
パッチ面の数を減らす
構文
reducepatch(p,r)
nfv = reducepatch(p,r)
nfv = reducepatch(fv,r)
nfv = reducepatch(p)
nfv = reducepatch(fv)
reducepatch(...,'fast')
reducepatch(...,'verbose')
nfv = reducepatch(f,v,r)
[nf,nv] = reducepatch(...)
説明
reducepatch(p,r)
は、ハンドル p
で識別されるパッチ面の数を、元のオブジェクトの全体像を保持しながら減らします。MATLAB® は、減少ファクター r
を、その値に依存して次の 2 とおりの解釈を行います。
r
が 1 より小さい場合、r
は元の面数に乗算すると解釈されます。たとえば、r
が 0.2 の場合、面数は元のパッチの 20% になります。r
が 1 以上の場合、r
は減少した後の面数を示します。たとえば、r
を 400 とすると、面数は 400 面になるまで減少されます。
nfv = reducepatch(p,r)
は、面と頂点が減少したセットを返しますが、パッチ p
の Faces
と Vertices
プロパティは設定しません。struct nfv
は、減少処理した後の面と頂点を含んでいます。
nfv = reducepatch(fv,r)
は、struct fv
内の面と頂点を減少させます。
nfv = reducepatch(p)
と nfv = reducepatch(fv)
は、0.5
の減少値を使用します。
reducepatch(...,'fast')
は、頂点が固有で、共有された頂点を計算しないと仮定しています。
reducepatch(...,'verbose')
は、計算の進行状況に応じて、コマンド ウィンドウにその状況を表すメッセージを表示します。
nfv = reducepatch(f,v,r)
は、f
の面と v
の頂点に減少操作を行います。
[nf,nv] = reducepatch(...)
は、配列 nf
と nv
に面と頂点を返します。
例
ヒント
パッチが頂点を共有していない場合、MATLAB は面数を減少させる前に、共有した頂点を計算します。パッチの面が三角形でない場合、MATLAB は減少させる前に面を三角形にします。返される面は、常に三角形として定義されています。
出力される三角形の数は、減少ファクター引数 (r
) で設定した値と厳密には一致しません。特に、元のパッチの面が三角形でない場合は、このような事柄が生じます。
拡張機能
バージョン履歴
R2006a より前に導入