BlenderBIM spreadsheet writer for .xlsx and .ods

1235»

Comments

  • edited May 2023

    @Pahlawan said:

    @Massimo said:
    @Pahlawan Btw, if it helps, quantities are just another psets with attributes. The schema says that the pset name should be "Qto_Name BaseQuantities" so for a slab it should be "Qto_SlabBaseQuantites".
    BBim can calculate and assign automatically the quantities.
    So, regarding your example, is NetArea calculated automatically or is it given in another way (like typed or imported from another software)?

    The basequantities are exported from Tekla.
    What's your e-mail?

    [email protected]
    Are you in osarch chat?

  • @Massimo said:

    @Pahlawan said:

    @Massimo said:
    @Pahlawan Btw, if it helps, quantities are just another psets with attributes. The schema says that the pset name should be "Qto_Name BaseQuantities" so for a slab it should be "Qto_SlabBaseQuantites".
    BBim can calculate and assign automatically the quantities.
    So, regarding your example, is NetArea calculated automatically or is it given in another way (like typed or imported from another software)?

    The basequantities are exported from Tekla.
    What's your e-mail?

    [email protected]
    Are you in osarch chat?

    Yes I am, using the same name, you?

  • @Pahlawan i managed to open your file from the console in BBim, without the graphical part (that seems to cause the problem).
    I saw that the IfcSlab element called 'BORDES' has a pset (typed as qto) assigned to it called "BaseQuantities".
    This pset has a property called 'NetArea' with the value '0.5854', that seems incorrect (or at least different from what BIMVision shows).
    I think this means that who created the model and assigned the quantities to it just have done it in a wrong way.
    With bbim you can correct these errors btw :-)

    Coen
  • @Massimo said:
    @Pahlawan i managed to open your file from the console in BBim, without the graphical part (that seems to cause the problem).
    I saw that the IfcSlab element called 'BORDES' has a pset (typed as qto) assigned to it called "BaseQuantities".
    This pset has a property called 'NetArea' with the value '0.5854', that seems incorrect (or at least different from what BIMVision shows).
    I think this means that who created the model and assigned the quantities to it just have done it in a wrong way.
    With bbim you can correct these errors btw :-)

    For real? Is there a tutorial on how to fix these errors?
    Or do you mean to fix the ifc loading error with this ifc model, instead of fixing the wrong netarea values?

  • @Pahlawan said:

    @Massimo said:
    @Pahlawan i managed to open your file from the console in BBim, without the graphical part (that seems to cause the problem).
    I saw that the IfcSlab element called 'BORDES' has a pset (typed as qto) assigned to it called "BaseQuantities".
    This pset has a property called 'NetArea' with the value '0.5854', that seems incorrect (or at least different from what BIMVision shows).
    I think this means that who created the model and assigned the quantities to it just have done it in a wrong way.
    With bbim you can correct these errors btw :-)

    For real? Is there a tutorial on how to fix these errors?
    Or do you mean to fix the ifc loading error with this ifc model, instead of fixing the wrong netarea values?

    Well, i mean the quantities error...the other error i think is related to an export problem from original file.
    I don't know if there is a tutorial on that but you i think you can do in these ways (or a mix of them):

    • edit the wrong values with correct ones manually
    • try "calculate all quantities" button in n-panel -> blenderbim -> quantity take off menu but please check if calculated values are correct
    Pahlawan
  • I've started using this extension to quantify length for thermal bridges. Unfortunately it seems when it comes to ifcColumns it seem to not being able to extract length nor Hight. This seem to be the case for both ODS file, and excel (my preferred file type).

    Also, it seems somewhat weird for me that the volume also is so low for the beam. Thought this might be a general bug for BB?

  • @Ole_Marius_Svendsen the dimensions you're seeing there are not calculated by BBIM. They are precalculated and already stored in the IFC by the original authoring software. It looks like it's Revit.

    Revit has a huge amount of bugs which lead to incorrect quantities: https://github.com/Autodesk/revit-ifc/issues?q=is:issue+is:open+quantity+

    After some time trying to see if they could be fixed within Revit, at work I gave up and built our own quantification tool which throws away all of these precalculated values and then calculates the quantities freshly based on our own rules. This has proven to be much more successful. If this is of interest, I've been meaning to clean it up and release it as a generic patch recipe so others can also fix up wrong quantities.

  • Thank you for the information. I will overlook some of the quanteties then to see if the circumference has been accurately calculated. For the coulms bit i found a work around by counting the number of elements in excel to find how many there are per floor. So seems i can still use it for some bits.

  • After some time trying to see if they could be fixed within Revit, at work I gave up and built our own quantification tool which throws away all of these precalculated values and then calculates the quantities freshly based on our own rules.

    Can I find a code snippet for this somewhere? I think it would be a nice feature if people have a toggle button which says "Overwrite quantities" before making a spreadsheet export.

    Nigel
  • @Coen overriding selected_objects in current context and calling bpy.ops.bim.calculate_all_quantities() ?

    Coen
  • @Coen here you can find other useful informations

    Coen
  • Hi @Coen ,
    The plugin does not work on Blender 4.2 + Bonsai, because "No module named 'blenderbim.bim'". Any plans to change it ?

  • @ejs you can globally search&replace in the addon folders (using something like notepad++) "blenderbim" > "bonsai" to get rid of this error. There may be other errors due to changes in the API though.

  • @Gorgious said:
    @ejs you can globally search&replace in the addon folders (using something like notepad++) "blenderbim" > "bonsai" to get rid of this error. There may be other errors due to changes in the API though.

    Hi,
    I'm just ping'ing the author :) The change is in the GitHub.
    There are also some other problems, which I will take a closer look at: eg. custom properties are not working for me; the 1st data line is overwritten by the headers in the XLSX file (but not ODS).

  • @ejs

    I've seen your request on GitHub, I honestly was not expecting anyone was using this tool anymore since there is IFCCSV which does the same ,and is more software agnostic than my solution and way more integrated with Bonsai. Just some expectation management. I'm overwhelmed with work at the moment. I can't promise when I have time to look at it.🫠

  • @Coen said:
    @ejs

    I've seen your request on GitHub, I honestly was not expecting anyone was using this tool anymore since there is IFCCSV which does the same ,and is more software agnostic than my solution and way more integrated with Bonsai. Just some expectation management. I'm overwhelmed with work at the moment. I can't promise when I have time to look at it.🫠

    I will assume the inquiry for your plugin stems from its lower threshold to use, as the the quantity takeout from Bonsai is to cryptical to even embark into for many of us.

  • hi @Ole_Marius_Svendsen

    I will assume the inquiry for your plugin stems from its lower threshold to use, as the the quantity takeout from Bonsai is to cryptical to even embark into for many of us.

    just curious, what is in your experience the cryptical part in the current Spreadsheet Import/Export feature in Bonsai?
    thanks

  • For sure @steverugi .
    Currently, i don't understand where to go in the UI to find information i need to take out. I am currently doing a quantity assessment for thermal bridge lengths. I need to take out all window and exterior doors, and find the total circumference of these objects.

    I am at the moment investigating "costing and scheduling", yet i struggle to understand how to just make a excel file with the information i need. I am looking in the "Manual Quantification", yet i dont understand how i can isolate my search to windows and doors.

    Under "Facility Managment", here i can see i can load the IFC into some kind of informative manner into a Excel, yet no length or quantities found.

    Under "!Uality and coordination" i can see under the "Collaboration -> Spreadsheet Import"Export" i can add filters and choose IfcWindow and IfcDoor, select them yet i can not find a "save as excel and select the quantities i want. What the "Add CSV Attribute" even is, i am not sure of.

    To conclude. I as a user wish there was a easier way to find my excel sheet for quantities. I just want to have a default button where I can in a role down menu select what elements i need, with filtering which also should be a drop down menu so i can look up "interior/exterior" etc, and select what information i want to download.

  • OK, I am currently travelling and don't have my usual computer setting at hand at the moment but let me try anyway:

    the purpose of the Spreadsheet feature is to apply some queries to the model to extract its quantities
    check the 'load from memory' box to make sure it loads it from there and select xlsx from the dropdown menu as shown here, you need to click on the gear on the right to access it

    from there select the 'Add CSV attribute' to add columns to your schedule, each attribute is a column, the following for instance forms a query where you select all the IfcWindow in your model and creates a table indicating their class and type name

    I selected web for convenience to show the table in the browser here (but as I indicated above xlsx or other formats are available)

    Some time ago I created a shared folder here
    if you open the Excel file there are a number of examples you can use

    alternatively you can import the .json files in the same folder using the Import to IFC button just below the panel

    last, you can also check the selector page with some additional info

    let me know if the above is of help, cheers

  • Hi, thank you for the assistance. I found out before you posted this, some syntax that helped me, though was a lot of unnecessary try and error. Luckly i did save the Json for future use. WOuld have loved have all the perimeter in one conjunction instead of separating the perimiter for window and doors in seperat rows. Also, with the check "IsExternal" gets me to much nonsense info, is there away to only get the output "True" and "False"?

  • hi @Ole_Marius_Svendsen

    Hi, thank you for the assistance. I found out before you posted this, some syntax that helped me, though was a lot of unnecessary try and error. Luckly i did save the Json for future use. WOuld have loved have all the perimeter in one conjunction instead of separating the perimiter for window and doors in seperat rows. Also, with the check "IsExternal" gets me to much nonsense info, is there away to only get the output "True" and "False"?

    you need to add .IsExternal to the Pset_DoorCommon attribute, like this:

    to get

    and make sure you set the TRUE/FALSE in the "gear" panel

    since you want to list both doors and windows in the same schedule change Pset_DoorCommon.IsExternal to /Pset_.*Common/.IsExternal to catch them all

    cheers

  • @Ole_Marius_Svendsen

    Hi, thank you for the assistance. I found out before you posted this, some syntax that helped me, though was a lot of unnecessary try and error. Luckly i did save the Json for future use. WOuld have loved have all the perimeter in one conjunction instead of separating the perimiter for window and doors in seperat rows.

    kindly post the query you used to output the 'perimeter' column

  • @steverugi said:
    kindly post the query you used to output the 'perimeter' column

    Qto_WindowBaseQuantities.Perimeter
    Qto_DoorBaseQuantities.Perimeter

    However, is there a way to have a long string with both in the same command? Iv

  • @Ole_Marius_Svendsen

    Qto_WindowBaseQuantities.Perimeter
    Qto_DoorBaseQuantities.Perimeter

    However, is there a way to have a long string with both in the same command? Iv

    you can use the same method indicated in my previous post, like /Qto_.*BaseQuantities/.Perimeter where the .* is the catch-all

    Massimo
  • Thanks, confirming it worked. Where would you find all of these commands? i do struggle to search these ups, and also the impact of "/" and " * " and how it changes the command to find all.

  • edited November 2024

    @Ole_Marius_Svendsen

    Thanks, confirming it worked. Where would you find all of these commands? i do struggle to search these ups, and also the impact of "/" and " * " and how it changes the command to find all.

    it's regex (regular expression) syntax, using the forward slashes you isolate the / part / that needs to be processed using the catch-all characters .* (mind the dot before the asterisk)
    it basically accepts all values (door, window, etc) in the /Qto_.*BaseQuantities/.Perimeter string replaced by the .* characters

    you can find lots of examples and tutorials online if you search for it, cheers

    John
Sign In or Register to comment.