SpeckleTekla DB1 Reader

.db1 OPEN SOURCE · BY SPECKLE

Tekla Structures
file parser.

An open-source parser for Trimble’s Tekla Structures DB1 files and model folders. Extract geometry and object properties, together with assemblies, connections and host relationships.

Run it headlessly in a server or batch process, without a Tekla Structures installation.

C++20Read-onlyAGPL-3.0
01 / MODEL PREVIEWOpen in Speckle
Sample Office BuildingTekla Structures 2024 · upgraded DB1

Drag to orbit.
Open in Speckle to inspect.

Speckle uses this SDK to parse Tekla Structures files directly, without Trimble Connect.EARLY ALPHA / v0.1

02 / EXTRACTED DATA

Geometry, properties
and model structure.

Use the SDK for headless file conversion, property extraction and model analysis. Process model folders in a server application or batch job, and pass the results to your own viewer or database.

01

Geometry

Extract meshes, curves and placements for supported beams, plates, imported shapes and reinforcement. Export to GLB or consume the geometry in your own application. Optional OCCT evaluation handles cuts and fittings.

MESHES · CURVES · PLACEMENTS
02

Object properties

Read stable object IDs and typed property values, including part names, profiles, materials, classes and user-defined attributes. Property batches can be processed independently of display geometry.

IDENTITIES · PROPERTIES · MATERIALS
03

Assemblies, connections and hosts

Recover assembly membership, parent–child structure, supported component connections and reinforcement-to-host relationships. These relationships link the extracted objects to the structure stored in the source model.

ASSEMBLIES · CONNECTIONS · HOSTS

03 / COMMAND-LINE USAGE

Parse a DB1
from the command line.

Build the C++ tools, then point them at the DB1 in a model folder. Inspect the model’s contents or export its supported geometry to GLB.

STEP 01

Build the SDK

You’ll need a C++20 compiler, CMake 3.25+, Ninja and zlib. The core builds on Linux, macOS and Windows.

Build documentation
Terminal
git clone https://github.com/specklesystems/tekla-db1-sdk.git
cd tekla-db1-sdk
cmake --preset release
cmake --build --preset release
ctest --preset release
STEP 02

Inspect a DB1 or export a GLB

Point the tools at a DB1 in its original model folder. Keep adjacent catalogs and shape assets together so the reader can discover them.

These commands run locally. The model above is a hosted preview.

Terminal
# Summarise objects, properties and relationships
build/release/tools/tekla-db1-inspect /path/to/model.db1 --semantics

# Export supported display geometry to GLB
build/release/tools/tekla-db1-glb /path/to/model.db1 preview.glb
Base build. For evaluated cuts and fittings, use the OCCT-enabled build.

04 / FORMAT SUPPORT

Supported formats
and limitations.

The reader handles the database formats listed here. Geometry coverage varies by object type. Unsupported variants are reported through errors or diagnostics.

Read the full support matrix
Database formats
8.74 · 8.95 · 9.08 · 9.21 · 9.52 · 9.66
Distribution
C++20 source and static CMake libraries
Licence
GNU AGPL v3.0
Compatibility
The C++ API may change before v1.0. Some geometry types are not implemented; full Tekla Structures visual parity is not yet available.

Some custom profiles, reinforcement variants, complete bolt assemblies and component regeneration remain unsupported. See the support matrix for exact coverage.

05 / TRY IT ON SPECKLE

Try it now.

Use Speckle to parse your Tekla model and explore the results in your browser.

Open Speckle
  1. Create a model

    Sign in to Speckle and create a new model in a project.

  2. Upload your Tekla model

    Upload a Tekla Structures model folder or a .db1 file.

  3. See the results

    Explore the geometry and inspect the extracted object properties.

C++20 LIBRARY AND COMMAND-LINE TOOLS

Source and documentation

View on GitHub