Create a 3D mesh representing a cylinder. [V, F] = cylinderMesh(CYL) Computes vertex coordinates and face vertex indices of a mesh representing a 3D cylinder given as [X1 Y1 Z1 X2 Y2 Z2 R]. [V, F] = cylinderMesh(..., OPT) with OPT = 'open' (0) (default) or 'closed' (1), specify if the bases of the cylinder should be included. [V, F] = cylinderMesh(..., NAME, VALUE); Specifies one or several options using parameter name-value pairs. Available options are: 'nPerimeter' the number of circles represeting the perimeter 'nRho' the number of circles along the hight Example % Draw a rotated cylinder cyl = [0 0 0 10 20 30 5]; [v, f] = cylinderMesh(cyl); figure;drawMesh(v, f, 'FaceColor', 'r'); view(3); axis equal; % Draw three mutually intersecting cylinders p0 = [30 30 30]; p1 = [90 30 30]; p2 = [30 90 30]; p3 = [30 30 90]; [v1 f1] = cylinderMesh([p0 p1 25]); [v2 f2] = cylinderMesh([p0 p2 25]); [v3 f3] = cylinderMesh([p0 p3 25],'closed','nPeri',40,'nRho',20); figure; hold on; drawMesh(v1, f1, 'FaceColor', 'r'); drawMesh(v2, f2, 'FaceColor', 'g'); drawMesh(v3, f3, 'FaceColor', 'b'); view(3); axis equal set(gcf, 'renderer', 'opengl') See also drawCylinder, torusMesh, sphereMesh
Package: matgeom