buildingSMART / IFC4-CV

IFC4 Coordination View
27 stars 7 forks source link

handling of openings in the IFC4 reference view #14

Closed TLiebich closed 9 years ago

TLiebich commented 10 years ago

We agreed for the scope of the Reference View to exclude direct and implied use of Boolean operations. Therefore the current use of IfcRelVoidsElement has to be:

Since the main path element -> opening -> door/window should be maintained (to remain similar to the IFC4 design transfer view), it cannot be excluded. Hence we need to use IfcRelVoidsElement also in IFC4 RV, but have to define an alternative way of using it without implying a Boolean difference operation.

Currently we see two possibilities:

we need your opinion.

pasi-paasiala commented 10 years ago

The second option sounds simpler. There can be multiple openings for an element. The second option puts the info only to one element.

Pasi

-------- Alkuperäinen viesti -------- Lähettäjä: Thomas Liebich Päivämäärä:20.06.2014 1.15 (GMT+02:00) Saaja: BuildingSMART/IFC4-CV Aihe: [IFC4-CV] handling of openings in the IFC4 reference view (#14)

We agreed for the scope of the Reference View to exclude direct and implied use of Boolean operations. Therefore the current use of IfcRelVoidsElement has to be:

Since the main path element -> opening -> door/window should be maintained (to remain similar to the IFC4 design transfer view), it cannot be excluded. Hence we need to use IfcRelVoidsElement also in IFC4 RV, but have to define an alternative way of using it without implying a Boolean difference operation.

Currently we see two possibilities:

we need your opinion.

Reply to this email directly or view it on GitHubhttps://github.com/BuildingSMART/IFC4-CV/issues/14.

jlkiss commented 10 years ago

Do we want cut the wall? No. In that case IfcRelVoidsElement should not be used. You can read this in the documentation: "This relationship implies a Boolean operation of subtraction between the geometric bodies of the element and the opening." I think instead of IfcRelVoidsElement another relation type should be used here.

TLiebich commented 10 years ago

@jlkiss - the proposal (option 2) is to not use Body representations for the element/opening here - because the implied Boolean operation shall only work on "Body" representation (of cause, the spec should be updated to write it in a clearer way).

If we do not use IfcRelVoidsElement here, we would have two different query paths between elements and door/windows between the reference view and the design transfer view (which of cause is also an option)

AngelVelezSosa commented 10 years ago

What if we had the "NetBody" representation as the main representation item, but also allowed for an optional "Body" representation? Even in the Reference case, we may want to know the original shape of the wall without cutouts.

TLiebich commented 10 years ago

@AngelVelezSosa we had this option (although originally considered for the design transfer view) already in mind, it would allow for having complex, dimension driven CSG geometry (as for design transfer) plus a tessellated net geometry (for viewing and validating) in the same IFC file.

timchipman commented 9 years ago

Angel's recommendation has been adopted, where 'Mesh' is the identifier of the representation providing the resulting shape as a tessellation. This enables either 'Body', 'Mesh', or both representations to be exchanged, and doesn't require any special conversion of voiding relationships for varying export.