A procedural torus-shaped geometry.
The size, shape and tesselation properties of the torus can be controlled via constructor parameters. By default, the function will create a torus in the XZ-plane with a tube radius of 0.2, a ring radius of 0.3, 30 segments and 20 sides.
Note that the torus is created with UVs in the range of 0 to 1.
new TorusGeometry(opts?: {
calculateTangents: boolean;
ringRadius: number;
sectorAngle: number;
segments: number;
sides: number;
tubeRadius: number;
}): TorusGeometry
Create a new TorusGeometry instance.
An object that specifies optional inputs for the function as follows:
boolean
Generate tangent information (defaults to false).
number
The radius from the centre of the torus to the centre of the tube (defaults to 0.3).
number
The sector angle in degrees of the ring of the torus (defaults to 2 * Math.PI).
number
The number of radial divisions forming cross-sections of the torus ring (defaults to 20).
number
The number of divisions around the tubular body of the torus ring (defaults to 30).
number
The radius of the tube forming the body of the torus (defaults to 0.2).
Geometry.constructor
blendIndices: undefined | number[];
Blend indices.
blendWeights: undefined | number[];
Blend weights.
colors: undefined | number[];
Colors.
calculateNormals(): void
Generates normal information from the positions and triangle indices.
void
calculateTangents(): void
Generates tangent information from the positions, normals, texture coordinates and triangle indices.
void