Triangulation patterns in .ifc file format using coordinates and indexes

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
yafimski
Posts: 1
Joined: Mon Apr 16, 2018 9:49 pm

Triangulation patterns in .ifc file format using coordinates and indexes

Postby yafimski » Mon Apr 16, 2018 9:52 pm

Hi,
I've posted this in another forum as well due to the mathematical nature of the issue:
http://mathhelpforum.com/math-software/ ... post934494

I have an .ifc file in which the raw data exported describes a wall in the xy plane by a set of coordinates and their corresponding indexes according to the link explanation:

http://www.buildingsmart-tech.org/ifc/I ... aceset.htm

I am attaching a .txt where the data is divided into the coordinates in xyz space, then indexes and some other data.
coordinates.txt
(17.54 KiB) Downloaded 8 times
I was hoping that someone can help me understand how to link the indexes to their corresponding coordinates. There are 164 coordinate pairs and 324 index pairs so it doesn't make sense to me that each index relates to only 1 coordinate pair.

The goal is to establish a relationship between indexes and coordinates such that this type of data can output the wall thickness, which is in this case '10'. I was thinking that (according to the link above) by taking the first triangle described, it should describe the edge of the wall in 3D and therefore give us one of its sides as the shortest segment in the wall which is the thickness.

I received an answer in the mentioned forum post, that I should
"...expanding out each coordinate in terms of X's, Y's, and Z's [instead of (X,Y,Z) triples) and then use every index triple to get the actual coordinate for the individual coordinate instead of one triple.
So for example you have X[], Y[] and Z[] and you have an index (a,b,c) then you find X[a], Y, and Z[c] not Point(a,b,c)... "


I didn't quite understand this explanation, and would appreciate any help or further explanation in order to achieve my goal.

Thank you