# 8.9.3.74 IfcToroidalSurface

## 8.9.3.74.1 Semantic definition

The IfcToroidalSurface is a bounded elementary surface. It is constructed by completely revolving a circle around an axis line. The inherited Position attribute defines the IfcAxisPlacement3D and provides:

C = Position.Location x = Position.P[1] y = Position.P[2] z = Position.P[3] (axis of toroidal_surface) R = MajorRadius r = MinorRadius

σ(u,v) = C + (R + r_cos _v)((cos_u_)x + (sin u))y) + r(sin_v_))z

where the parametrisation range is 0 ≤ u, v ≤ 360 degrees. u and v are angular parameters and when numerical values are specified they shall use the current units for plane angle measure.

In the placement coordinate system defined above, the surface is represented by the equation S = 0, where

S(x, y, z) = x^2^ + y^2^ + z^2^ -2R√(x^2^+y^2^) - r^2^ + R^2^.

The positive direction of the normal to the surface at any point on the surface is given by

( S~x~, S~y~, S~z~ ).

The unit normal is given by

N(u,v) = cos_v_((cos u)x + (sin u)y) + (sin v)z.

The sense of this normal is away from the nearest point on the circle of radius R with centre C. A manifold surface will be produced if the major radius is greater than the minor radius. If this condition is not fulfilled, the resulting surface will be self-intersecting.

## 8.9.3.74.5 Formal representation

ENTITY IfcToroidalSurface
SUBTYPE OF (IfcElementarySurface);
WHERE
END_ENTITY;