ThatOpen / engine_web-ifc

Reading and writing IFC files with Javascript, at native speeds.
https://thatopen.github.io/engine_web-ifc/demo
Mozilla Public License 2.0
605 stars 183 forks source link

[Bug]: IFC files involving IFCCLOSEDSHELL entities appear to look weird, and some of the faces appear to be stretched #938

Open sennhvi opened 2 months ago

sennhvi commented 2 months ago

What happened?

I have an ifc file that shows the soil layers, and the main entity paths involved in the soil layers' content is: IFCBUILDINGELEMENTPROXY->IFCPRODUCTDEFINITIONSHAPE->IFCMAPPEDITEM->IFCFACETEDBREP->IFCCLOSEDSHELL->IFCFACE->IFCFACEOUTERBOUND->IFCPOLYLOOP->IFCCARTESIANPOINT.

In the bimbase browser/BIMVision software, the effect is more reasonable, image

image

in the web-ifc demo page [https://[thatopen.github.io/engine_web-ifc/demo/](https://thatopen.github.io/engine_web-ifc/demo/)] some triangles are stretched far away, why is this? image

while parsing ifc file, an error log occurs: [WEB-IFC][error][GetLocalPlacement()] unexpected placement type 236. Entity 236 is #236= IFCCARTESIANPOINT((806766.25,37.849998474121094,376751.46875));

Version

0.0.55

What browsers are you seeing the problem on?

Microsoft Edge

Relevant log output

No response

Anything else?

No response

sennhvi commented 2 months ago

Here is sample ifc file.Any analysis or solution is greatly appreciated! weird-placement.txt

QuimMoya commented 1 month ago

We found the cause of this bug. Some point coordinates are not defined as doubles but integers (does not have a dot at the end of the number value) therefore the parser does not read them properly. By solving this issue we can open the model image

But this is not so simple. According to the IFC specs numbers for coordinates should be doubles, not integers. So we still have to decide what to do