buildingSMART Forums

Postal address of rebar windmill foundation

IFC import fails with class IFCPOSTALADDRESS of objects, probably rebar. I comes follwing the ifc scheme by default i suppose. But i miss the logic because this data should be linked to spaces for living and working. After removing these lines the import still fails. I think due to polar arrays. No log file or objects created. Import can’t be seen in as import in the software it was created from…

A test for Blender @Moult ?

Item 4: invalid array size 0, expected at least 1
Failed to read object #111 of class IFCPOSTALADDRESS

Item 4: invalid array size 0, expected at least 1
Failed to read object #755501 of class IFCPOSTALADDRESS

#111= IFCPOSTALADDRESS(,,,,(),,'','','',''); #755501= IFCPOSTALADDRESS(,,,,(),,’’,’’,’’,’’);

The fifth attribute of an IfcPostalAddress entity is AddressLines. This is defined as ? L[1:?], which means that when the list is provided, it must contain one or more items. You have provided an empty list (), hence the error.

How did you get that IFC data? Did you write it by hand?

Haha! No
It’s exported from A.
I deleted these lines but it did not help importing in B.

Deleting it may not solve the problem since there can be references to it. It is better to replace the line with valid data. If you export from blenderbim by default there will be some lines you can steal (ensure that you grab all references though)

Replaced both post addresses of this steel.
Into
#755501= IFCPOSTALADDRESS(,,,,(‘Zuidhorn’),$,’’,‘Arnhem’,’’,‘Nederland’);

Both commercial products gave no objects imports nor error log files created.
A typical line for rebar created from export

#675090= IFCREINFORCINGBAR(‘3zGcJOyPL8_RKrGO_$hj$9’,#41,‘Rebar Bar:16 : Shape 00:4707075: 1’,,'Rebar Bar:16',#675074,#675088,'4707075',,16.,0.000201061929829747,2696.11220092933,.NOTDEFINED.,$);

BSA Help on the internet

"HISTORY New entity in IFC Release 2x2 "
IFC 2x4 CHANGE All attributes are optional now. Several attributes are deprecated; their information now provided by IfcReinforcingBarType. Attribute BarRole renamed to PredefinedType .

My file is suppored to be IFC2x3
So IfcReinforcingBarType should have been used in stead of IfcReinforcingBar
Or what does this mean ??

Here is a view from my viewer though.
Unfortunately without the diameter as colors.

HA!
Changed “IfcReinforcingBar” into “IfcReinforcingBarType” and some element became visual all of a sudden. Unfortunately everthing but the rebar itself !! … still very strange…

I am thinking this is a polar array as rebar type. So it could be some special IFC object lines to get this round.

@Hans_Lammerts the rebar type entity is what’s called a “type product”, effectively what it sounds - it is a type of rebar, not the rebar itself. Flipping between the product and the type product should generally not be done manually and should generally not fix anything. In other words, “Occurrences of IfcReinforcingBarType are represented by instances of IfcReinforcingBar.

"HISTORY New entity in IFC Release 2x2 "
IFC 2x4 CHANGE All attributes are optional now. Several attributes are deprecated; their information now provided by IfcReinforcingBarType. Attribute BarRole renamed to PredefinedType .

This simply means that some attributes which used to exist on IfcReinforcingBar now only exist on IfcReinforcingBarType.

Hope it makes sense.

If you’d like, you can share your file with me and I can see if I can work out what’s going on. Have you tried importing into BlenderBIM? BlenderBIM does output a log file with errors depending on what errors it finds.

Hi Dion, thanks for the explanation in nutshell. Learned some more. I will try some Bim-Blendering myself.

Bam!!! All Rebar and parts in correct way. Not the diameter colors but that’s another story
The “Buildingstorey” and whole data structure have no logic in a Civil work environment. Needs a other approach. Just like the postall address issue.

For geometric use i love this import.
I get an error trying to export it to (blender)ifc.
No file created


Glad to see it imports successfully! If you send me your file I can investigate colours, since I thought I fixed that already :slight_smile:

In BlenderBIM, the import - export does not roundtrip without knowing how to do a bit of cleaning first. This is because the export and import functions were built at different times and were designed differently. This is something on my to-do list to fix :slight_smile:

1 Like

Hi @Hans_Lammerts - I tested your file with the latest development version of BlenderBIM and the colours work correctly. There are 3 surface styles defined in your IFC file (1 red, 2 grey coloured) and all three come through correctly. (Ignore “Material” in the screenshot below, that is a Blender default material which comes with a new Blender scene)

Perhaps you can try and make sure you are running the latest version of BlenderBIM and hopefully that helps!

I noticed that some of the rebar clashes with other rebar. Would it be a useful tool for Blender to run clash detection? If so, I can make this happen.

For possible difficulties clash detection would be useful to run. I will try some. The colors have to be set to diameter correctly first to have a good judgement on minor (no) or real trouble. I doubt this is availlable in this test file.

Correct, in the test file, I did not see any colours corresponding with diameters.

Unfortunately, i have only Black and white IFC because Revit was involved.
About kickstarting clash detection in BlenderBIM, how do i do this?

"Re: Blender now supports IFC export

Postby Moult » Fri Dec 20, 2019 7:36 am

The IFC clash utility is a command line tool too, but it requires fcl to be installed. I have not yet packaged this easily yet. If you know how to install it yourself, you can run it here https://github.com/IfcOpenShell/IfcOpenShell/tree/v0.6.0/src/ifcblenderexport/ifcclash - it is very easy to run via command line: just “ifcclash foo.ifc bar.ifc” and that’s it. "

And how does one clash with one single IFC?

It is not yet possible to clash within a single file. That would be a really useful tool :slight_smile:

Can you create a new bug for it here and so I can keep track of the request to add this feature!

I normally would model …:

! one object => one IFC file !

But that would be a hell of a lot rebar files :stuck_out_tongue:
I will send a request in. But my github skilles are not that good.