ladybug-tools / spider-gbxml-tools

Scripts to help you view and manage gbXML files
https://www.ladybug.tools/spider-gbxml-tools/
MIT License
14 stars 3 forks source link

Handling of overlapping opening and parent surface polyloops #55

Open Tokarzewski opened 3 months ago

Tokarzewski commented 3 months ago

There is an issue with the representation of openings in gbXML files when the opening polyloop collides or overlaps with the parent surface polyloop. Some openings are not displayed correctly due to failed boolean subtraction operations.

Key points:

  1. The issue was identified when a user exported a gbXML file from DesignBuilder and loaded it into Spider Viewer.
  2. Some openings were not displayed correctly in Spider Viewer.
  3. The boolean subtraction operation fails when the opening polyloop collides/overlaps with the parent surface polyloop.

Questions to address:

  1. Does the gbXML schema define whether opening edges can or cannot collide with parent surface edges?
  2. Should this be addressed on the export side (DesignBuilder) or the import side (Spider Viewer)?

Possible solutions to consider:

  1. Export side: Modify DesignBuilder to avoid exporting geometry with colliding edges. This would mean that models after export import would not be the same.
  2. Import side: Enhance Spider to handle cutting openings even when edges collide or overlap.

Attachment: gb.zip

image

Tokarzewski commented 3 months ago

I upload a few more examples for reference. Budova7.zip