code: def test_batch(self, device, dtype):
      im = torch.rand(2, 3, 12, 16, dtype=dtype, device=device)
      pts = torch.tensor(
          [
              [[4, 4], [12, 4], [12, 8], [4, 8]],
              [[0, 0], [4, 0], [4, 4], [0, 4]],
          ],
          dtype=dtype,
          device=device,
      )
      color = torch.tensor(
          [[0.5, 0.5, 0.5], [0.5, 0.5, 0.75]],
          dtype=dtype,
          device=device,
      )
      poly_im = draw_convex_polygon(im.clone(), pts, color)
      rect = torch.tensor(
          [[[4, 4, 12, 8]], [[0, 0, 4, 4]]], dtype=dtype, device=device
      )
      rect_im = draw_rectangle(
          im.clone(), rect, color[:, None], fill=True
      )
      assert_close(rect_im, poly_im)
  
imports: import math
  import pytest
  import torch
  from kornia.testing import assert_close
  from kornia.utils import create_meshgrid, draw_convex_polygon, draw_rectangle
  from kornia.utils.draw import draw_line, draw_point2d
label_desc: Use image node_id 4 for calling the TestFillConvexPolygon obj's underlying member method code with example usage: obj.test_batch(device, dtype) without return types