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 より前に導入

