Léon van Berlo IFC Industry Foundation Classes
Agenda Wat is IFC? Wie zijn er mee bezig? Hoe ziet het eruit? Hoe zit het in elkaar?    Koffie! Wat zijn de problemen  (en oplossingen) ? Waarom  (toch)  IFC? (gratis)  Software Huiswerk / Volgende week PS: 61 slides :-S
Wat is IFC?
 
IFC geschiedenis Industry Foundation Classes ‘ Open’ standaard Komt uit de ‘CAD-wereld’ Autodesk als driver Uit de eerste dagen van STEP (1985) Bedoeld  als standaard voor ‘downstream applicaties’ Gebruikt  als uitwisselstandaard Laatste versie 2x3 TC1
Wat is IFC? 3D Geometrie (object gebaseerd) MAAR OOK Een stukje semantiek Relaties tussen objecten Eigenschappen
Wie zijn er mee bezig?
Wie zijn er mee bezig? Technisch: IAI / BuildingSMART  ( www.iai-tech.org ) AEC3  (Thomas Liebich) TNO  (Peter Bonsma) Instituut voor BIM  (ibim.nl) Marketing: BuildingSMART BuildingSMART BeNeLux (NL) Bouw informatie raad (NL)
Hoe ziet het eruit?
 
 
Hoe ziet het eruit? www.ifcbrowser.com
Hoe ziet het eruit? www.ifcbrowser.com
Hoe zit het in elkaar?
Het Schema Voertuig Gewicht Kleur Merk Laadvermogen Auto Stationwagen
Het Schema Voertuig Gewicht Kleur Merk Laadvermogen Diameter Wiel Auto Autowiel Stationwagen
Het Schema Voertuig Gewicht Kleur Merk Laadvermogen Diameter Wielen HeeftWielen Wiel Autowiel 1..n Auto Stationwagen
Het Schema Voertuig Gewicht Kleur Merk Laadvermogen Diameter Wielen Voertuig HeeftWielen Wiel Autowiel 1..n 1..1 Auto Stationwagen
Het Schema Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter Wielen Voertuig HeeftWielen Wiel Autowiel inverse van  HeeftWielen.Voertuig 1..n 1..1 Auto Stationwagen
Het Schema Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter Wielen Voertuig HeeftWielen Wiel Autowiel EIS: Voertuig.Wielen.Wielen  erft van entity Autowiel 1..n 1..1 Auto Stationwagen
Het Schema Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel inverse van  HeeftWielen.Wielen 1..n 1..1 Auto Stationwagen
Het Schema Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel EIS: Wiel.BehoortTot.Voertuig  erft van entity Auto 1..n 1..1 Auto Stationwagen
Het Schema Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel 1..n 1..1 Auto Stationwagen
Het Schema (alternatief voor de eenvoud   ) Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wiel Voertuig HeeftWiel Wiel Autowiel 1..1 1..1 Auto Stationwagen
Het Schema De Wand IfcRoot IfcProduct IfcObject IfcObjectDefinition IfcElement IfcWall IfcBuildingElement IfcWallStandardCase GlobalId OwnerHistory Name Description INV HasAssignments INV IsDecomposedBy INV Decomposes INV HasAssociations ObjectType INV IsDefinedBy ObjectPlacement Representation INV ReferencedBy Tag INV FillsVoids INV ConnectedTo INV HasCoverings INV HasProjections INV HasStructuralMember INV ReferencedInStructure INV HasPorts INV HasOpenings INV IsConnectionRealization INV ProvidesBoundaries INV ConnectedFrom INV ContainedInStructure
Het Schema Het Raam IfcRoot IfcProduct IfcObject IfcObjectDefinition IfcElement IfcWall IfcBuildingElement IfcWallStandardCase GlobalId OwnerHistory Name Description INV HasAssignments INV IsDecomposedBy INV Decomposes INV HasAssociations ObjectType INV IsDefinedBy ObjectPlacement Representation INV ReferencedBy Tag INV FillsVoids INV ConnectedTo INV HasCoverings INV HasProjections INV HasStructuralMember INV ReferencedInStructure INV HasPorts INV HasOpenings INV IsConnectionRealization INV ProvidesBoundaries INV ConnectedFrom INV ContainedInStructure IfcWindow OverallHeight OverallWidth
De Instantie Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel #100 = STATIONWAGEN(1120, 'Rood', 'Mazda', '500'); #110 = AUTOWIEL(28); #111 = AUTOWIEL(28); #112 = AUTOWIEL(28); #113 = AUTOWIEL(28); #120 = HEEFTWIELEN((#110, #111, #112, #113), #100); 1..n 1..1 Auto Stationwagen
De Instantie (alternatief) Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wiel Voertuig HeeftWiel Wiel Autowiel #100 = STATIONWAGEN(1120, 'Rood', 'Mazda', '500'); #110 = AUTOWIEL(28); #111 = AUTOWIEL(28); #112 = AUTOWIEL(28); #113 = AUTOWIEL(28); #120 = HEEFTWIEL(#110, #100); #121 = HEEFTWIEL(#111, #100); #122 = HEEFTWIEL(#112, #100); #123 = HEEFTWIEL(#113, #100); 1..1 1..1 Auto Stationwagen
Een IFC file (in Wordpad geopend) ISO-10303-21; HEADER; FILE_DESCRIPTION (('IFC Engine Kernal version 1.10 beta release x generated IFC file.'), '2;1'); FILE_NAME ('IFC Engine DLL test', '2006-03-31T16:51:19', ('Architect'), ('Building Designer Office'), 'test', 'Windows System', 'The authorising person.'); FILE_SCHEMA (('IFC2X3')); ENDSEC; DATA; #1 = IFCAXIS2PLACEMENT3D(#29, $, $); #4 = IFCOWNERHISTORY(#20, #21, $, .ADDED., $, $, $, 1225290822); #5 = IFCPROJECT('0i5rqjgpv9uRr3KG5O79Fj', #4, 'CIB_Weimar', $, $, $, $, (#11, #33), #40); #11 = IFCGEOMETRICREPRESENTATIONCONTEXT($, 'Model', 3, 1.000E-5, #1, $); .   .   . #9260 = IFCMATERIALDEFINITIONREPRESENTATION($, $, (#9255), #9216); #9262 = IFCMATERIALLAYERSETUSAGE(#9214, .AXIS2., .POSITIVE., 0.); #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $); #9283 = IFCPROPERTYSINGLEVALUE('Reference', $, IFCDESCRIPTIVEMEASURE('0uZ$pI7hzBvPtYLQwscFN2'), $); .   .   .
De Instantie (in Wordpad geopend) ISO-10303-21; HEADER; FILE_DESCRIPTION (('IFC Engine Kernal version 1.10 beta release x generated IFC file.'), '2;1'); FILE_NAME ('IFC Engine DLL test', '2006-03-31T16:51:19', ('Architect'), ('Building Designer Office'), 'test', 'Windows System', 'The authorising person.'); FILE_SCHEMA (('IFC2X3')); ENDSEC; DATA; #1 = IFCAXIS2PLACEMENT3D(#29, $, $); #4 = IFCOWNERHISTORY(#20, #21, $, .ADDED., $, $, $, 1225290822); #5 = IFCPROJECT('0i5rqjgpv9uRr3KG5O79Fj', #4, 'CIB_Weimar', $, $, $, $, (#11, #33), #40); #11 = IFCGEOMETRICREPRESENTATIONCONTEXT($, 'Model', 3, 1.000E-5, #1, $); .   .   . #9260 = IFCMATERIALDEFINITIONREPRESENTATION($, $, (#9255), #9216); #9262 = IFCMATERIALLAYERSETUSAGE(#9214, .AXIS2., .POSITIVE., 0.); #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $); #9283 = IFCPROPERTYSINGLEVALUE('Reference', $, IFCDESCRIPTIVEMEASURE('0uZ$pI7hzBvPtYLQwscFN2'), $); .   .   .
De Instantie (in een technische viewer)
IfcRoot IfcProduct IfcObject IfcObjectDefinition IfcElement IfcWall IfcBuildingElement IfcWallStandardCase GlobalId OwnerHistory Name Description INV HasAssignments INV IsDecomposedBy INV Decomposes INV HasAssociations ObjectType INV IsDefinedBy ObjectPlacement Representation INV ReferencedBy Tag INV FillsVoids INV ConnectedTo INV HasCoverings INV HasProjections INV HasStructuralMember INV ReferencedInStructure INV HasPorts INV HasOpenings INV IsConnectionRealization INV ProvidesBoundaries INV ConnectedFrom INV ContainedInStructure
De Instantie #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $);
De Instantie #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2',  #4 , $, $, $, #9147, #9150, $);
De Instantie #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2',  #4 , $, $, $, #9147, #9150, $);
De Instantie #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2',  #4 , $, $, $, #9147, #9150, $);   . #9213 = IFCRELASSOCIATESMATERIAL('0$D5xwjuH6sx4mdmLAJf9A', #4, $, $, ( #9264 ), #9262);
#9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $);
De Instantie (de as van de wand)
De Instantie (de as van de wand)
Eigenschappen Pset’s Vast gedefineerde propertiesets Propertysets Vrij te definieren Vast te leggen met IFC  (volgende week)
 
Wat zijn de problemen  (en oplossingen) ?
Voorbeeld Issue 1 Global Unique ID (guid’s) “ 49IbAKeGX249IbBNlUyvpd ” Ondersteunde situaties (intentie) Import IFC – Export IFC Import IFC – opslag eigen – openen eigen – Export IFC Import IFC – aanpassingen (.. eigen opslag..) – Export IFC Probleem Sommige objecten (of ge-objectiviseerde relaties) bestaan niet in een IFC ondersteunend pakket
Voorbeeld Issue 2 SpaceBoundaries => oppervlakten (polygonen) Space
Voorbeeld Issue 2 SpaceBoundaries => oppervlakten NU Space II Space I
Voorbeeld Issue 2 SpaceBoundaries => oppervlakten GEWENST Opgelost in 2x4 en sommige aplicaties zoals Archicad  (2nd order spacebounderies) Space II Space I
Voorbeeld Issue 2 SpaceBoundaries => locatie Afhankelijk van regelgeving in europa Nu in IFC: alleen binnenkant en buitenkant vd wand Gewenst in NL: hart van de wand, maar dit is in een CAD pakket niet logisch (en de vraag is of je dit mag verwachten) Space II Space I
Oplossingen ? IFD  (International Framework for Dictionaries) Linken van properties (delen van properties tussen deur en raam) IDM  (Information Delivery Manual) Procesafspraken (VISI systematiek) MVD  (Model View Definitions) Subsets van IFC  (beperking van het schema; weglaten van objecten en toevoegen van restricties) v.b.: “Elke wand heeft 2nd order spaceboundaries” Pset’s Voorgedefinieerde property-set (Pset en Propertyset is dus anders!) IFD in het klein (ín het schema) v.b.: lichttoetreding  Cyclus van ongeveer 4 jaar (versie refresh) Certification
Voorbeeld Issue 3: Software implementaties Betrouwbaarheid Betrouwbaarheid Betrouwbaarheid
Open standaarden ‘strategie’
Maar niet (alleen) software heeft ‘schuld’
Meer issue voorbeelden: Afronding (float)  Opening in een wand (moet breder zijn dan de wand) Gekromde wand, gekromde opening (facetering van ronding is nooit gelijk) Heel ouderwetse geometrie kernel (voldoet eigenlijk niet meer) in het IFC schema Politiek rond aanpassingen Structuur en fileformaat heel anders dan cad-pakketten Veel tijd nodig voor export en import Veel manuren om het te implementeren Heel lastig te ‘slicen’ (netwerkstructuur)  Opdelen kan niet omdat je dan links breekt Geen zolderkamerprogrammeurs voor ouderwetse express taal Gevolg: markt dominantie door een paar partijen Betrouwbaarheid (in zichzelf niet de mogelijkheid om simpel te achterhalen welke applicaties wel of niet goed ondersteunen) Moeilijk achterhalen of iemand model goed importeert (verlies van data!!) Dezelfde info op verschillende manieren op te slaan (b.v. veel mogelijkheden om éen wand op te slaan die je allemaal moet ondersteunen) Wallstandardcase, boundingbox, extruded polygon, brep, enz.. (stuk of 20) en combinaties van deze dingen…. Geen enkele applicatie van de 5 groten slaat een opening en/in een muur hetzelfde op! (en dat alleen voor de basiselementen!) IFC wordt nu gebruikt voor uitwisseling terwijl het gemaakt/bedoeld is voor downstream Kortom : Onbetrouwbaarheid zit  ín  het schema Geen mogelijkheden tot controle van import (20 e  methode wordt niet ondersteund) Schema staat redundante informatie toe (is niet eenduidig) Schema is niet strikt genoeg (geeft te veel vrijheid)
Waarom  (toch)  IFC?
Waarom dan toch IFC Schaalbaarheid Markt integratie Support vanuit overheden (bijna) geen alternatief Omdat het in veel situaties  HEEL GOED werkt Het doet niet wat de reclame beloofd; Maar het werkt perfect voor de dingen waar het voor werkt!
(gratis) Software
GRATIS Software IFC Viewer  www.ifcbrowser.com IFC Modelserver  www.bimserver.org   FZKViewer  Nemetschek IFC Viewer  www.nemetschek.com/ifc   DDS Viewer ftp:// ftp.dds.no /pub/ install / IfcViewer /   Compleet overzicht:  http:// www.ifcwiki.org / index.php /Free_Software
Gecertificeerde software ‘ De 5 groten’ Allplan Archicad Autocad / Revit Bentley Tekla Volledige lijst: http:// www.ifcwiki.org / index.php /IFC_ Certified _Software
Huiswerk
Huiswerk Exporteer model naar IFC Evalueer structuur met IFC viewer Gebruik stabiele versie 1.10  http://www.ifcbrowser.com/downloads/IFC%20Engine%20Viewer.exe   Evalueer ook properties op level 4 en 5 (knopjes bovenin) Kijk wat er over blijft / verloren gaat Importeer IFC in eigen (of ander) CAD/BIM-software  Kijk wat er over blijft / verloren gaat Doe een aanpassing en exporteer opnieuw Evalueer (met ifc viewer) de verschillen tussen eerste IFC en nieuwe IFC file Zijn er meer verschillen dan alleen je eigen aanpassing?  Hoe komt dit?
Kijk ook eens naar: Algemeen:  http://www.ifcwiki.org Veel gestelde vragen:  http:// www.iai-tech.org /services/ faq Schema:  http:// www.iai-tech.org / ifc /IFC2x3/TC1/ html / index.htm   Technisch:  http:// www.iai-tech.org /
Volgende week IFD ‘ Uitbreiding’ van IFC Propertiesets / Properties  (knopje 4 en 5 in de IFC Viewer) Toevoegen van objectklasses
[email_address] MSN:  [email_address] Twitter: berlotti Skype: berlotti Jabber / G-talk:  [email_address]

IFC - What is IFC / Industry foundation classes

  • 1.
    Léon van BerloIFC Industry Foundation Classes
  • 2.
    Agenda Wat isIFC? Wie zijn er mee bezig? Hoe ziet het eruit? Hoe zit het in elkaar?  Koffie! Wat zijn de problemen (en oplossingen) ? Waarom (toch) IFC? (gratis) Software Huiswerk / Volgende week PS: 61 slides :-S
  • 3.
  • 4.
  • 5.
    IFC geschiedenis IndustryFoundation Classes ‘ Open’ standaard Komt uit de ‘CAD-wereld’ Autodesk als driver Uit de eerste dagen van STEP (1985) Bedoeld als standaard voor ‘downstream applicaties’ Gebruikt als uitwisselstandaard Laatste versie 2x3 TC1
  • 6.
    Wat is IFC?3D Geometrie (object gebaseerd) MAAR OOK Een stukje semantiek Relaties tussen objecten Eigenschappen
  • 7.
    Wie zijn ermee bezig?
  • 8.
    Wie zijn ermee bezig? Technisch: IAI / BuildingSMART ( www.iai-tech.org ) AEC3 (Thomas Liebich) TNO (Peter Bonsma) Instituut voor BIM (ibim.nl) Marketing: BuildingSMART BuildingSMART BeNeLux (NL) Bouw informatie raad (NL)
  • 9.
  • 10.
  • 11.
  • 12.
    Hoe ziet heteruit? www.ifcbrowser.com
  • 13.
    Hoe ziet heteruit? www.ifcbrowser.com
  • 14.
    Hoe zit hetin elkaar?
  • 15.
    Het Schema VoertuigGewicht Kleur Merk Laadvermogen Auto Stationwagen
  • 16.
    Het Schema VoertuigGewicht Kleur Merk Laadvermogen Diameter Wiel Auto Autowiel Stationwagen
  • 17.
    Het Schema VoertuigGewicht Kleur Merk Laadvermogen Diameter Wielen HeeftWielen Wiel Autowiel 1..n Auto Stationwagen
  • 18.
    Het Schema VoertuigGewicht Kleur Merk Laadvermogen Diameter Wielen Voertuig HeeftWielen Wiel Autowiel 1..n 1..1 Auto Stationwagen
  • 19.
    Het Schema VoertuigGewicht Kleur INV Wielen Merk Laadvermogen Diameter Wielen Voertuig HeeftWielen Wiel Autowiel inverse van HeeftWielen.Voertuig 1..n 1..1 Auto Stationwagen
  • 20.
    Het Schema VoertuigGewicht Kleur INV Wielen Merk Laadvermogen Diameter Wielen Voertuig HeeftWielen Wiel Autowiel EIS: Voertuig.Wielen.Wielen erft van entity Autowiel 1..n 1..1 Auto Stationwagen
  • 21.
    Het Schema VoertuigGewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel inverse van HeeftWielen.Wielen 1..n 1..1 Auto Stationwagen
  • 22.
    Het Schema VoertuigGewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel EIS: Wiel.BehoortTot.Voertuig erft van entity Auto 1..n 1..1 Auto Stationwagen
  • 23.
    Het Schema VoertuigGewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel 1..n 1..1 Auto Stationwagen
  • 24.
    Het Schema (alternatiefvoor de eenvoud  ) Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wiel Voertuig HeeftWiel Wiel Autowiel 1..1 1..1 Auto Stationwagen
  • 25.
    Het Schema DeWand IfcRoot IfcProduct IfcObject IfcObjectDefinition IfcElement IfcWall IfcBuildingElement IfcWallStandardCase GlobalId OwnerHistory Name Description INV HasAssignments INV IsDecomposedBy INV Decomposes INV HasAssociations ObjectType INV IsDefinedBy ObjectPlacement Representation INV ReferencedBy Tag INV FillsVoids INV ConnectedTo INV HasCoverings INV HasProjections INV HasStructuralMember INV ReferencedInStructure INV HasPorts INV HasOpenings INV IsConnectionRealization INV ProvidesBoundaries INV ConnectedFrom INV ContainedInStructure
  • 26.
    Het Schema HetRaam IfcRoot IfcProduct IfcObject IfcObjectDefinition IfcElement IfcWall IfcBuildingElement IfcWallStandardCase GlobalId OwnerHistory Name Description INV HasAssignments INV IsDecomposedBy INV Decomposes INV HasAssociations ObjectType INV IsDefinedBy ObjectPlacement Representation INV ReferencedBy Tag INV FillsVoids INV ConnectedTo INV HasCoverings INV HasProjections INV HasStructuralMember INV ReferencedInStructure INV HasPorts INV HasOpenings INV IsConnectionRealization INV ProvidesBoundaries INV ConnectedFrom INV ContainedInStructure IfcWindow OverallHeight OverallWidth
  • 27.
    De Instantie VoertuigGewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wielen Voertuig HeeftWielen Wiel Autowiel #100 = STATIONWAGEN(1120, 'Rood', 'Mazda', '500'); #110 = AUTOWIEL(28); #111 = AUTOWIEL(28); #112 = AUTOWIEL(28); #113 = AUTOWIEL(28); #120 = HEEFTWIELEN((#110, #111, #112, #113), #100); 1..n 1..1 Auto Stationwagen
  • 28.
    De Instantie (alternatief)Voertuig Gewicht Kleur INV Wielen Merk Laadvermogen Diameter INV BehoortTot Wiel Voertuig HeeftWiel Wiel Autowiel #100 = STATIONWAGEN(1120, 'Rood', 'Mazda', '500'); #110 = AUTOWIEL(28); #111 = AUTOWIEL(28); #112 = AUTOWIEL(28); #113 = AUTOWIEL(28); #120 = HEEFTWIEL(#110, #100); #121 = HEEFTWIEL(#111, #100); #122 = HEEFTWIEL(#112, #100); #123 = HEEFTWIEL(#113, #100); 1..1 1..1 Auto Stationwagen
  • 29.
    Een IFC file(in Wordpad geopend) ISO-10303-21; HEADER; FILE_DESCRIPTION (('IFC Engine Kernal version 1.10 beta release x generated IFC file.'), '2;1'); FILE_NAME ('IFC Engine DLL test', '2006-03-31T16:51:19', ('Architect'), ('Building Designer Office'), 'test', 'Windows System', 'The authorising person.'); FILE_SCHEMA (('IFC2X3')); ENDSEC; DATA; #1 = IFCAXIS2PLACEMENT3D(#29, $, $); #4 = IFCOWNERHISTORY(#20, #21, $, .ADDED., $, $, $, 1225290822); #5 = IFCPROJECT('0i5rqjgpv9uRr3KG5O79Fj', #4, 'CIB_Weimar', $, $, $, $, (#11, #33), #40); #11 = IFCGEOMETRICREPRESENTATIONCONTEXT($, 'Model', 3, 1.000E-5, #1, $); . . . #9260 = IFCMATERIALDEFINITIONREPRESENTATION($, $, (#9255), #9216); #9262 = IFCMATERIALLAYERSETUSAGE(#9214, .AXIS2., .POSITIVE., 0.); #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $); #9283 = IFCPROPERTYSINGLEVALUE('Reference', $, IFCDESCRIPTIVEMEASURE('0uZ$pI7hzBvPtYLQwscFN2'), $); . . .
  • 30.
    De Instantie (inWordpad geopend) ISO-10303-21; HEADER; FILE_DESCRIPTION (('IFC Engine Kernal version 1.10 beta release x generated IFC file.'), '2;1'); FILE_NAME ('IFC Engine DLL test', '2006-03-31T16:51:19', ('Architect'), ('Building Designer Office'), 'test', 'Windows System', 'The authorising person.'); FILE_SCHEMA (('IFC2X3')); ENDSEC; DATA; #1 = IFCAXIS2PLACEMENT3D(#29, $, $); #4 = IFCOWNERHISTORY(#20, #21, $, .ADDED., $, $, $, 1225290822); #5 = IFCPROJECT('0i5rqjgpv9uRr3KG5O79Fj', #4, 'CIB_Weimar', $, $, $, $, (#11, #33), #40); #11 = IFCGEOMETRICREPRESENTATIONCONTEXT($, 'Model', 3, 1.000E-5, #1, $); . . . #9260 = IFCMATERIALDEFINITIONREPRESENTATION($, $, (#9255), #9216); #9262 = IFCMATERIALLAYERSETUSAGE(#9214, .AXIS2., .POSITIVE., 0.); #9264 = IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $); #9283 = IFCPROPERTYSINGLEVALUE('Reference', $, IFCDESCRIPTIVEMEASURE('0uZ$pI7hzBvPtYLQwscFN2'), $); . . .
  • 31.
    De Instantie (ineen technische viewer)
  • 32.
    IfcRoot IfcProduct IfcObjectIfcObjectDefinition IfcElement IfcWall IfcBuildingElement IfcWallStandardCase GlobalId OwnerHistory Name Description INV HasAssignments INV IsDecomposedBy INV Decomposes INV HasAssociations ObjectType INV IsDefinedBy ObjectPlacement Representation INV ReferencedBy Tag INV FillsVoids INV ConnectedTo INV HasCoverings INV HasProjections INV HasStructuralMember INV ReferencedInStructure INV HasPorts INV HasOpenings INV IsConnectionRealization INV ProvidesBoundaries INV ConnectedFrom INV ContainedInStructure
  • 33.
    De Instantie #9264= IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4, $, $, $, #9147, #9150, $);
  • 34.
    De Instantie #9264= IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4 , $, $, $, #9147, #9150, $);
  • 35.
    De Instantie #9264= IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4 , $, $, $, #9147, #9150, $);
  • 36.
    De Instantie #9264= IFCWALLSTANDARDCASE('0uZ$pI7hzBvPtYLQwscFN2', #4 , $, $, $, #9147, #9150, $); . #9213 = IFCRELASSOCIATESMATERIAL('0$D5xwjuH6sx4mdmLAJf9A', #4, $, $, ( #9264 ), #9262);
  • 37.
  • 38.
    De Instantie (deas van de wand)
  • 39.
    De Instantie (deas van de wand)
  • 40.
    Eigenschappen Pset’s Vastgedefineerde propertiesets Propertysets Vrij te definieren Vast te leggen met IFC (volgende week)
  • 41.
  • 42.
    Wat zijn deproblemen (en oplossingen) ?
  • 43.
    Voorbeeld Issue 1Global Unique ID (guid’s) “ 49IbAKeGX249IbBNlUyvpd ” Ondersteunde situaties (intentie) Import IFC – Export IFC Import IFC – opslag eigen – openen eigen – Export IFC Import IFC – aanpassingen (.. eigen opslag..) – Export IFC Probleem Sommige objecten (of ge-objectiviseerde relaties) bestaan niet in een IFC ondersteunend pakket
  • 44.
    Voorbeeld Issue 2SpaceBoundaries => oppervlakten (polygonen) Space
  • 45.
    Voorbeeld Issue 2SpaceBoundaries => oppervlakten NU Space II Space I
  • 46.
    Voorbeeld Issue 2SpaceBoundaries => oppervlakten GEWENST Opgelost in 2x4 en sommige aplicaties zoals Archicad (2nd order spacebounderies) Space II Space I
  • 47.
    Voorbeeld Issue 2SpaceBoundaries => locatie Afhankelijk van regelgeving in europa Nu in IFC: alleen binnenkant en buitenkant vd wand Gewenst in NL: hart van de wand, maar dit is in een CAD pakket niet logisch (en de vraag is of je dit mag verwachten) Space II Space I
  • 48.
    Oplossingen ? IFD (International Framework for Dictionaries) Linken van properties (delen van properties tussen deur en raam) IDM (Information Delivery Manual) Procesafspraken (VISI systematiek) MVD (Model View Definitions) Subsets van IFC (beperking van het schema; weglaten van objecten en toevoegen van restricties) v.b.: “Elke wand heeft 2nd order spaceboundaries” Pset’s Voorgedefinieerde property-set (Pset en Propertyset is dus anders!) IFD in het klein (ín het schema) v.b.: lichttoetreding Cyclus van ongeveer 4 jaar (versie refresh) Certification
  • 49.
    Voorbeeld Issue 3:Software implementaties Betrouwbaarheid Betrouwbaarheid Betrouwbaarheid
  • 50.
  • 51.
    Maar niet (alleen)software heeft ‘schuld’
  • 52.
    Meer issue voorbeelden:Afronding (float) Opening in een wand (moet breder zijn dan de wand) Gekromde wand, gekromde opening (facetering van ronding is nooit gelijk) Heel ouderwetse geometrie kernel (voldoet eigenlijk niet meer) in het IFC schema Politiek rond aanpassingen Structuur en fileformaat heel anders dan cad-pakketten Veel tijd nodig voor export en import Veel manuren om het te implementeren Heel lastig te ‘slicen’ (netwerkstructuur) Opdelen kan niet omdat je dan links breekt Geen zolderkamerprogrammeurs voor ouderwetse express taal Gevolg: markt dominantie door een paar partijen Betrouwbaarheid (in zichzelf niet de mogelijkheid om simpel te achterhalen welke applicaties wel of niet goed ondersteunen) Moeilijk achterhalen of iemand model goed importeert (verlies van data!!) Dezelfde info op verschillende manieren op te slaan (b.v. veel mogelijkheden om éen wand op te slaan die je allemaal moet ondersteunen) Wallstandardcase, boundingbox, extruded polygon, brep, enz.. (stuk of 20) en combinaties van deze dingen…. Geen enkele applicatie van de 5 groten slaat een opening en/in een muur hetzelfde op! (en dat alleen voor de basiselementen!) IFC wordt nu gebruikt voor uitwisseling terwijl het gemaakt/bedoeld is voor downstream Kortom : Onbetrouwbaarheid zit ín het schema Geen mogelijkheden tot controle van import (20 e methode wordt niet ondersteund) Schema staat redundante informatie toe (is niet eenduidig) Schema is niet strikt genoeg (geeft te veel vrijheid)
  • 53.
  • 54.
    Waarom dan tochIFC Schaalbaarheid Markt integratie Support vanuit overheden (bijna) geen alternatief Omdat het in veel situaties HEEL GOED werkt Het doet niet wat de reclame beloofd; Maar het werkt perfect voor de dingen waar het voor werkt!
  • 55.
  • 56.
    GRATIS Software IFCViewer www.ifcbrowser.com IFC Modelserver www.bimserver.org FZKViewer Nemetschek IFC Viewer www.nemetschek.com/ifc DDS Viewer ftp:// ftp.dds.no /pub/ install / IfcViewer / Compleet overzicht: http:// www.ifcwiki.org / index.php /Free_Software
  • 57.
    Gecertificeerde software ‘De 5 groten’ Allplan Archicad Autocad / Revit Bentley Tekla Volledige lijst: http:// www.ifcwiki.org / index.php /IFC_ Certified _Software
  • 58.
  • 59.
    Huiswerk Exporteer modelnaar IFC Evalueer structuur met IFC viewer Gebruik stabiele versie 1.10 http://www.ifcbrowser.com/downloads/IFC%20Engine%20Viewer.exe Evalueer ook properties op level 4 en 5 (knopjes bovenin) Kijk wat er over blijft / verloren gaat Importeer IFC in eigen (of ander) CAD/BIM-software Kijk wat er over blijft / verloren gaat Doe een aanpassing en exporteer opnieuw Evalueer (met ifc viewer) de verschillen tussen eerste IFC en nieuwe IFC file Zijn er meer verschillen dan alleen je eigen aanpassing? Hoe komt dit?
  • 60.
    Kijk ook eensnaar: Algemeen: http://www.ifcwiki.org Veel gestelde vragen: http:// www.iai-tech.org /services/ faq Schema: http:// www.iai-tech.org / ifc /IFC2x3/TC1/ html / index.htm Technisch: http:// www.iai-tech.org /
  • 61.
    Volgende week IFD‘ Uitbreiding’ van IFC Propertiesets / Properties (knopje 4 en 5 in de IFC Viewer) Toevoegen van objectklasses
  • 62.
    [email_address] MSN: [email_address] Twitter: berlotti Skype: berlotti Jabber / G-talk: [email_address]