sec_interp.exporters.interpretation_3d.geometry module
2D-to-3D projection helpers for interpretation polygons.
- sec_interp.exporters.interpretation_3d.geometry.calculate_section_geometry(section_line: qgis.core.QgsGeometry) tuple[float, float, float]
Calculate origin and azimuth from the section line.
- sec_interp.exporters.interpretation_3d.geometry.collect_projected_features(interpretations: list[Any], fields: list, sorted_keys: list[str], origin_x: float, origin_y: float, azimuth: float) list[Any]
Project every valid interpretation polygon to 3D features.
- sec_interp.exporters.interpretation_3d.geometry.create_3d_rings(poly_2d: list[list[qgis.core.QgsPointXY]], origin_x: float, origin_y: float, azimuth: float, vert_exag: float) list[qgis.core.QgsLineString]
Transform 2D rings to 3D LineStrings.
- sec_interp.exporters.interpretation_3d.geometry.ensure_closed_polygon(vertices: list) list
Ensure the polygon vertices are closed.
- sec_interp.exporters.interpretation_3d.geometry.get_unique_vertices(vertices_2d: Any) list
Deduplicate consecutive vertices.
- sec_interp.exporters.interpretation_3d.geometry.prepare_2d_geometry(polygon: Any) QgsGeometry | None
Prepare and validate 2D geometry from polygon vertices.
- sec_interp.exporters.interpretation_3d.geometry.project_to_3d_features(geom_2d: qgis.core.QgsGeometry, polygon: Any, fields: list, origin_x: float, origin_y: float, azimuth: float, custom_keys: list[str], vert_exag: float = 1.0) list[Any]
Project a 2D geometry (potentially MultiPolygon) to 3D features.