docstr: Tests the output of estimate radiance function with various parameters.
  
  In this test the point on the surface is always [0, 0, 0] ,the surface
  normal is [0, 0, 1] and the fake brdf function returns the (normalized)
  direction of the outgoing light as its output.
  
  Args:
   light_radiance: An array of size K representing the point light radiances.
   light_pos: An array of size [3,] representing the point light positions.
   observation_pos: An array of size [3,] representing the observation point.
   expected_result: An array of size [3,] representing the expected result of
     the estimated reflected radiance function.
   reflected_light_fall_off: A boolean specifying whether or not to include
     the fall off of the reflected light in the calculation. Defaults to
     False.
docstr_tok: ["Tests","the","output","of","estimate","radiance","function","with","various","parameters",".","In","this","test","the","point","on","the","surface","is","always","[","0",",","0",",","0","]",",","the","surface","normal","is","[","0",",","0",",","1","]","and","the","fake","brdf","function","returns","the","(","normalized",")","direction","of","the","outgoing","light","as","its","output",".","Args",":","light_radiance",":","An","array","of","size","K","representing","the","point","light","radiances",".","light_pos",":","An","array","of","size","[","3",",","]","representing","the","point","light","positions",".","observation_pos",":","An","array","of","size","[","3",",","]","representing","the","observation","point",".","expected_result",":","An","array","of","size","[","3",",","]","representing","the","expected","result","of","the","estimated","reflected","radiance","function",".","reflected_light_fall_off",":","A","boolean","specifying","whether","or","not","to","include","the","fall","off","of","the","reflected","light","in","the","calculation",".","Defaults","to","False","."]
code: def test_estimate_radiance_preset(
      self,
      light_radiance,
      light_pos,
      observation_pos,
      expected_result,
      reflected_light_fall_off=False,
  ):
      """Tests the output of estimate radiance function with various parameters.
  
      In this test the point on the surface is always [0, 0, 0] ,the surface
      normal is [0, 0, 1] and the fake brdf function returns the (normalized)
      direction of the outgoing light as its output.
  
      Args:
       light_radiance: An array of size K representing the point light radiances.
       light_pos: An array of size [3,] representing the point light positions.
       observation_pos: An array of size [3,] representing the observation point.
       expected_result: An array of size [3,] representing the expected result of
         the estimated reflected radiance function.
       reflected_light_fall_off: A boolean specifying whether or not to include
         the fall off of the reflected light in the calculation. Defaults to
         False.
      """
      tensor_size = np.random.randint(1, 3) + 1
      tensor_shape = np.random.randint(1, 10, size=tensor_size).tolist()
      lights_tensor_size = np.random.randint(1, 3) + 1
      lights_tensor_shape = np.random.randint(
          1, 10, size=lights_tensor_size
      ).tolist()
      point_light_radiance = np.tile(
          light_radiance, lights_tensor_shape + [1]
      )
      point_light_position = np.tile(
          light_pos, lights_tensor_shape + [1]
      )
      surface_point_normal = np.tile(
          [0.0, 0.0, 1.0], tensor_shape + [1]
      )
      surface_point_position = np.tile(
          [0.0, 0.0, 0.0], tensor_shape + [1]
      )
      observation_point = np.tile(observation_pos, tensor_shape + [1])
      expected = np.tile(
          expected_result, tensor_shape + lights_tensor_shape + [1]
      )
  
      pred = point_light.estimate_radiance(
          point_light_radiance,
          point_light_position,
          surface_point_position,
          surface_point_normal,
          observation_point,
          fake_brdf,
          reflected_light_fall_off=reflected_light_fall_off,
      )
  
      self.assertAllClose(expected, pred)
  
file_path: graphics/tensorflow_graphics/rendering/light/tests/point_light_test.py
imports: import math
  from absl.testing import flagsaver
  from absl.testing import parameterized
  import numpy
  import tensorflow
  from tensorflow_graphics.rendering.light import point_light
  from tensorflow_graphics.util import test_case
label_desc: Use image node_id 1 for calling the PointLightTest obj's underlying member method code with example usage: obj.test_estimate_radiance_preset(light_radiance, light_pos, observation_pos, expected_result, reflected_light_fall_off) without return types