code: def clip_polygon(self, points):
          
          self.gsave()
          self._path_polygon(points)
          self.__clip_stack.append(self.__clip_box)
          self.__clip_box = _intersect_box(self.__clip_box, _compute_bounding_box(points))
          self.clip_sub()
docs: Create a polygonal clip region. You must call endclip() after
          you completed drawing. See also the polygon method.