Contenu principal

Cette page a été traduite par traduction automatique. Cliquez ici pour voir la dernière version en anglais.

collisionSphere

Créer une géométrie de collision de sphère

Description

Utilisez collisionSphere pour créer une géométrie de collision de sphère centrée à l'origine.

Création

Description

SPH = collisionSphere(Radius) crée une géométrie de collision de sphère avec un Radius spécifié. L'origine du cadre géométriquement fixe se trouve au centre de la sphère.

exemple

SPH = collisionSphere(___,Pose=pose) définit la propriété Pose de la sphère sur pose, par rapport au cadre mondial.

Propriétés

développer tout

Rayon de la sphère, spécifié comme un scalaire positif. Les unités sont en mètres.

Types de données : double

Pose de la géométrie de collision par rapport au référentiel mondial, spécifiée comme une matrice homogène 4 x 4 ou un objet se3 . Vous pouvez modifier la pose après avoir créé la géométrie de collision.

Remarque

Notez que lorsque la pose est spécifiée en tant qu'objet se3 , la propriété Pose stocke la pose sous forme de matrice numérique 4 x 4.

Types de données : single | double

Fonctions d'objet

showAfficher la géométrie des collisions
convertToCollisionMeshConvertir la géométrie primitive de collision en géométrie de maillage de collision
fitCollisionCapsuleAjuster la capsule de collision autour de la géométrie de collision

Exemples

réduire tout

Créez une géométrie de collision de sphère centrée sur l'origine. La sphère a un rayon de 1 mètre.

rad = 1;
sph = collisionSphere(rad)
sph = 
  collisionSphere with properties:

    Radius: 1
      Pose: [4x4 double]

Visualisez la sphère.

show(sph)
title("Sphere")

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

Créez une géométrie de collision cylindrique de rayon 1 mètre et de longueur 3 mètres.

cyl = collisionCylinder(1,3);

Créez une transformation homogène qui correspond à une translation de 2,5 mètres vers le haut de l'axe z. Définissez la pose de la sphère sur la matrice. Montrez la sphère et le cylindre.

mat = trvec2tform([0 0 2.5]);
sph.Pose = mat;
show(sph)
hold on
show(cyl)
view(90,0)
zlim([-2 4])

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

Capacités étendues

développer tout

Génération de code C/C++
Générez du code C et C++ avec MATLAB® Coder™.

Historique des versions

Introduit dans R2019b

développer tout