public void AreaLightWithJitteredSamples( double px, double py, double pz, double result) { var w = new DefaultWorld(); var corner = Vector4.CreatePosition(-0.5, -0.5, -5); var v1 = Vector4.CreateDirection(1, 0, 0); var v2 = Vector4.CreateDirection(0, 1, 0); var light = new AreaLight( corner, v1, 2, v2, 2, Color.White) { Jitter = new Sequence(0.7, 0.3, 0.9, 0.1, 0.5), }; var pt = Vector4.CreatePosition(px, py, pz); var intensity = light.GetIntensity(pt, w); Assert.Equal(result, intensity); }
public void AreaLightIntensityFunction( double px, double py, double pz, double result) { var w = new DefaultWorld(); var corner = Vector4.CreatePosition(-0.5, -0.5, -5); var v1 = Vector4.CreateDirection(1, 0, 0); var v2 = Vector4.CreateDirection(0, 1, 0); var light = new AreaLight( corner, v1, 2, v2, 2, Color.White); var pt = Vector4.CreatePosition(px, py, pz); var intensity = light.GetIntensity(pt, w); Assert.Equal(result, intensity); }