sec_interp.gui.preview_layer_factory module

Factory for creating and styling QGIS memory layers for the preview.

class sec_interp.gui.preview_layer_factory.PreviewLayerFactory

Bases: object

Factory for creating and styling QGIS memory layers for the preview.

__init__() → None

Initialize the layer factory with specialized renderers.

property active_units: dict[str, Any]

Compatibility property for active geological units.

create_drillhole_interval_layer(drillhole_data: list, vert_exag: float = 1.0) → QgsVectorLayer | None

Create a temporary layer for drillhole intervals.

create_drillhole_trace_layer(drillhole_data: list, vert_exag: float = 1.0, color: str | None = None, width: float | None = None, labels: bool = True) → QgsVectorLayer | None

Create a temporary layer for drillhole traces.

create_geol_layer(geol_data: GeologyData, vert_exag: float = 1.0, max_points: int = 1000) → QgsVectorLayer | None

Create a temporary layer for the geological profile.

create_interp_layer(interp_data: list[InterpretationPolygon], vert_exag: float = 1.0, default_color: str | None = None, hidden_ids: set[str] | None = None) → QgsVectorLayer | None

Create a memory layer for interpretation polygons.

create_memory_layer(geometry_type: str, name: str, fields: str | None = None) → tuple[QgsVectorLayer | None, QgsVectorDataProvider | None]

Create a memory layer with project CRS.

create_smoothed_topo_layer(topo_data: ProfileData, vert_exag: float = 1.0, max_points: int = 1000, color: str = '#e57373') → QgsVectorLayer | None

Create a smoothed topography overlay line.

create_struct_layer(struct_data: StructureData, reference_data: ProfileData, vert_exag: float = 1.0, dip_line_length: float | None = None, color: str | None = None, width: float | None = None) → QgsVectorLayer | None

Create a temporary layer for structural dips.

create_topo_fill_layer(topo_data: ProfileData, vert_exag: float = 1.0, max_points: int = 1000, base_elevation: float | None = None) → QgsVectorLayer | None

Create a solid curtain fill under the topography.

create_topo_layer(topo_data: ProfileData, vert_exag: float = 1.0, max_points: int = 1000, use_adaptive_sampling: bool = False, color_mode: str = 'gradient', ramp_name: str | None = None, single_color: str | None = None, line_width: float | None = None) → QgsVectorLayer | None

Create a temporary layer for the topographic profile.

get_color_for_unit(name: str) → qgis.PyQt.QtGui.QColor

Get a consistent color for a geological unit based on its name.