W pierwszym artykule z serii poświęconej IFC dla infrastruktury wspomniałem, że IFC można podzielić na 3 główne grupy tematyczne: obiekty, właściwości, relacje. Udało mi się w nim także omówić pierwszy z tych tematów. Jeżeli jeszcze nie przeczytałeś tego posta to zapraszam do zapoznania się z nim pod tym linkiem: Infrastruktura drogowa w schemacie IFC 4.3
W tym tekście chciałbym omówić praktyczny przykład. Pozwolę sobie przedstawić jeden z wielu możliwych scenariuszy przestrzennego podziału projektu drogowego.
Zapraszam do artykułu.
CASE STUDY
Powyższy przykład przedstawia model drogowy o typowym przekroju. Linia trasowania została poprowadzona w ten sposób, aby droga przebiegała zarówno w nasypie jak i w wykopie. Na całym odcinku droga posiada konstrukcję nawierzchni, górną nawierzchnię asfaltową, utwardzone pobocza oraz skarpy. W obszarze wykopów są zaprojektowane rowy.
ifcProject
Podział projektu zaczynamy od stworzenia abstraktu ifcProject. To właśnie na tym poziomie możemy określić jednostki używane w projekcie, przypisać system koordynacji, wskazać nazwę przedsięwzięcia, czy kontekst inwestycji.
Elementy struktury przestrzennej są połączone ze sobą za pomocą relacji ifcRelAgrregates.
W naszym przykładzie elementami struktury przestrzennej są ifcSite oraz ifcRoad.
Produkty (ifcProduct) są umiejscowione w strukturze przestrzennej za pomocą relacji ifcRelContainedInSpatiatialStructure. W tym przypadku jest to ifcAlignment oraz ifcGeomodel.
ifcGeomodel jest abstraktem, który możemy traktować jako grupa/zbiór. Zawiera elementy opisujące teren. Teren jest prezentowany za pomocą ifcGeotechnicalStratum. W celu dodania tego obiektu do zbioru została użyta relacja ifcRelAggregates. ifcEarthworksCut reprezentują “wykopane” objętości podczas budowy drogi, które tworzą pustkę wyciętą z terenu. Tak więc ten obiekt dodajemy do zbioru ifcGeomodel za pomocą relacji ifcRelVoidsElement.
Analogiczna sytuacja występuje w przypadku ścian konstrukcyjnych w budynku (ifcWall), gdy za pomocą tej relacji ifcRelVoidsElement wycinamy przestrzeń przeznaczoną na drzwi.
ifcRoad
ifcRoad jest abstraktem przestrzennym reprezentującym budowlę drogową. W schemacie IFC można podzielić drogę na części (reprezentowane przez abstrakt ifcRoadPart). Podział na części w kontekście obiektu drogowego może odbywać się w dwóch głównych kierunkach: w kierunku podłużnym (Longitudinal) oraz poprzecznym (Lateral). W przypadku podłużnego podziału drogi, mamy na myśli podział drogi na segmenty/odcinki. Podział poprzeczny wskazuje nam podział na charakterystyczne części takie jak jezdnia, pobocze utwardzone, pobocze zielone.
W omawianym przykładzie występuje podział w obu kierunkach, jednakże podział podłużny znajduje się na wyższym poziomie, niż poprzeczny. Zazwyczaj o drodze mówimy w kontekście segmentu między km X a km Y. Z tego powodu w moim przykładzie podział podłużny jest podziałem nadrzędnym. Tak więc ifcRoad jest połączona z ifcRoadPart (Longitudinal) przy użyciu ifcRelAggregates. Ta relacja znajduje się również pomiędzy ifcRoadPart (longitudinal) oraz ifcRoadPart (lateral).
Droga na całej swojej długości zawiera charakterystyczne elementy takie jak nasyp, czy warstwy nawierzchni. Poza tym z modelu drogowego BIM możemy także wygenerować linie reprezentujące krawędzie poszczególnych powierzchni. Krawędzie warstw nawierzchni, poszczególnych komponentów, są istotnymi informacjami dla geodetów. Dzięki użyciu ifcAnnotation możemy zapisać te informacje. Tego typu linie mogą zostać użyte na placu budowy jako dane do tyczenia (stakeoutdata). Wszystkie wspomniane obiekty znajdują się w hierarchii poniżej abstraktu ifcRoadPart (longitudinal) oraz są z nim połączone za pomocą relacji ifcRelContainedInSpatialStructure.
Obiekty tworzące warstwy nawierzchni ifcCourse za pomocą relacji ifcAggregates są zaagregowane w zbiorze reprezentowanym przez abstrakt ifcPavement.
Ciekawym przykładem obiektu jest ifcEarthworksFill, który może służyć zarówno jako obiekt oraz jako zbiór. W moim przykładzie ifcEarthworksFill kumuluje obiekty, które opisują nasyp oraz dolne warstwy nawierzchni.
Pod abstraktami ifcRoadPart (lateral) kryją się obiekty, które są charakterystyczne dla poszczególnych obszarów w odniesieniu poprzecznym. Omawiany model drogowy został stworzony przy użyciu programu Trimble Novapoint, który generuje górne powierzchnie korytarza drogowego. W tym przypadku powierzchnie wzdłuż nawierzchni asfaltowych są powierzchniami fikcyjnymi. W modelu BIM są tworzone do celów wizualizacyjnych (dodanie tekstury). Jednakże można je wyeksportować do pliku IFC. Z tego też powodu w moim przykładzie znajdują się pod ifcRoadPart, który opisuje jezdnię oraz pobocze.
Natomiast pod abstraktem ifcRoadPart, który opisuje pobocze drogi można znaleźć powierzchnie kształtujące rów (ifcDistributionChamberElement) oraz skarpy (ifcEarthworksFill).
Podsumowanie
Powyższy podział drogi jest inspirowany tym, który sugeruje buildingSMART International w swoim opracowaniu IFC Road Conceptual Model Report jednakże zawiera dodatkowe elementy jak chociażby wspomniane warstwy fikcyjne drogi. Pamiętaj, że projekty drogowe mogą się różnić od siebie, co bezpośrednio może się przełożyć na hierarchię podziału projektu.