PK_ERROR_code_t PK_BODY_create_solid_torus
(
--- received arguments ---
double major_radius, --- torus major radius
double minor_radius, --- torus minor radius (> 0)
const PK_AXIS2_sf_t *basis_set, --- position and orientation (may be NULL)
--- returned arguments ---
PK_BODY_t *const body --- solid body returned
)
This function creates a solid torus.
Specific Errors:
PK_ERROR_R1_R2_mismatch major_radius = minor_radius, or
major_radius + minor_radius <= 0
PK_ERROR_distance_le_0 minor_radius <= zero, or
major_radius = zero
In its local coordinate system, this function creates a solid torus of the
given major_radius and minor_radius centred at the origin, and whose spine
lies in the xy plane. If minor_radius is larger in magnitude than
major_radius then an apple torus or lemon torus is created (depending
upon whether major_radius is positive or negative respectively.
basis_set positions and orientates the local coordinate system in the world
coordinate system. If it is given as NULL, then the local and world
coordinate systems are the same.
The basis_set in the standard form of the created TORUS surface inherits the
axis and ref_direction from the given basis_set.