Formwork estimation using Dynamo!

Поділитися
Вставка
  • Опубліковано 15 гру 2024

КОМЕНТАРІ • 81

  • @melgcer
    @melgcer 4 роки тому +9

    Thanks for sharing! I may add up some tips for the subject:
    1- For more complex models, first creating a solid box including all the elements and then subtracting those elements from that box somehow works so much better. What I found out is, poorly modeled elements, especially the almost coplanar faces that lacking alignment creates most of the errors no matter what the method is.
    2- For the stairs, as they're frequently poured after other elements are in place, there should be two substracted solids: one with contains all elements except stairs and another with all elements, stairs included. By doing this, All the elements except stairs could be extracted from the first solid while stairs are extracted from the second one.
    3- Areas could be written on elements separately with a little more work on list structures.
    4- Openings in elements could be documented separately as they may be produced differently from regular formwork methods. This I find the most challenging issue on formwork generation using Dynamo whilst it doesn't have a huge effect on total cost.

    • @AussieBIMGuru
      @AussieBIMGuru  4 роки тому +7

      Exactly the type of comment I hoped to see - this is great tips on how to improve and build on the concept!
      I will try to present a video on point 3 at a later date, as this seems of higher value than a 1 off takeoff. Great point RE openings influencing surface area also - didn't think of that.

    • @franciscoconde7885
      @franciscoconde7885 4 роки тому

      great tips! But how can you substract the elements to the solid box if you can't properly generate all of the element geometry to subtract? Thanks!

    • @melgcer
      @melgcer 4 роки тому +1

      ​@@franciscoconde7885 Dynamo treated me well with generating individual elements' geometry, even though there was some poorly modeled elements. In your case, inspecting the problematic elements for what might have gone wrong and correcting them should do the trick.

    • @frconde91
      @frconde91 4 роки тому +1

      @@melgcer indeed, easier to correct them by isolating the elements that couldn't create geometry in the first place. Regarding the assignment of formwork area per element type, how can you trace back the right elements used to create the solid (after union or subtraction) since that after using geometry explode you lose all reference for the elements/solid? Thanks in advance

    • @alicekalomi6057
      @alicekalomi6057 2 роки тому

      Merhaba Dynomo ile ilgili birkaç sorum var amam iletişim sağlayabilir miyim sizinle?

  • @FilRib3iro
    @FilRib3iro Місяць тому +1

    Hi Gavin, thank for this awesome and very useful video. I'm a beginner in Dynamo and i wanna ask you if it is simples to have the areas by type of element after the Solid By Union is made, so i can have the area per element. Thanks in advance!

    • @AussieBIMGuru
      @AussieBIMGuru  Місяць тому +1

      Possible but not simple.
      It would involve exploding the resultant geometry back to surfaces then intersecting their face centre points with the original elements to determine which it relates to, grouping their areas by related element and finally setting said area.
      For large models dynamo would likely fail, might need something like Grasshopper/Rhino or Svechok/Blender to ensure the process can complete.

    • @FilRib3iro
      @FilRib3iro Місяць тому +1

      @@AussieBIMGuru Thank you for the quick reply!

  • @shaliniuma3594
    @shaliniuma3594 2 місяці тому +1

    Thanks for this amazing workflow! Saves time and improves efficiency. However, when I tried working with this, the elements.solid node fails displaying the error ' failed to construct a polycurve from input curves and branched polycurves not supported'. Is there any possibility to resolve this error?

    • @AussieBIMGuru
      @AussieBIMGuru  2 місяці тому

      A common error for complex joined geometry typically. It often can't be overcome in Dynamo unless you figure out which shapes/curves are causing it and try to clean up the joins.

  • @immi85
    @immi85 4 роки тому +2

    Great workflow Gavin,
    (I am using formula, because we need level by level formwork)
    But I think I can use your method also.
    Again great job👍👍👍

    • @AussieBIMGuru
      @AussieBIMGuru  4 роки тому +1

      I'll hopefully share a slightly more stable method in Grasshopper and Rhino Inside eventually also. Formula is a good idea where possible I think, that way the data is live.

  • @aps1s
    @aps1s 2 роки тому +1

    Hey Gavin! Thanks for the video - used this script to calculate formwork for a bridge, just modified so it so it calculates thearea separately for abutments, superstructure and so on. The oly thing i noticed - if an edge has a chamfer, that chamfer is excluded from the calculation, as the vector would be pointing upward. Do you know of a way that this could be included in the calculation?

    • @AussieBIMGuru
      @AussieBIMGuru  2 роки тому

      You could detect the Z component at a higher tolerance, for example maybe if Z is less than 0.9. That would ignore upward faces but account for slightly upward facing faces.

    • @aps1s
      @aps1s 2 роки тому +1

      @@AussieBIMGuru Thanks Gavin, that worked. (0.75 was the magic number). Now i just need to figure out how to get rid of the detected area for the cavities inside the superstructure and I will have a neat litle script to calculate all the formwork.

  • @ironmar69
    @ironmar69 4 роки тому +1

    Very good job. Thanks

  • @hunglamvungo6831
    @hunglamvungo6831 3 роки тому +1

    Great sharing, Gavin ! Could we separate the quantity back into floors, beams, columns, walls?

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому

      Yes for this I would suggest looking into Rhino Inside and Grasshopper. An additional step would be to intersect and find the original element of each face before the geometry was joined. Super computationally intense, Dynamo probably can't handle this much geometry!

  • @denitsas_simulation
    @denitsas_simulation 4 роки тому +1

    Very useful video! I also would be interested in a topic, how would you deal with applying dimensions to all of these elements. 3d model is smth very exciting untill I have to bring sheets out of it to the site. I would try f.e. with Dimension.by Elements node for the grids first. Is there some other fast solutions? Thanks!

    • @AussieBIMGuru
      @AussieBIMGuru  4 роки тому +1

      There is no fast solutions in Dynamo unfortunately - it's a complex task. I would suggest trying out the auto dimensions pack. It's not free, but it's quite cheap as well - less than an hour of billable work.
      archithetics.net/auto-dimension-pack-for-revit/
      The developer is quite active and supportive and takes good care of the addin from what I've seen.

  • @kentmengchan6846
    @kentmengchan6846 4 роки тому +1

    It was great! Thanks!

  • @chandumadgula9424
    @chandumadgula9424 4 роки тому +1

    Hi Gavin Nice Script...!! I have a query...for beams which are at the junction of the column..those 4 side faces have to be excluded or else the area of the formwork increases....how can we exclude that...?

    • @AussieBIMGuru
      @AussieBIMGuru  4 роки тому

      If the geometry meets the column, the solid geometry union should take care of this hopefully. The unioned form should only consider non-common faces I believe

  • @just_a_statistic
    @just_a_statistic 3 роки тому +1

    I don't know how many times i have watched it.
    I think this should be taught in universities

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому +1

      Glad it has been of interest, working on the Rhino Inside equivalent currently!

  • @JorgeRojas-ru8yb
    @JorgeRojas-ru8yb 3 роки тому +1

    In case I need to classy the type of faces based on the type of element they came from, how could I do that. For example that the faces of a floor are differentiated from the columns or the walls.

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому

      Tricky... as the faces once combined are no longer the original shape in the list order. You would probably need to explode the faces and flatten the list, then intersect them with the original elements and find the index of the match. It's pretty heavy for Dynamo to do something like this - at this point I'd be suggesting grasshopper instead.

  • @C4Cine4U
    @C4Cine4U 3 роки тому +1

    I am a beginner in dynamo but I learned a lot from the video, thank you. I have a question: it is possible to estimate formwork in generic models as dams? and how would you do it?

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому

      Yes it could be possible, but you would need a 'rate' to apply to dam face area I'd say. If you know roughly which direction the dam walls are facing then you could explode the wall geometry and filter its surfaces by whether they are within an angle of the intended direction to reduce your analysis surfaces to only those on the dam wall. From there Dynamo can calculate surface area.

  • @deanwinchter8598
    @deanwinchter8598 2 роки тому +1

    I am facing with error code at solid.byunion "Warning: One or more of the input types are not matching. Couldn't find a version of ByUnion that takes arguments of type (Function)" why sir . help me

    • @AussieBIMGuru
      @AussieBIMGuru  2 роки тому

      Make sure the only data going into the node is in the form of solids and that there are no null values.

    • @deanwinchter8598
      @deanwinchter8598 2 роки тому

      @@AussieBIMGuru my list.flatten is showing function

    • @AussieBIMGuru
      @AussieBIMGuru  2 роки тому

      @@deanwinchter8598 somewhere before that something must not be working. My script is on github if you need to compare it.

    • @deanwinchter8598
      @deanwinchter8598 2 роки тому

      @@AussieBIMGuru I get it sir thank? At the Bottom of my nodes showing I but yours showing Auto, what is the different, sir

    • @AussieBIMGuru
      @AussieBIMGuru  2 роки тому

      @@deanwinchter8598 i am unsure. Hard to say. Maybe try using the autodesk sample structure project like i did to ensure it works the same way.

  • @lazarmajstorovic4857
    @lazarmajstorovic4857 Рік тому

    Hi everyone!Does anyone know where to download this project in video?

    • @AussieBIMGuru
      @AussieBIMGuru  Рік тому +1

      This is the advanced sample model by Autodesk, saved here:
      help.autodesk.com/view/RVT/2024/ENU/?guid=GUID-61EF2F22-3A1F-4317-B925-1E85F138BE88

    • @lazarmajstorovic4857
      @lazarmajstorovic4857 Рік тому

      Thank you so much :)@@AussieBIMGuru

  • @samawdaroj6862
    @samawdaroj6862 2 роки тому

    Byunion in my workflow was warning, can you explain why?

    • @AussieBIMGuru
      @AussieBIMGuru  2 роки тому

      Hard to say. Make sure all the elements are solids, and check the error warnings to see if they help give an idea.

  • @pisethchea4181
    @pisethchea4181 3 роки тому +1

    could we use Dynamo for quantity take off of structure ?

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому +1

      Yes dynamo can obtain elements and their parameter values (area, length etc) so it's definitely possible.

    • @pisethchea4181
      @pisethchea4181 3 роки тому

      @@AussieBIMGuru can we write a script that can apply all RC structure for quantity take off ?

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому +1

      @@pisethchea4181 possibly, it really depends how clean your data is and how well modelled your design is. I mostly deal with architecture myself but have achieved quantity takeoff before across multiple categories. It's mostly just a matter of collecting elements, filtering them by type, obtaining relevant data, building lists and writing to excel or csv

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому +1

      @@pisethchea4181 this video by TRK shows a method he uses to do model based takeoff;
      ua-cam.com/video/051WFw52C5g/v-deo.html
      As you will see, his data has been organized in revit prior to support the script.

    • @pisethchea4181
      @pisethchea4181 3 роки тому +1

      @@AussieBIMGuru thank for your details and lovely answers

  • @just_a_statistic
    @just_a_statistic 3 роки тому

    can we export it to excel with elements name?

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому

      Replied to you on twitter. Please ask questions in one place ideally.

  • @just_a_statistic
    @just_a_statistic 3 роки тому

    Can we get the script ?

  • @just_a_statistic
    @just_a_statistic 3 роки тому

    Create more Workflows on formwork.

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому

      Not really my specialty unfortunately. I've done about as much as i know as an architect here.

  • @BIMproAI
    @BIMproAI 13 днів тому

    How to do this using only python :)

    • @AussieBIMGuru
      @AussieBIMGuru  13 днів тому +1

      With great difficulty. It would require a lot more work to achieve all the intersections, unions etc but I'd probably just do it in Rhino Inside these days!
      The revit API and geometry engine have a lot of errors related to solid geometry that Grasshopper/Rhino provide very simple routes around.

  • @just_a_statistic
    @just_a_statistic 3 роки тому

    Didn't understood a thing

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому +1

      It's a fairly advanced workflow. Might need to focus on fundamentals first if you're newer to Dynamo or Revit

    • @just_a_statistic
      @just_a_statistic 3 роки тому

      @@AussieBIMGuru can we connect on instagram ?

    • @AussieBIMGuru
      @AussieBIMGuru  3 роки тому +1

      @The Joker i dont really use instagram. I mostly use linkedin and twitter.

  • @graceyaminn
    @graceyaminn Рік тому

    Why my list.filterbyboolmask "in" is empty and "out" is ok. I used same structural sample project for Revit. Please give me idea for the empty list issue.

    • @AussieBIMGuru
      @AussieBIMGuru  Рік тому

      It means the elements must not be passing the mask conditions. Follow it back and check why they have generated a false value.