Main Content


Create sphere collision geometry


Use collisionSphere to create a sphere collision geometry centered at the origin.




sph = collisionSphere(Radius) creates a sphere collision geometry with a specified Radius. The origin of the geometry-fixed frame is at the center of the sphere.


expand all

Radius of sphere, specified as a positive scalar. Units are in meters.

Data Types: double

Pose of the collision geometry relative to the world frame, specified as a 4-by-4 homogeneous matrix. You can change the pose after you create the collision geometry.

Data Types: double

Object Functions

showShow collision geometry
convertToCollisionMeshConvert collision primitive geometry into collision mesh geometry
fitCollisionCapsuleFit collision capsule around collision geometry


collapse all

Create a sphere collision geometry centered at the origin. The sphere has a radius of 1 meter.

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

    Radius: 1
      Pose: [4x4 double]

Visualize the sphere.


Figure contains an axes object. The axes object with title Sphere contains an object of type patch.

Create a cylinder collision geometry of radius 1 meter and length 3 meters.

cyl = collisionCylinder(1,3);

Create a homogeneous transformation that corresponds to a translation of 2.5 meters up the z-axis. Set the pose of the sphere to the matrix. Show the sphere and the cylinder.

mat = trvec2tform([0 0 2.5]);
sph.Pose = mat;
hold on
zlim([-2 4])

Figure contains an axes object. The axes object contains 2 objects of type patch.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2019b