MATLAB ヘルプ センター
polyshape の境界の並べ替え
polyshape
polyout = sortboundaries(polyin,criterion,direction)
polyout = sortboundaries(polyin,"centroid",direction,ReferencePoint=point)
polyout = sortboundaries(polyin,criterion,direction) は、指定した criterion および direction に従って境界が並べ替えられた polyshape オブジェクトを返します。たとえば、polyout = sortboundaries(polyin,"area","ascend") は境界が polyin と同じである polyshape を返します。polyout は領域別に境界を昇順にリストします。
polyin
criterion
direction
polyout = sortboundaries(polyin,"area","ascend")
polyout
例
polyout = sortboundaries(polyin,"centroid",direction,ReferencePoint=point) は、各境界の重心から基準点までの距離に基づいて境界が並べ替えられた polyshape を返します。
"centroid"
point
すべて折りたたむ
多角形の境界を辺の数で並べ替え、境界に 1 つずつアクセスするようにします。
3 辺をもつ境界と 4 辺をもつ境界の 2 つの境界を含む多角形を作成します。
x1 = [0 1 1 0]; y1 = [0 0 1 1]; x2 = [2 3 2.5]; y2 = [2 2 3]; polyin = polyshape({x1,x2},{y1,y2}); plot(polyin)
辺の数に従って境界を降順に並べ替え、4 辺をもつ境界が最初に出力 polyshape オブジェクトでインデックス付けされるようにします。
polyout = sortboundaries(polyin,"numsides","descend");
これで、4 辺をもつ境界をインデックスに基づいて参照できるようになります。たとえば、境界の頂点にアクセスする場合や面積を計算する場合に参照します。
[x,y] = boundary(polyout,1)
x = 5×1 0 0 1 1 0
y = 5×1 0 1 1 0 0
area(polyout,1)
ans = 1
入力 polyshape。スカラー、ベクトル、行列または多次元配列として指定します。
データ型: polyshape
"area"
"perimeter"
"numsides"
並べ替え基準。次の値のいずれかとして指定します。
"area" — 境界の面積の順に並べ替え。
"perimeter" — 境界の周囲長の順に並べ替え。
"numsides" — 各境界の辺の数の順に並べ替え。
"centroid" — 各境界の重心と基準点 (0,0) との間の距離の順に並べ替え。
"ascend"
"descend"
並べ替える方向。"ascend" または "descend" として指定します。
[0 0]
基準点。2 要素の行ベクトルとして指定します。1 番目の要素は基準点の x 座標で、2 番目の要素は y 座標です。
すべて展開する
使用上の注意および制限:
コード生成用に動的メモリ割り当てを有効にしなければなりません。
名前と値の引数はコンパイル時の定数でなければなりません。
出力 polyshape オブジェクトの境界の順序は MATLAB での順序と異なる可能性があります。ただし、指定した入力基準に基づいて境界を並べ替えることができます。
使用上の注意および制限については、「C/C++ コード生成」セクションを参照してください。GPU コード生成にも同様の、使用上の注意および制限が適用されます。
R2017b で導入
rmboundary | sortregions | boundary | polyshape
rmboundary
sortregions
boundary
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ