def __new__(cls, *args): if isinstance(args[0], Polygon): bbox = LineSymbol("Generation filter Polygon", Srid.Wgs84LonLat, [args[0]]).bounding_box cmd = TileGenCommand.__new__(cls, bbox, args[1], args[2]) cmd.generation_polygon = args[0] else: # Also allow construction with TileGenCommand's original parameters. cmd = TileGenCommand.__new__(cls, *args) cmd.generation_polygon = None return cmd