Main Content

collisionCylinder

円柱型の衝突ジオメトリを作成

R2019b 以降

説明

collisionCylinder を使用して、原点を中心とする円柱型の衝突ジオメトリを作成します。

作成

説明

CYL = collisionCylinder(Radius,Length) は、指定された RadiusLength をもつ円柱型の衝突ジオメトリを作成します。円柱は、自身のボディ固定座標系に軸を揃えて配置されます。円柱の側面は z 軸に沿って配置されます。ボディ固定座標系の原点は円柱の中心にあります。

CYL = collisionCylinder(___,Pose=pose) は、ワールド座標系を基準にして円柱の Pose プロパティを pose に設定します。

プロパティ

すべて展開する

円柱の半径。正のスカラーとして指定します。単位はメートルです。

データ型: double

円柱の長さ。正のスカラーとして指定します。単位はメートルです。

データ型: double

ワールド座標系を基準とした衝突ジオメトリの姿勢。4 行 4 列の同次行列または se3 オブジェクトとして指定します。姿勢は、衝突ジオメトリを作成した後に変更できます。

メモ

姿勢を se3 オブジェクトとして指定する場合、Pose プロパティには姿勢が 4 行 4 列の数値行列として格納されることに注意してください。

データ型: single | double

オブジェクト関数

show衝突ジオメトリの表示
convertToCollisionMeshConvert collision primitive geometry into collision mesh geometry
fitCollisionCapsuleFit collision capsule around collision geometry

すべて折りたたむ

原点を中心とする円柱型の衝突ジオメトリを作成します。この円柱は、長さが 4 メートル、半径が 1 メートルです。

rad = 1;
len = 4;
cyl = collisionCylinder(rad,len)
cyl = 
  collisionCylinder with properties:

    Radius: 1
    Length: 4
      Pose: [4x4 double]

円柱を可視化します。

show(cyl)
title("Cylinder")

Figure contains an axes object. The axes object with title Cylinder, xlabel X, ylabel Y contains an object of type patch.

"y" 軸を中心とした π/4 ラジアンの時計回りの回転に対応する同次変換を作成します。円柱の姿勢を新しい行列に設定します。円柱を表示します。

ang = pi/4;
mat = axang2tform([0 1 0 ang]);
cyl.Pose = mat;
show(cyl)

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains an object of type patch.

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2019b で導入

すべて展開する