Langue de programmation d'un fichier .ifc

OzE -  
 OzE -
Bonjour,
Je souhaiterai avoir des informations sur la méthode à utiliser pour décoder un fichier .ifc
J'ai un programme en C# à développer ou je dois extraire des informations, plus précisément des références d'un fichier .ifc
Pour information un fichier .ifc est un fichier de modélisation 3D lisible par exemple avec Tekla BIMSIGHT.
Quand j'utilise Notepad++ le contenu est compréhensible mais n'a aucun sens...

Petit extrait :
"
#11= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-005,#10,$);
#12= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#11,$,.MODEL_VIEW.,$);
#13= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#11,$,.GRAPH_VIEW.,$);
#14= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);
#15= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
#16= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
#17= IFCSIUNIT(*,.MASSUNIT.,.KILO.,.GRAM.);
#18= IFCSIUNIT(*,.TIMEUNIT.,$,.SECOND.);
#19= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.);
#20= IFCSIUNIT(*,.SOLIDANGLEUNIT.,$,.STERADIAN.);
#21= IFCSIUNIT(*,.THERMODYNAMICTEMPERATUREUNIT.,$,.DEGREE_CELSIUS.);
#22= IFCSIUNIT(*,.LUMINOUSINTENSITYUNIT.,$,.LUMEN.);
#23= IFCUNITASSIGNMENT((#14,#15,#16,#17,#18,#19,#20,#21,#22));
#24= IFCPROJECT('0_ZltUQFLCnwYyOAl2YzH8',#5,'Nom société supprimé Modération CCM',$,$,$,$,(#11),#23);
#25= IFCLOCALPLACEMENT($,#10);
#26= IFCSITE('1NeOVRH8n8reTUjd4UdfVu',#5,'Undefined',$,$,#25,$,$,.ELEMENT.,$,$,0.,$,$);
#27= IFCPOSTALADDRESS($,$,$,$,('adresse supprimée Modération CCM '),$,$,$,$,$);
#28= IFCLOCALPLACEMENT(#25,#10);
#29= IFCBUILDING('1VumufuVbAeQkuhu2ZkF41',#5,'Undefined',$,$,#28,$,$,.ELEMENT.,$,$,#27);
#30= IFCLOCALPLACEMENT(#28,#10);
#31= IFCBUILDINGSTOREY('2H_XItf6j9PguFiZOl0TWf',#5,'Undefined',$,$,#30,$,$,.ELEMENT.,0.);
#32= IFCCARTESIANPOINT((-10046.3611343998,-3282.37715562454,-25514.9999999964));
#33= IFCDIRECTION((-0.0052082629990911,0.999986436906287,0.));
#34= IFCDIRECTION((0.999986436906288,0.00520826299904682,0.));
#35= IFCAXIS2PLACEMENT3D(#32,#33,#34);
#36= IFCLOCALPLACEMENT(#30,#35);
#37= IFCCOLOURRGB('Dark Red',0.698039215686274,0.2,0.301960784313725);
#38= IFCSURFACESTYLERENDERING(#37,0.,$,$,$,$,IFCNORMALISEDRATIOMEASURE(0.00390625),IFCSPECULAREXPONENT(10.),.NOTDEFINED.);
#39= IFCSURFACESTYLE('STEEL/S355JR',.POSITIVE.,(#38));
#40= IFCPRESENTATIONSTYLEASSIGNMENT((#39));
#41= IFCCARTESIANPOINT((5.93609001953155E-008,3.,-237.999999998754));
#42= IFCCARTESIANPOINT((5.93681761529297E-008,3.,238.000000001352));
#43= IFCCARTESIANPOINT((9730.00000008809,3.,238.00000000149));
#44= IFCCARTESIANPOINT((9730.00000008808,3.,-237.999999998616));
#45= IFCPOLYLOOP((#41,#42,#43,#44));
#46= IFCFACEOUTERBOUND(#45,.T.);
#47= IFCFACE((#46));
#48= IFCCARTESIANPOINT((5.93681761529297E-008,-3.,238.000000001352));
#49= IFCCARTESIANPOINT((9730.00000008809,-3.,238.00000000149));
#50= IFCPOLYLOOP((#42,#48,#49,#43));
#51= IFCFACEOUTERBOUND(#50,.T.);
#52= IFCFACE((#51));
#53= IFCCARTESIANPOINT((5.93609001953155E-008,-3.,-237.999999998754));
#54= IFCCARTESIANPOINT((9730.00000008808,-3.,-237.999999998616));
#55= IFCPOLYLOOP((#48,#53,#54,#49));
#56= IFCFACEOUTERBOUND(#55,.T.);
#57= IFCFACE((#56));
#58= IFCPOLYLOOP((#53,#41,#44,#54));
#59= IFCFACEOUTERBOUND(#58,.T.);
#60= IFCFACE((#59));
"
Merci à vous d'avance du coup de pouce

A voir également:

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,
Et quelles informations dois tu extraire ?

0
OzE
 
Le fichier contient l'implantation d'un bâtiment est je recherche les références des poutres à l'intérieur car une poutre contient entre 1 et 10 références de sous-assemblage
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > OzE
 
Oui... mais... tu sais quels lignes dans ton fichier correspondent à ce que tu veux extraire ?
0
OzE
 
Non, malheureusement je n'ai aucune idée ou je peux trouver les références sinon je l'aurais déjà extraite :)
Je cherche justement à comprendre le code afin de retrouver les références. La difficultés c'est quelle ne sont pas écrite noir sur blanc quand on ouvre le fichier avec Notepad++. Mais je suis sur quelles sont dedans car en l'ouvrant avec un fichier de modélisation 3D elles apparaissent.

Info :
Le fichier fait environ 19000 lignes
Type de fichier ISO-10303 STEP model data
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > OzE
 
Là il ne nous sera pas possible de t'aider à extraire des données en C#.. si tu ne sais pas lesquelles tu dois prendre....
Le fichier IFC est un fichier qu'on pourrait voir comme un fichier de "description".
Les références sont certainement "codées" en utilisant des références à des objets ..... le logiciel ayant surment une table de correspondance .... genre 1NeOVRH8n8reTUjd4UdfVu c'est la référence d'un site.......

http://www.unit.eu/cours/bim/u13/co/u13_060_13-1-4.html
0
OzE
 
La méthode pour extraire en C# je la maîtrise c'est la compréhension du fichier qu'il me manque pour faire l'extraction.
Pour le fichier description je suis plutôt d'accord. Le logiciel aurait les tables de correspondance en interne ?
0