Skip to content

Latest commit

Β 

History

689 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SecInterp β€” Geological Interpretation for QGIS

QGIS License Version Python Platform QGIS Compliance Code Quality Tests Linting Managed with uv i18n

SecInterp (Section Interpreter) is a professional QGIS plugin designed for industrial-grade extraction and visualization of geological data. It empowers geologists to generate high-fidelity topographic profiles, project outcrops with structural integrity, and perform complex 3D drillhole analysis within a unified 2D cross-section environment.

Hero Image SecInterp v3.7.0: i18n Quality Gate & UX Improvements.


πŸ†• What's New in v3.7.2

Patch: Qt6 / QGIS 4 Enum Compatibility

πŸ”§ Scoped Enum Migration

  • 114 findings resolved: Migrated all flat enum usages to their fully scoped form (Qgis.Critical β†’ Qgis.MessageLevel.Critical, Qt.NoPen β†’ Qt.PenStyle.NoPen, QgsWkbTypes.LineString β†’ QgsWkbTypes.Type.LineString, and more), clearing every Qt6 compatibility finding reported by the QGIS plugin repository.
  • CI gate: Wired make qt6-check (the same pyqgis4-checker tool used on upload) into the release pipeline to prevent regressions.

πŸ†• What's New in v3.7.0

Phase: Internationalization Quality Gate & Preview UX

🌐 i18n Quality Gate

  • AST-Based Translation Hygiene: Developed verify_i18n_hygiene.py, a static analyzer that scans UI components for untranslated strings and enforces self.tr() wrapping with near-zero false positives.
  • Dialog Title Coverage: Wrapped 9 untranslated error dialog titles (Export Error, Preview Error, Geology Error, Drillhole Error) and the results "ID:" label in self.dialog.tr().

πŸŽ›οΈ Collapsible Preview Controls

  • Decluttered Workspace: Grouped the preview action buttons, LOD controls, and layer checkboxes into a collapsible QgsCollapsibleGroupBox("Controls"), keeping the map canvas and status bar always visible for a cleaner interpretation experience.

πŸ“¦ Cleaner Packaging

  • Lean Distribution: Excluded AI/agent tooling directories (.codewhale, .continue, .deepseek, artifacts) from the distributable ZIP, ensuring a plugin-only package.

See CHANGELOG.md for complete details.


🌟 Key Features

1. Interactive Preview System

  • Real-time Visualization: Instantly view topography, geology, and structures along any drawn section line.
  • Performance: Uses Parallel Processing to handle complex geological intersections without freezing QGIS.
  • Adaptive Level of Detail (LOD): Automatically adjusts data density based on zoom level for smooth navigation.
  • Measurement Tools: Measure distances and calculate slopes/gradients directly on the profile view with automatic Snapping to vertices.
  • Drillhole Support: Project 3D drillhole traces and geological intervals (sondajes) onto the 2D cross-section plane.

Main Interface Fig 1. Main interface showing topography and projected geology.

2. Data Extraction

  • Topography: Extracts elevation profiles from any DEM raster.
  • Geology: Projects polygon outcrops onto the section line, respecting valid lithological boundaries.
  • Structure: Projects dip/strike measurements with configurable buffer zones and apparent dip calculations.

3. Geological Interpretation

  • Interactive Drawing: Draw interpretation polygons directly on the profile view.
  • Smart Snapping: Accurately snap vertices to existing topographic or geological features.
  • Auto-Color: Automatically assigns vivid colors to distinguish new interpretations.
  • Undo/Redo: Flexible editing with right-click undo support during drawing.

4. Professional Export

  • Formats: Export directly to SHP, CSV, DXF, PDF, SVG, or PNG.
  • Layout: Results are ready for CAD integration or reporting.

πŸ“‹ Requirements

Before installing SecInterp, ensure your system meets the following requirements:

  • QGIS: 3.28 LTR or superior (including QGIS 4.x).
  • Python: 3.10 or superior (included with QGIS).
  • Dependencies: The plugin uses standard QGIS and PyQt libraries (fully compatible with both Qt5 and Qt6 via qgis.PyQt). Advanced analysis and development tools (like the QGIS Plugin Analyzer tool, executed via the qgis-analyzer command, and ai-context-core) are only required for developers and auditors.

πŸš€ Installation

From QGIS Repository

  1. Open QGIS.
  2. Go to Plugins > Manage and Install Plugins.
  3. Search for SecInterp.
  4. Click Install Plugin.

From ZIP File

  1. Download the latest sec_interp_v3.7.0.zip from releases.
  2. Open QGIS.
  3. Go to Plugins > Manage and Install Plugins > Install from ZIP.
  4. Select the file and click Install.

πŸ“– Quick Start Guide

For detailed instructions, please see the User Guide.

  1. Prepare Data: Load your DEM (Raster), Geology (Polygons), and Structure (Points) layers in QGIS.

  2. Launch Plugin: Click the SecInterp icon in the toolbar.

  3. Configure Layers:

    • DEM: Select your elevation raster and band.

      Layer Setup

    • Cross-section: Select the line layer that defines your profile.

      Layer Setup

    • Geology: Select the outcrop layer and the lithology attribute field.

      Layer Setup

    • Structure: Select the point layer and dip/strike fields.

      Layer Setup

    • Drillholes (Optional): Configure Collars, Survey, and Intervals in the Drillholes page to project 2D drillhole traces.

      Collar Setup

      Survey Setup

      Interval Setup

  4. Preview: Click Preview Profile. The view will update asynchronously.

    Preview Generated

    • Tip: Use the scroll wheel to zoom in/out. The detail level will adapt automatically.
    • Tip: Colapse panels to the left, and Results colapse down to save space.

    Preview Collapsed

  5. Export: Use the Export button in the preview toolbar or go to the Settings page for batch export configuration.


πŸ›  For Developers

This plugin is open-source and welcomes contributions.

  • Source Code: GitHub Repository
  • Documentation:
  • Development Setup: Use the Makefile and the Development Guide.
  • Testing with Docker (Recommended): Esta suite ejecuta los tests del proyecto dentro de un contenedor QGIS oficial (qgis/qgis:latest), garantizando un entorno reproducible y libre de conflictos de dependencias locales.
    make docker-build  # Build the test image
    make docker-test   # Run the full test suite inside a container

πŸ“„ License

This project is licensed under the GNU General Public License v3.0. See LICENSE for details.

About

Professional QGIS plugin for geological interpretation. Extract topographic profiles, project 3D drillholes and outcrops with structural analysis & CAD exports.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages