Dzisiaj kolejny wpis, który będzie omawiał tematykę formatu IFC. Na jego temat zostało bardzo wiele powiedziane na łamach BIM Corner.
Najpierw Janusz bardzo dokładnie opisał podstawowe informacje związane z IFC opakowując to w serię artykułów:
2. Sekrety formatu IFC – cześć 1
3. Sekrety formatu IFC – cześć 2
4. Sekrety formatu IFC cześć 3
Następnie Konrad opisał pewne ogólne reguły eksportu jakimi powinno się kierować podczas eksportowania:
1. Reguły eksportu do IFC. Część 1: Dlaczego jest to ważne?
2. Reguły eksportu do IFC. Część 2: Co eksportować a czego nie?
Kolejnymi, takim naturalnym krokiem jest pokazanie naszym czytelnikom w jaki sposób eksportować IFC używając różnych popularnych programów dostępnych obecnie na rynku. Ostatnio, Janusz przedstawił ten proces korzystając z narzędzia Tekla Sturcuters:
Krótko o serii wpisów
Ja dzisiaj powiem jak to poprawnie robić korzystając z programu Revit. Ponieważ taki eksport do IFC może być złożoną czynnością dlatego podzieliłem ten temat na części.
W części 1 – zajmiemy się poprawnym mapowaniem elementów modelu Revita do odpowiednich klas IFC.
W części 2 – powiem o eksporcie podstawowych informacji schematu IFC takich jak IfcProject, IfcSite, IfcBuilding oraz IfcSpace
W części 3 – zajmiemy się eksportem różnego rodzaju parametrów.
W ostatniej części 4 – Przejdziemy po kolei przez różne opcje IFC eksportera wbudowanego w Revicie. Dzięki tej wiedzy będziesz potrafił dostosować eksport do swoich indywidualnych potrzeb.
Jest sporo do omówienia. Zacznijmy więc od mapowania.
POBIERZ PRZEWODNIK PO BIM KOORDYNACJI
Zapisz się na naszą listę mialową i pobierz Praktyczny przewodnik po Koordynacji BIM. Jest za darmo.
Eksport IFC z Revita - wstęp
Wyesportowanie modelu do IFC z programu Revit wydaje się na pierwszy rzut oka, bardzo proste i można opisać tą czynność w dwóch prostych krokach.
Krok 1. Tworzymy odpowiedni widok 3D na którym widoczny jest model, który chcemy wyeksportować.
Krok 2. Potem wchodzimy w File – EXPORT – IFC i naciskamy przycisk EXPORT.
Proste prawda ?
No niby tak, ale postępując w taki sposób, bez wcześniejszego odpowiedniego ustawienia eksportu nie wiemy jakie elementy geometrii modelu oraz jakie dane zawarte w tych elementach zostaną wyeksportowane do IFC. Nie wiemy również czy dane te będą odpowiednio ustrukturyzowane.
Jako osoba odpowiedzialna za eksport musisz wiedzieć takie rzeczy i umieć poprawnie eksportować model do IFC tak, aby spełniał on wymagania stawiane przez projekt. Konieczne jest abyś wiedział jakie elementy eksportować, jakie dane eksportować, a jakie nie oraz jak optymalizować wielkość IFC tak aby praca z tym plikiem była jak najszybsza.
Krótko mówiąć – Jest tego sporo tego.
Mapowanie klas IFC - tabela
Aby dobrze eksportować IFC warto abyś wiedział, że schemat IFC jest zbudowanych z klas (stąd nazwa IFC – Industry Foundation Class). W dużym uporszczeniu jako klasę możesz traktować różne kategorie rodzin, które modelujesz w Revicie.
Np. Kategoria obiektów ściana w Revicie ma swoją odpowiednią klasę w IFC o nazwie IfcWall, natomiast kategoria słup będzie posiadała klasę IfcColumn.
Gdy eksportujemy IFC z Revita, Revit ma ustawione automatycznie jakie kategorie elementów ma przypisywać do odpowiednich klas w IFC. Ustawienia te możemy zmienić w opcjach eksportu IFC (File – Export – Options – IFC options) za pomocą tabelki mapowania. Wygląda ona natępująco:
Po lewej mamy kategorie Revita, a a po prawej mamy nazwy klass IFC do których dana kategoria będzie eksportowana. Jeśli nie chcemy eksportować danej kategorii możemy wpisać NotExported do tabeli. W ten sposób dane kategorie elementów Revita nie zostaną wyeksportowane.
Może pojawić się pytanie – Skąd mamy znać nazwy class IFC ?
Do tego przyda się dokumentacja IFC, która nazywa klasy, encjami (entities). Pełną listę klas IFC znajdziesz tutaj:
Gdy szukam odpowiedniej nazwy klasy IFC, naciskam przycisk szukaj w przeglądarce (dla Chrome – CTRL + F) i wpisuje nazwę elementu. Np dla balustrady wpisuje angielską nazwę Railing i zaraz otrzymujemy wynik wyszukania. W tym przypadku IfcRailing.
Musisz jednak wiedzieć, że bardzo dużo klass IFC nie ma swojego odpowiednika w kategoriach rodzin Revita. Revit ma dużo mniej kategorii niż jest klas w schemacie IFC.
Stwarza to problem bo często elementy Revita zostają wyeksporotwane do ogólnych klas IFC takich jak IfcBuildingElementProxy, które nie określają dokładnie jakiego rodzaju element eksportujemy.
Problem z mapowaniem przy użyciu tabeli
Abyś czytelniku zrozumiał na czym polega ten problem, przedstawię pewien przykład.
Weźmy sobie za przykad 2 elementy z modelu instalatorów. Załóżmy, że eksportujemy je do IFC. Jeden element to bojler, a drugi to pompa ciepła. W Revicie będą one przydzielone do kategorii Mechanical Equipment (tak jak pokazane jest to na rysunku):
Teraz jak spojrzmy sobie w Revicie na tabelę mapowania zobaczym, że kategoria Mechnical Equipment ma tylko jedną pozycję (jeden wiersz), która mapuje jej elementy.
Oznacza to, że nie jesteśmy w stanie za pomocą tej tabelki przypisać dwóch różnych klas pliku IFC do bojlera i do pompy ciepła (których klasy IFC to odpowiednio IfcBoiler i IfcPump).
Dodatkowo domyślnie wszystkie elementy kategorii Mechanical Equipment otrzymają klasę IfcBuildingElementProxy co dla programu zczytującego IFC (np: Solibri), może oznaczać jakikolwiek element budowlany. Solibri elementy tej kategorii wrzuca do jednego “worka” i kategoryzuje jako Object.
Mapowanie za pomocą parametrów
Jest jednak sposób aby wyeksporotwać te 2 komponenty prawidłowo do swoich klas IFC. Revit posiada zestaw parametrów, których można użyć do mapowania.
Parametr ten nazywa się IfcExportAs. Warto go dodać do każdego elementu jaki chcemy wyeksportować do IFC. Jako wartość należy wpisać do niego nazwę klasy do jakiej chcemy dany element przypisać (patrz rys poniżej). Czyli w rodzinie bojlera wpiszę IfcBoiler, a w pompie ciepła IfcPump.
Dzieki temu parametrowi możemy nadpisać domyślne mapownie jakie jest określone w tablece mapowania. Teraz bojler oraz pompa ciepła po eksporcie, są “rozumiane” przez Solibri i odpowiednio skategoryzowane.
Zestaw parametrów IFC
Jeszcze tak na koniec, chciałem wspomnieć o parametrach IFC które można dodawać do elementów Revita. Twórcy eksportera IFC stworzyli zestaw parametrów współdzielonych (shared paramaters), które możemy użyć do przygotowania naszego modelu do eksportu.
W gronie tych parametrów, znajduje się również, wyżej wspomniany parameter IfcExportAs.
Standardowa lokalizacja, gdzie znajduje się plik z parmetrami to:
Oczywiście w zależności od wersji eksportera i Revita, może się różnić folderem z numerem roku.
Plik o którym mówię nosi nazwę: IFC Shared Parameters-RevitIFCBuiltIn_ALL.txt – Do pobrania TUTAJ.
Polecam korzystać z tego pliku za każdym razem gdy chcemy wykorzystać specjalne parametry związane z eksportem modelu do IFC. Warto również grupować te parametry wewnątrz rodzin w podgrupie IFC Parameters, dla utrzymania porządku.
Podsumowując
Odpowiednie mapowanie kategorii Revita do odpowiednich klas IFC to dopiero wierzchołek góry lodowej jaką jest temat eksport do IFC. Mam nadzieję, że się czegoś praktecznego dowiedziałeś z tego wpisu.
W kolejnym poście skupię się na eksporcie podstawowych kontenerów informacji schematu IFC takich jak IfcProject, IfcSite, IfcBuilding oraz IfcSpace. Powiemy sobie czym są takie kontenery i co należy zrobić, aby ich eksport był wykonany poprawnie.
Tak na koniec, drogi czytelniku chciałem Ci powiedzieć, że temat eksportu IFC do Revita dokładnie wyjaśniam w moim autorskim kursie online BBC – Become BIM Coordinator, który wydam tej jesieni (2021 roku).
Jeśli jesteś zainteresowny wzięciem w nim udziału, serdecznie zapraszam Cię do zapisania się na listę mailową tego kursu – ZAPISZ SIĘ NA LISTĘ
Co tydzień otrzymasz odemnie za darmo ciekawe informacje nt: BIM Koordynacji, a gdy kurs będzie już dostępny poinformuję Cię o tym fakcie.
To tyle z mojej strony. Dzięki, że czytasz naszego bloga 🙂 Do usłyszenia w kolejnym wpisie.
Dzięki serdeczne za pracę i za podzielenie się wiedzą, temat bardzo ważny w życiu każdego projektu wykonywanego w BIMie.