opensourceBIM / BIMserver

The open source BIMserver platform
GNU Affero General Public License v3.0
1.56k stars 610 forks source link

Scaling issue #700

Closed PatriceMoreau56 closed 6 years ago

PatriceMoreau56 commented 6 years ago

Hi Ruben,

It seems that when you checkin two models in the same project (in a respective sub project), the unit of the IFC file (ifc2x3) is not taken into account.

In the image below one building is defined in centimeters (the bigger) and the other is defined in meters: problemeechelle

I can't give you the ifc files in a public forum, but I think you can easily reproduce this issue.

I tried the following steps:

I also tried to create a subproject in centimeters for the ifc file defined in centimeters. But the result is the same.

My configuration is: Bimserver 1.5.95 BIMServer JavaScript API => 0.0.139 (bimserverapi) BIMsurfer => 0.0.43 (bimsurfer) BIMvie.ws => 0.0.102 (bimviews) BinarySerializers => 0.0.27 (binaryserializers) Console => 0.0.10 (console) IfcOpenShellPlugin => 0.5.25 (ifcopenshellplugin) IfcPlugins => 0.0.33 (ifcplugins)

When I open both files in other IFC viewers, the buildings appears in the same size without change anything.

Do you think I have to configure my project/subproject differently or it can be a bug in the bimserver?

Thanks for your help

rubendel commented 6 years ago

I don't consider this a bug in BIMserver. When multiple models are loaded, BIMserver does not know about that (it's done in separate calls). It's a feature that could be implemented in the particular client you are using (in this case BIMvie.ws).

PatriceMoreau56 commented 6 years ago

Hi, Thank you for your reply. Just for my information, what is the purpose of the "Uniform length measure for combined download" parameter when we create a new project or sub project?

rubendel commented 6 years ago

When you download for example the serialized IFC file of a parent project in BIMserver, it will use the selected "Merger" to merge the IFC data. During merging - for models utilizing different length units - it will also convert all models to a specific lengthunit. This length unit it will convert to you can set in the project settings.

The viewers do not use this functionality, they download all the submodels independently of each other. The main reason for this is that for merging you need a lot of memory server-side (it can't be done in a streaming fashion).