Een ontwerp met een spiegelas lijkt voor het modelleren van een BIM-model een ideale situatie. Het model hoeft slechts voor de helft gemodelleerd te worden en kan vervolgens worden gespiegeld. Echter, het spiegelen van sommige BIM-objecten gaat gepaard met enkele – aanvankelijk – onopvallende risico’s. Zo hebben deurobjecten een draairichting, die zowel visueel als datatechnisch te herleiden is.

Spiegelen
Een (volgens Nederlandse standaarden) rechtsdraaiende deur heeft de IFC-parameter ‘IfcDoorTypeOperationEnum’ en heeft als waarde ‘Single_Swing_Left’ (volgens Amerikaanse standaarden). Wanneer deze deur in het model wordt gespiegeld, verandert de draairichting van de deur in geometrisch opzicht op de juiste manier, maar is de kans groot dat het datatechnisch niet goed gaat, met alle gevolgen van dien.

Hoe komt dat?
Een deur heeft niet alleen fysiek, maar ook data technisch een binnenzijde, een buitenzijde en een draairichting. Op het moment dat een deur gespiegeld wordt over een verticale as blijven de binnen- en buitenzijden gelijk en verandert de draairichting (zie onderstaande afbeelding).

Geometrische draairichting

Afb. 1. De Geometrische draairichting in het Native Model.

Als we het IFC-model van deze gespiegelde deur bekijken, blijken de binnen- en buitenzijden en de draairichting van de deur te zijn veranderd. De IFC-Exporter van Revit herkent de spiegeling in het model en past hierop de IFC-informatie aan.

Echter, niet alleen de draairichting wordt gespiegeld. De binnenzijde van de deur wordt de buitenzijde en vice versa. De naamgeving van het element, bijvoorbeeld ‘linksdraaiende deur’ wordt daarbij niet automatisch aangepast. Het gevaar is dat de deuren verkeerd in het IFC-model komen te staan, zonder dat de modelleur zich hiervan bewust is.

IFC draairichting

Afb. 2. De data technische draairichting in het IFC Model.

Het achteraf moeten controleren of de geometrische draairichting overeenkomt met de parametrische draairichting in het IFC-model is onbegonnen werk. Daarbij is het handmatig overeenstemmen van de draairichtingen van deuren in het native model een zeer tijdrovend en onnauwkeurig proces. Daarom hebben wij geprobeerd dit proces te automatiseren met behulp van een Dynamo-script. En met succes.

Het script
Het script herkent welke deuren gespiegeld zijn, vervangt de deuren voor de tegengestelde draairichting en spiegelt vervolgens de deur geometrisch in het model. Een kind kan de was doen, zou je zeggen. Echter, een aantal problemen staken de kop op tijdens het maken van het script. Zo is het in Revit niet mogelijk om wijzigingen aan deuren en andere objecten in een Model-group te doen met behulp van Dynamo.

Wanneer bepaalde samenstellingen van BIM-objecten vaker in het model voorkomen maakt men in veel Revit-modellen gebruik van Model-Groups. Bijvoorbeeld bij een woningindeling met deuren.

Het is belangrijk dat deze Model-Groups behouden blijven en dat er een gespiegelde variant wordt aangemaakt met behulp van het script. Door het spiegelen van de Model-Groups worden alle deuren in de groups uiteraard ook gespiegeld. Dit resulteert in de hierboven beschreven problemen. Het aanpassen van de deuren in de gespiegelde groups is dan ook het uitgangspunt van het script.

Wanneer een gespiegelde variant al aanwezig is in het Revit-model, dan vervangt het script de betreffende Model-Group voor deze variant, zonder een duplicaat aan te maken.

Van alle Model-Groups in het bestand worden alléén de specifieke groups die gespiegelde deuren bevatten meegenomen in de rest van het script. Deze groups worden opengebroken (ungroup) en met de deuren wordt het volgende trucje uitgehaald:

  1. Check welke deuren gespiegeld zijn.
  2. Check of de deur links- of rechtsdraaiend is op basis van de naamvoering (consequente naamvoering is dan ook een must).
  3. Vervang de deur door de Family-type met de tegenovergestelde draairichting. Hierdoor wordt de draairichting van de deur gecorrigeerd, alleen de geometrie wordt gespiegeld.
  4. Spiegel de deuren ten opzichte van het middelpunt van de deur, zodat de deur geometrisch gezien weer goed in het model zit.
  5. Combineer alle overige elementen uit de opengebroken Model-Group met de nieuwe gespiegelde deuren in een nieuwe Model-Group_Gespiegeld.
Stap 1

Afb. 3. Stap 1.

Stap 3

Afb. 4. Stap 3.

Stap 4

Afb. 5. Stap 4.

Het resultaat
Na het runnen van het script is er geometrisch niets veranderd in het model. Maar let op, in de data is wel een hoop gewijzigd. De gespiegelde Model-Groups bevatten nu nieuwe deuren en er zijn gespiegelde varianten van deze groups aangemaakt.

Heeft u na het lezen van dit artikel de smaak te pakken en wilt u dit soort gave dingen zelf ook maken? Neem dan hier contact op voor de mogelijkheden van een Dynamo cursus op maat.

Gepubliceerd: 4 april 2019


Deel dit artikel
deel dit artikel via e-mail
deel dit artikel via linkedIN
deel dit artikel via Twitter
deel dit artikel via WhatsApp

Onze projecten zijn het resultaat van teamwork. Elke collega heeft een eigen expertise en draagt van daaruit bij aan onze projecten. Zo leveren we samen betrouwbare kwaliteit.

Root
Office
info@root-bv.nl