CIHDigitalConfigurator / CIH_Toolkit

CIH_Toolkit
GNU Lesser General Public License v3.0
0 stars 0 forks source link

Implement other BoundingBox containment rules #26

Closed alelom closed 3 years ago

alelom commented 3 years ago

Right now we have only a boolean toggle Geometry3D that decides whether containment is evaluated by inclusion of the whole Geometry or the whole Geometry3D.

An enum could instead be defined to allow for additional rules:

In particular, ContainsCorners could be useful in cases such as: 2021-03-11 17_00_02-Zoom Meeting

where the red panel is an imaginary panel that traverses 2 zones (the purple one and the cyan one). This panel should be evaluated as "passing" if at least one of the Zone Specifications (purple/cyan ones) is passing.

This can also be useful to solve "interface objects", that is, objects that are near a border between two boundingBoxes. You can then define the boundingBox to check for ContainsCentroid instead of ContainsGeometry, so the nearby bounding box can still correctly evaluate all other objects as contained.

alelom commented 3 years ago

Targeted by https://github.com/CIHDigitalConfigurator/CIH_Toolkit/commit/93b80565b6f09914174b41c3a4877f811e25d30d