ifcos-impl-geometry

Extract or author IFC 3D geometry with IfcOpenShell and correct placements.

30|4|Updated Mar 5, 2026
One-click install
npx skills add https://github.com/Impertio-Studio/Blender-Bonsai-ifcOpenshell-Sverchok-Claude-Skill-Package --skill ifcos-impl-geometry-impertio-studio
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ifcos-impl-geometry
Source: https://github.com/Impertio-Studio/Blender-Bonsai-ifcOpenshell-Sverchok-Claude-Skill-Package/tree/main/skills/ifcopenshell/impl/ifcos-impl-geometry
Command: npx skills add https://github.com/Impertio-Studio/Blender-Bonsai-ifcOpenshell-Sverchok-Claude-Skill-Package --skill ifcos-impl-geometry-impertio-studio

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

It prevents slow and failure-prone IFC geometry workflows by guiding you to extract or author 3D geometry using IfcOpenShell correctly, including batching, coordinate transforms, and required representation contexts.

Core Features & Use Cases

  • Fast geometry extraction: Use create_shape() for single elements and the ifcopenshell.geom.iterator() for large batches to avoid performance traps.
  • Correct tessellation vs BRep: Switch between triangulated mesh output and OpenCASCADE BRep output using USE_BREP_DATA, with guidance for CAD/boolean precision needs.
  • Reliable representation authoring: Create required contexts (root “Model” then “Body”), assign representations to products, and set object placements to ensure geometry appears in the right place.
  • Coordinate correctness: Choose world vs local coordinates via USE_WORLD_COORDS, apply placement chains consistently, and respect IFC project units by applying unit scale factors.

Use Case Examples:

  • Extract thousands of IFC wall meshes for visualization while keeping placements and units correct.
  • Build parametric wall/beam/furniture geometry into a new IFC file with valid contexts and object placements.
  • Convert extracted geometry into export-ready forms (including glTF/OBJ pipelines) while preserving transforms.

Quick Start

Generate and process geometry for many IFC elements efficiently and safely by running the skill on your IFC model so it uses an iterator, applies unit scaling, and outputs extracted tessellated meshes.

Frequently Asked Questions about ifcos-impl-geometry

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I extract IFC geometry efficiently for thousands of elements without performance issues?

To extract IFC geometry efficiently for large batches, use the IfcOpenShell geometry iterator instead of processing elements individually. This batching approach avoids performance traps common in bulk mesh extraction workflows while maintaining correct placements and unit scales.

What is the difference between tessellated meshes and BRep output in IfcOpenShell?

Tessellated meshes and BRep output differ in precision and use cases. Switching to USE_BREP_DATA provides OpenCASCADE BRep output for CAD and boolean operations, while default tessellated mesh output is suitable for visualization and downstream processing pipelines.

Why does my authored IFC geometry not appear in the correct world coordinates?

Authored IFC geometry may appear incorrectly if placements and coordinate contexts are invalid. You must create required representation contexts like Model and Body, assign representations to products, and apply placement chains consistently using USE_WORLD_COORDS to ensure correct positioning.

How do I apply unit scale factors when creating IFC geometric representations?

To apply unit scale factors when creating IFC geometric representations, respect IFC project units by applying scale factors during extraction or authoring. This ensures that geometry created across IFC2X3, IFC4, and IFC4X3 maintains correct dimensions and world placements.

Does IfcOpenShell create_shape work with IFC4X3 representation contexts?

IfcOpenShell create_shape works with IFC4X3 by creating required representation contexts. You must establish the root Model context first, then the Body context, and assign these representations to products to ensure valid geometry generation across IFC2X3, IFC4, and IFC4X3 schemas.

Can I convert extracted IFC geometry into export-ready formats like glTF or OBJ?

You can convert extracted IFC geometry into export-ready formats like glTF or OBJ by preserving coordinate transforms during extraction. Using IfcOpenShell to output tessellated meshes with correct placements allows seamless integration into downstream visualization pipelines.