sec_interp.core.services.drillhole.trajectory_engine module

Engine for calculating and projecting drillhole trajectories.

class sec_interp.core.services.drillhole.trajectory_engine.TrajectoryEngine

Bases: object

Orchestrates trajectory calculation and projection for individual drillholes.

__init__() None

Initialize the trajectory engine.

create_drillhole_result_tuple(hole_id: Any, projected_traj: list[tuple], hole_geol_data: list[GeologySegment]) tuple

Create the final result tuple for a drillhole.

process_single_hole(hole_id: Any, collar_point: qgis.core.QgsPointXY, collar_z: float, given_depth: float, survey_data: list[tuple[float, float, float]], intervals: list[tuple[float, float, str]], line_geom: qgis.core.QgsGeometry, line_start: qgis.core.QgsPointXY, distance_area: qgis.core.QgsDistanceArea, buffer_width: float, section_azimuth: float) tuple[list[GeologySegment], tuple]

Core logic for a single hole processing.