EventDispatcher → BufferGeometry →

# TorusGeometry

A geometry class for representing an torus.

## Code Example

    const geometry = new THREE.TorusGeometry( 10, 3, 16, 100 );
    const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
    const torus = new THREE.Mesh( geometry, material );
    scene.add( torus );

## Constructor

### new TorusGeometry ( radius : number, tube : number, radialSegments : number, tubularSegments : number, arc : number, thetaStart : number, thetaLength : number )

Constructs a new torus geometry.

radius | Radius of the torus, from the center of the torus to the center of the tube. Default is `1`.
tube | Radius of the tube. Must be smaller than `radius`. Default is `0.4`.
radialSegments | The number of radial segments. Default is `12`.
tubularSegments | The number of tubular segments. Default is `48`.
arc | Central angle in radians. Default is `Math.PI*2`.
thetaStart | Start of the tubular sweep in radians. Default is `0`.
thetaLength | Length of the tubular sweep in radians. Default is `Math.PI*2`.

## Properties

### .parameters : Object

Holds the constructor parameters that have been used to generate the geometry. Any modification after instantiation does not change the geometry.

## Static Methods

### .fromJSON ( data : Object ) : TorusGeometry

Factory method for creating an instance of this class from the given JSON object.

data | A JSON object representing the serialized geometry.

Returns: A new instance.

## Source

src/geometries/TorusGeometry.js