Datastructs

Сlasses for representing geometric entities during optimization. These classes are pydantic models, which simplifies serialization, deserialization, validation and configuring experiments.

Point

class gefest.core.geometry.datastructs.point.Point(x: float, y: float)[source]

Bases: object

2D point dataclass.

property coords: list[float]

List coordinates representation.

Polygon

class gefest.core.geometry.datastructs.polygon.Polygon(points: list[~gefest.core.geometry.datastructs.point.Point] = <factory>, id_: ~uuid.UUID | ~gefest.core.geometry.datastructs.polygon.PolyID | None = <factory>)[source]

Bases: object

Polygon dataclass.

Structure

class gefest.core.geometry.datastructs.structure.Structure(polygons: tuple[~gefest.core.geometry.datastructs.polygon.Polygon, ...] = <factory>, fitness: list[float] = <factory>, extra_characteristics: dict = <factory>, id_: ~uuid.UUID = <factory>)[source]

Bases: object

Structure dataclass.

append(value)[source]

Adds polygon to structure.

remove(value)[source]

Removes polygon from structure.