Teigha Blog

Find out what's new and more

Visual Styles in Teigha BIM

Similar to Teigha Drawings, Teigha BIM also has visual styles for rendering elements in a View. However, with Teigha Drawings visual styles are separate elements in the database, and with Teigha BIM visual styles are part of the View.

rvt rfa getting started

ODA Releases Teigha BIM 4.3.1

Open Design Alliance (ODA) today announced the release of version 4.3.1 of Teigha BIM, its SDK for Autodesk® Revit® files. Version 4.3.1 introduces support for version 2018 .rvt and .rfa files, and contains a number of additional enhancements.

News Release rvt rfa

Two Ways to Work with Teigha BIM B-Reps

Many elements in Teigha BIM contain B-Rep geometries in GElement, which is a geometry cache of an element. However, B-Rep is not a universal format. Each product has a specific representation of B-Reps.

An overview of B-Reps and BIM specifics can be found in the documentation (login required).

rvt rfa Example

Teigha BIM: Introduction to FillPatterns [Part 2]

FillPattern rendering is performed when rendering a corresponding shell if the OdGiFill traits attribute is supplied. As described in a previous article, OdGiFill is supplied by an OdBmFillPatternElem::subSetAttributes(OdGiDrawableTraits* pDrwTraits) call if an existing OdBmFace->OdBmGFilling->PatternId is present. OdGiFill represents the hatch data needed for a FillPattern to be rendered, which is not enough. To render the pattern correctly, OdGiFaceData and OdGiMapperItemEntry are also required.

rvt rfa Example

Teigha BIM: Introduction to FillPatterns [Part 1]

OdBmFillPatternElem is bound to a face via OdBmFace->OdBmGFilling->PatternId. So while traversing faces in BrepRenderer, for every face we obtain an OdBmFillPatternElem ID via IBrFace->getFillPatternId(). See the code below:

rvt rfa Example

Working with Labels in Teigha BIM

LabelUtilsPE is a protocol extension (PE) that moves label related functionality outside of core Teigha BIM functionality, allowing Teigha BIM member developers to implement their own protocol extension for support of different localizations. For now, a protocol extension with English labels is implemented as an example.

rvt rfa extensions

Teigha BIM: Measuring Performance and Memory Allocation

Teigha BIM has a test, TB_PerfTest, that measures performance and memory consumption.
Performance can be measured in four modes:
• Reading
• Writing
• Rendering
• Rendering and writing

rvt rfa performance

Using Teigha BIM and COLLADA to Examine Autodesk® Revit® File Geometry

If you're new to working with Autodesk® Revit® files, looking at a file's geometry can be a good place to start. The file is actually a set of elements that correspond to BIM components such as walls or dimensions.

Example rfa rvt export