IFC 4.3.2.20250327 (IFC4X3_ADD2) under development

8.9.3.73 IfcToroidalSurface

8.9.3.73.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 IfcAxis2Placement3D 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.73.2 Entity inheritance

8.9.3.73.3 Attributes

# Attribute Type Description
IfcRepresentationItem (2)
IfcSurface (1)
IfcElementarySurface (1)
Click to show 4 hidden inherited attributes
IfcToroidalSurface (2)
2 MajorRadius IfcPositiveLengthMeasure

The major radius of the torus.

3 MinorRadius IfcPositiveLengthMeasure

The minor radius of the torus.

Table 8.9.3.73.A

8.9.3.73.4 Formal propositions

Name Description
MajorLargerMinor

The attribute value of the MinorRadius shall be smaller then the value of the MajorRadius

MinorRadius < MajorRadius
Table 8.9.3.73.B

8.9.3.73.5 Formal representation

ENTITY IfcToroidalSurface
SUBTYPE OF (IfcElementarySurface);
MajorRadius : IfcPositiveLengthMeasure;
MinorRadius : IfcPositiveLengthMeasure;
WHERE
MajorLargerMinor : MinorRadius < MajorRadius;
END_ENTITY;

8.9.3.73.6 References

Edit on Github


Is this page difficult to understand? Let us know!

8.9.3.73.7 Changelog

8.9.3.73.7.1 IFC4

  • New resource