Python wrapper for LMI Technologies Gocator SDK. Acquire 3D point clouds from Gocator laser scanners. Tested with snapshot sensor Gocator 3506.
-
Install Gocator SDK to standard location
-
Install dependencies (requires Python 3.9+):
Simple installation:
pip install numpy
With virtual environment using uv.lock file (recommended):
uv sync source .venv/bin/activate # On Windows: .venv\Scripts\activate
from gocator import GocatorScanner
# Basic acquisition with software trigger
with GocatorScanner("192.168.1.10") as scanner:
scanner.start()
scanner.trigger()
point_cloud = scanner.get_point_cloud() # Returns Nx3 NumPy array (X, Y, Z in meters)
scanner.stop()- Automatic SDK detection (Linux, Windows, macOS)
- Context manager support
- Software triggering
- Configurable exposure and spacing
- NumPy array output
Connection:
connect() -> bool- Connect to sensordisconnect()- Disconnect from sensorget_sensor_info() -> dict- Get model, serial number, IP
Acquisition:
start() -> bool- Start acquisition systemstop() -> bool- Stop acquisition systemtrigger() -> bool- Send software triggerget_point_cloud(timeout_us=20000000) -> NDArray- Receive point cloud datascan_and_get() -> NDArray- Convenience method (start → trigger → get → stop)
Configuration:
get_exposure() -> float- Get exposure time (microseconds)set_exposure(exposure_us: float) -> bool- Set exposure timeget_spacing_interval() -> float- Get spacing interval (mm)set_spacing_interval(interval_mm: float) -> bool- Set spacing intervalget_scan_mode() -> tuple[int, str]- Get current scan mode
See example.py for complete examples including:
- Context manager usage
- Parameter configuration
- Multiple scans
- Saving point clouds (PLY, CSV, NumPy)
The library auto-detects SDK from these locations:
- Linux:
/opt/lmi/gocator/lib/libGoSdk.so - Windows:
C:\Program Files\LMI Technologies\Gocator\lib\GoSdk.dll - macOS:
/usr/local/lib/libGoSdk.dylib
Or specify manually:
scanner = GocatorScanner("192.168.1.10", sdk_path="/path/to/libGoSdk.so")- Python 3.9+
- NumPy 1.20+
- Gocator SDK (from LMI Technologies)
MIT License - Copyright (c) 2025 Maximilian Eder