File Exchange

image thumbnail


version (2.21 KB) by Divahar Jayaraman
This function will construct a 3d cylinder connecting two points (centers)


Updated 16 Mar 2007

View License

This function constructs a cylinder connecting two center points

Usage :
[Cylinder EndPlate1 EndPlate2] = Cylinder(X1+20,X2,r,n,'r',closed,lines)

Cylinder-------Handle of the cylinder
EndPlate1------Handle of the Starting End plate
EndPlate2------Handle of the Ending End plate
X1 and X2 are the 3x1 vectors of the two points
r is the radius of the cylinder
n is the no. of elements on the cylinder circumference (more--> refined)
cyl_color is the color definition like 'r','b',[0.52 0.52 0.52]
closed=1 for closed cylinder or 0 for hollow open cylinder
lines=1 for displaying the line segments on the cylinder 0 for only

Typical Inputs
X1=[10 10 10];
X2=[35 20 40];

NOTE: There is a MATLAB function "cylinder" to revolve a curve about an
axis. This "Cylinder" provides more customization like direction and etc

Comments and Ratings (7)


Still useful 10 years later. Thanks for the upload!



karl marx

Its very useful to me and all.

Germain Aoun

Nice work ! Error corrected and no glitches here !
Is there a way to detect whether a point (X;Y;Z) belongs (is inside) to the volume delimited by a cylinder generated by your function ?

Charles Warren

I get inconsistent results depending on whether I set closed. I think the translation code for the endcaps (lines 82-90) away from the origin, the offsets are wrong (cut and paste typos probably). Line 83 should end with +X1(1); line 85 should end with +X1(3); line 87 should end with +X1(1); line 89 should end with +X1(3). When I make those changes, I get consistent plots for closed=0,1.


Thanks to Mr. Charles Warren.

The error that he has indicated has been corrected.

MATLAB Release Compatibility
Created with R14SP1
Compatible with any release
Platform Compatibility
Windows macOS Linux

Inspired: Cone

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.

Learn About Live Editor