Skip to content

[Bug]: IFCREVOLVEDAREASOLID geometry incorrectly positioned when placed in parent assembly context #1995

@K-pilot

Description

@K-pilot

What happened?

Hollow pipe elbows (CODO - Spanish for elbow) exported from Tekla Structures as IFCREVOLVEDAREASOLID entities render with incorrect positioning in web-ifc and ThatOpen Fragments viewers. The same geometry renders correctly in Trimble's IFC viewer, confirming the IFC file is valid.

What works:

  • ✅ Straight pipe sections (IFCBEAM with IFCEXTRUDEDAREASOLID) render correctly
  • ✅ Weld points (IFCFASTENER with IFCFACETEDBREP) render correctly
  • ✅ Handrail structure and supports render correctly
  • ✅ Trimble Tekla viewer displays all elbows in correct positions

What fails:

  • ❌ All 4 hollow elbows (IFCREVOLVEDAREASOLID) positioned incorrectly
  • ❌ Elbows appear displaced from expected locations
  • ❌ Error consistent in both direct web-ifc parsing and Fragments conversion
  • ❌ Issue NOT related to coordinate normalization

Root Cause: Incorrect transformation matrix calculation for IFCREVOLVEDAREASOLID when placed in nested assembly hierarchy with oriented coordinate systems.

Version

0.0.77

What browsers are you seeing the problem on?

No response

Relevant log output

No console errors - the issue manifests as incorrect 3D positioning:
- IFC entities parse without errors
- Geometry calculates without warnings
- Output positioning differs from Trimble viewer reference implementation

Anything else?

Test Case Details

Environment:

  • Source: Tekla Structures 2024 SP5 IFC4 export
  • Schema: IFC4 DesignTransferView
  • Geometry Type: IFCREVOLVEDAREASOLID (hollow circle profile)
  • Placement: Nested in IFCELEMENTASSEMBLY with oriented coordinate systems

The 4 Affected Elbows:

  1. Entity # 1141 - Shape # 1132 at placement # 1126
  2. Entity # 1245 - Shape # 1132 at placement # 1240
  3. Entity # 1368 - Shape # 1362 at placement # 1357
  4. Entity # 1447 - Shape # 1362 at placement # 1442

Related Issues:

Proof of Valid IFC:
Same file renders correctly in Trimble Tekla IFC viewer → bug is in web-ifc transformation matrix calculation

Test File: See attachment

out_ds.zip

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions