Code covered by the BSD License

### Highlights from Cylinder

4.6
4.6 | 5 ratings Rate this file 13 Downloads (last 30 days) File Size: 2.21 KB File ID: #13995 Version: 1.0

# Cylinder

### Divahar Jayaraman (view profile)

18 Feb 2007 (Updated )

This function will construct a 3d cylinder connecting two points (centers)

File Information
Description

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
surface

Typical Inputs
X1=[10 10 10];
X2=[35 20 40];
r=1;
n=20;
cyl_color='b';
closed=1;

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

Acknowledgements

This file inspired Cone.

MATLAB release MATLAB 7.0.1 (R14SP1)
22 Jun 2016 Thales

### Thales (view profile)

23 Aug 2013 Kuifeng

### Kuifeng (view profile)

28 May 2012 Damith Jinasena

### Damith Jinasena (view profile)

04 Sep 2007 karl marx

Its very useful to me and all.

Comment only
23 Mar 2007 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 ?
Thanks

22 Feb 2007 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.