lunedì, giugno 23, 2014

Auto Wall Schedule Macro - Work in progress

I've been developing a macro during the past week to automate some tedious tasks such as the wall types / floor types documentation.
I'm sharing a work in progress of the macro that shows how it works:

  1. for each type in the project creates a sample and gives a type mark
  2. creates a section view across the width of the sample
  3. places a number of tags in the view (category tags, material tags)
  4. creates parts and dimensions for each layer and for the overall width of the sample
There are a few things that I would like to address: material tags don't update correctly, there's still need for the user intervention even if it takes just a couple of nudges up and down, it shouldn't be necessary though; I wish I could use keynote material tags but it seems to be impossible to create Keynotes via API, somehow I've found a way to copy the Keynote values in the project to the material mark but there's need to select a keynote tag (it could be any user keynote, even with a random value) to trigger the process, so it's not a solution even if it gets the job done because it won't update automatically.
In addition to these tasks I'm thinking of placing the views automatically on sheets.
An interesting thing I learned this time is about a property of the geometry options, in fact I was struggling to obtain the references of the planar faces of the parts retrieved from the samples as solids.
If ComputeReferences is set to true in the geometry options it's possible to retrieve a valid reference that can be added to the ReferenceArray to be used to create dimensions.

Updates to follow, auto floor schedule too.

If anyone is interested in seeing the code as it is right now, please contact me at

5 commenti:

  1. I love where you are heading with this, feel free to email me some code when you get it close to completion.

  2. Danny Jones2:12 PM

    Agree with Luke. This is pretty sweet man!

  3. Luke, Danny, thank you, I'll publish the code sooner or later as usual, I felt to share what I was doing actually to see if it's a good idea to carry on and which path I should choose at this point. I'm open to suggestion. I was thinking it would be interesting to know how other collegues out there manage large projects coordination issues, such as system families creation. I've my methods but I'm open to review them in order to achieve a better process. Maybe I should start a new thread and let readers leave comments on their best practices to gather more informations and taylor the macro for this specific usage.

    1. Danny Jones6:30 PM

      Yeah, I'm still trying to wrap my head around how this could be used for production purposes company wide. I think once the codes ready and I can see it in use, I think I could give better input. Currently our partition types are just drafting views that we import per project. This workflow would certainly eliminate the errors from missing a type. Can you send me a RVT file that you've already run the macro on even if it's just one partition type?

    2. Danny,
      the file itself is not so interesting unless you can understand the procedure in the whole picture. I should write a post to explain what I have in mind.