5514653b94
- Move orphaned modules (data_segment.py, contour_models.py, marching_squares.py) to attic/. - Standardize local settings logic, serial port parameters, and graph view plots. - Update pyproject.toml pyside6-project dependencies and configure gitignore.
27 lines
504 B
Python
27 lines
504 B
Python
from dataclasses import dataclass, field
|
|
from typing import List
|
|
|
|
|
|
# ===== Single Contour Segment =====
|
|
@dataclass
|
|
class ContourSegment:
|
|
start_x: float
|
|
start_y: float
|
|
end_x: float
|
|
end_y: float
|
|
|
|
@property
|
|
def start(self):
|
|
return (self.start_x, self.start_y)
|
|
|
|
@property
|
|
def end(self):
|
|
return (self.end_x, self.end_y)
|
|
|
|
|
|
# ===== Contour Line =====
|
|
@dataclass
|
|
class ContourLine:
|
|
level: float
|
|
segments: List[ContourSegment] = field(default_factory=list)
|