[−][src]Static p5_sys::global::torus
pub static torus: TorusInternalType
Draw a torus with given radius and tube radius
DetailX and detailY determine the number of subdivisions in the x-dimension and the y-dimension of a torus. More subdivisions make the torus appear to be smoother. The default and maximum values for detailX and detailY are 24 and 16, respectively. Setting them to relatively small values like 4 and 6 allows you to create new shapes other than a torus.
Examples
// draw a spinning torus // with ring radius 30 and tube radius 15 function setup() { createCanvas(100, 100, WEBGL); } function draw() { background(205, 102, 94); rotateX(frameCount * 0.01); rotateY(frameCount * 0.01); torus(30, 15); }
// slide to see how detailX works let detailX; function setup() { createCanvas(100, 100, WEBGL); detailX = createSlider(3, 24, 3); detailX.position(10, height + 5); detailX.style('width', '80px'); } function draw() { background(205, 102, 94); rotateY(millis() / 1000); torus(30, 15, detailX.value(), 12); }
// slide to see how detailY works let detailY; function setup() { createCanvas(100, 100, WEBGL); detailY = createSlider(3, 16, 3); detailY.position(10, height + 5); detailY.style('width', '80px'); } function draw() { background(205, 102, 94); rotateY(millis() / 1000); torus(30, 15, 16, detailY.value()); }
Parameters
radius?
radius of the whole ring
tubeRadius?
radius of the tube
detailX?
number of segments in x-dimension,
the more segments the smoother geometry
default is 24
detailY?
number of segments in y-dimension,
the more segments the smoother geometry
default is 16