/// <summary>Initialise the attenuator.</summary> /// <param name="method"></param> /// <param name="start"></param> /// <param name="end"></param> public LightAngleAttenuation(LightAttenuation method, Angle start, Angle end) : this() { Method = method; Start = start; End = end; }
/// <summary>Construct light attenuation parameters.</summary> /// <param name="method"></param> /// <param name="start"></param> /// <param name="end"></param> /// <param name="distanceFunction"></param> public LightLengthAttenuation(LightAttenuation method, Length start, Length end, LightDistanceFunction distanceFunction) : this() { Method = method; Start = start; End = end; DistanceFunction = distanceFunction; }
/// <summary>Create light attenuation parameters from metres.</summary> /// <param name="method"></param> /// <param name="startMetres"></param> /// <param name="endMetres"></param> /// <param name="distanceFunction"></param> /// <returns></returns> public static LightLengthAttenuation Metres(LightAttenuation method, double startMetres, double endMetres, LightDistanceFunction distanceFunction = LightDistanceFunction.Sphere) { return(new LightLengthAttenuation(method, Length.Metres(startMetres), Length.Metres(endMetres), distanceFunction)); }
/// <summary>Create an attenuator from radians.</summary> /// <param name="method"></param> /// <param name="startRadians"></param> /// <param name="endRadians"></param> /// <returns></returns> public static LightAngleAttenuation Radians(LightAttenuation method, double startRadians, double endRadians) { return(new LightAngleAttenuation(method, Angle.Radians(startRadians), Angle.Radians(endRadians))); }
/// <summary>Create an attenuator from degrees.</summary> /// <param name="method"></param> /// <param name="startDegrees"></param> /// <param name="endDegrees"></param> /// <returns></returns> public static LightAngleAttenuation Degrees(LightAttenuation method, double startDegrees, double endDegrees) { return(new LightAngleAttenuation(method, Angle.Degrees(startDegrees), Angle.Degrees(endDegrees))); }