DoLightSpreadAngles(3D)

NAME
DoLightSpreadAngles - Create a light attribute object defining the width of the light beam of spotlights

SYNOPSIS
C:
DtObject DoLightSpreadAngles(total_angle, delta_angle)
DtReal total_angle;
DtReal delta_angle;

FORTRAN:
INTEGER*4 DOLTSA(TANGLE, DANGLE)
REAL*8 TANGLE
REAL*8 DANGLE

DESCRIPTION

DoLightSpreadAngles creates a light studio attribute object that defines a multiplicative factor modifying the light intensity as a function of the angle from the light direction. The DoLightSpreadAngles attribute defines the light cone for lights of type DcLightSpot <DCLTSP> or DcLightSpotAttn <DCLTSA>.

The two angles total_angle and delta_angle are measured away from the light direction.

DoLightSpreadAngles actually defines two cones of light. Anywhere within the center cone (total_angle minus delta_angle), the factor takes on the full intensity value (1.0). Anywhere outside the outer cone defined by total_angle, the factor is set to zero. Between the two cones, the value of the factor falls off gradually from 1.0 to 0.0.

The angles total_angle and delta_angle are, by default, expressed in radians. You can change the units to degrees by using DsSetAngleUnits <DSSAU> to set DcAngleDegrees <DCAD>.

ERRORS
DoLightSpreadAngles will fail if delta_angle is greater than total_angle or less then zero, or if total_angle is less than zero.

[WARNING - value out of range]

DEFAULTS
The default value for DoLightSpreadAngles is (pi/4, 0).

SEE ALSO
DoLightAttenuation(3D), DoLightSpreadExp(3D), DoLightType(3D), DsInqAngleUnits(3D), DsSetAngleUnits(3D)