Xrev API Tools: Increase Productivity!

Feeds

Loading...
Showing posts with label Revit 2012. Show all posts
Showing posts with label Revit 2012. Show all posts

Monday, May 21, 2012

Wintergarden Facades - Shop Drawings in Revit

Another recent project finished by the Cadway team (Jonathan Croft and Myself) is the all new Wintergarden facade on the Queen Street Mall, Brisbane, Australia.  The Facade was applied to the revamped Wintergarden on its 3 street frontages.

This was a very complicated project, especially given the timing.  The design was completed by Studio 505 in Melbourne, and the engineering was completed by Tensys.  Urban Art Projects, whom we've teamed up with before (Beacon, Bird Cage, Swallow) was awarded the responsibility of building this amazing design.

Our first hurdle was that each facade panel would be pre-fabricated offsite and lifted into position.  As such, each of the cleats and the dead load beam that was to support the facade panels would be already in place when the facade arrived and we wouldn't necessarily have "as built" survey information for their actual positions.  So we needed to factor in tolerance into everything to allow for these variations!  This included things like slotted holes for connections and adjustable lateral restraints.  The other limitation was the size of the panels, they needed to fit into shipping containers as they were being fabricated overseas...

Our issues in Revit included, everything needed to be scheduled, bolts, nuts, washers, plates, beams, the lot!  We needed to produce shop drawings, with exploded axonometric views, be able to schedule fabricated elements as well as the "assemblies" of fabricated elements.  Unfortunately the Assembly features of Revit were unsuitable for such a task in version 2012 as we couldn't get quantities of the assemblies or have multiple instances of the same assemblies, or have nested assemblies (2 of these 3 limitations have now been lifted in 2013).  The other major flaw was the lack of functionality nesting actual beams.  When nesting a beam family you lose the ability to cut it with a reference plane, or even control its length...

The solution, an elaborate system of shared nested families - some as much as 7 levels deep.  There wasn't as much repetition as we hoped either, as each of the 3 facades had different heights and the scattering of the butterflies on the facade made the regular panels rarely regular!  Our nested families had numerous options built in, so a single family could alternate between many different connection types, which helped keep file size down by having less families loaded with more types set-up.  The other trick was stopping people from using the "mirror" command, unfortunately the fabricators don't have a mirror command... :-D  We again leaned on the Revit API, to automatically isolate fabricated and assembled elements (all tagged of course) and document them in isolation of the rest of the model.  As built surveys were used on some of the facades and dead load beams when they were available and we would modify the panels to suit the variations.

The 3 layers of laser cut panels were handled by Studio 505 directly, whilst we dealt with the 3 structural aspects of the system and the butterfiles.  Termed on the project as the "Mega Panel", "Grillage" and "Access Walkway".  For those interested the Revit model was a conservative 173MB in file size, kept down by the user of "Shared" nested families.  We were able to make the butterflies parametric so they could technically "flap their wings"!

The installation method was interesting as we didn't have access to the whole facade to fit the panels in places.  As such the pieces were lifted through specially designed and positioned lifting points (built into the Revit model for coordination of course), and then a custom designed trolley system would allow the panels to slide along the facade into position.

The fabricators were able to position a projector on the ceiling, projecting the completed panels on the ground, so they could then ensure that the pieces being connected together were correctly located.  The fabrication went very smoothly and efficiently.

As you can see on Studio 505's website the facade has a very elaborate interactive lighting system.  Able to project the silhouettes of those walking past, wave back at you, simulate rain or animals and even display the time.  The project was a success with very little to no coordination issues on site.








Thursday, March 22, 2012

New Laptop & Nasty Revit Bug

With starting my new company I decided to splash out and get myself a decent laptop.  I decided on a new Dell XPS15 with 256GB SSD.

Its a great computer, extremely fast and great battery life.  My main issue occurs in Revit:

Every time I'm in Revit and I have a child window open in Revit, for example the family types dialog, every 20-30 seconds the window loses focus and the Revit main window has focus! I can be typing away in one of the fields and all of a sudden I've committed another command in the background parent window (like opening the visibility/graphics dialog).  Almost like the dialogs in Revit are modeless!

As you can probably imagine this can be extremely frustrating and counter productive when you have to constantly have to reselect the child window to have focus so you can keep working.  Especially when you are writing long formulas that you have to scroll across the window to get to the end of the formula.  Then by the time you've scrolled across the window loses focus and you have to do it again!!!

This issue from my experience only occurs in Revit.  I obviously checked all the obvious things like touching the trackpad, or bumping a key - but my hands can be in the air well away from the laptop and it still does it. As such I filed it with Autodesk Support.

Of course they first asked the obvious questions, are you running the latest build, do you have Autodesk Certified drivers (and the autodesk certified drivers are years old!), etc.  I ensured I had tested all their suggestions and none of which resolved the issue.  It has now been escalated to development and apparently I'm not alone in the this issue, which is slightly re-assuring as that may mean there is a fix planned...

Anyway, I thought I would share just in case others are experiencing this issue and looking online for a solution.

Tuesday, January 03, 2012

Laser Cut files & Fabrication from Revit


Now that it is no longer under NDA, I'd show off a quick project that I recently completed for a client where we were asked to produce laser cut files for all the steelwork.

Thankfully I had a copy of Revit 2012 pre-release to play around with which just happened to add a new feature that allows me to create face based void families or nest voids in families and have them cut other families in the project beyond just system families such as walls/floors/roofs etc.  (love it when Autodesk release a feature that I can use straight away)

Using Structural framing, and structural columns I was able to quickly generate all the members to their accurate sizes.  The difficulty was that each of the 3 layers of 40x16mm RHS channels that make up the infill actually need to penetrate the external channels.  Of course the laser cut machine can only cut penetrations perpendicular, so this complicated things.  As such I generated a face based void family with instance parameters to control its lengths and radius corners.  I placed all 1340 instances of these and flexed their lengths to suit the required opening for each of the intersecting members based upon their angle of incidence and ensured no members intersected each other.

I then had our developer create a macro command using VSTA to isolate each member, create a 3D view of only that member and then export out a .SAT file and .DXF file for the laser cutting service.

I was also asked to advise the weight of this structure. Easily done through some schedules to pull out the volume of steel and a calculated parameter based upon the mass of steel being 7850kg/m³ this was all able to be automated.

Lessons learnt: I found a few bugs in this tool where the face based voids families would cut certain structural columns, which have now been addressed in the released version.  I managed to source the issue and devise a workaround. I had planned to make this much more complicated to facilitate change, but I opted for the manpower approach as I thought it was resolved.  Unfortunately for me, there were a couple of design iterations which we somewhat painful to redo.  Had I have known these were coming I would have made the mesh members and penetrations parametric.

NEXT PROJECT for the same client:
A 4.5 metre Bird made from aluminium sheet with a polystyrene core to be suspended in the foyer.

Requirements:
  • An IGS file for the CNC router to cut the polystyrene blocking to shape.
  • Fully nested cut files for all the aluminium sheet
  • Structural Steel Cut files for the support frame
  • An overall weight of the bird

Challenge accepted!

We were supplied with a model created in 3DS Max. My first thought was great, I'll use the unfolding tools of Autodesk Inventor to make light work of this.  This way I could build in K factors etc.  But of course Inventor doesn't handle geometry created by other applications well at all.  I didn't feel in the mood to remodel the complicated form from scratch in Inventor so instead I looked to Revit. Unfortunately there was some issues in the nurbs translation and the import into Revit - which I didn't discover straight away.  As you may know a nurbs face can only have 3 or 4 sides.  When importing into Revit the surface was being triangulated.  Some of the planar faces on this bird had as much as 12 sides.  Working with the designer in 3DS Max we managed to sort out a workflow that gave me the best possible base to work from.  We even explored tidying up the bird directly in Revit, so we create a tool using the API that was able to automatically convert the import into native Revit Reference Lines, Points and forms.  We didn't end up using it, but I'm sure it will come in handy in the future.  We may even make it publicly available if we get the time to make it robust to everyone elses different scenarios.

I imported this form into the Revit Conceptual Massing environment and created a family for it.  I then loaded it into a new project and used the curtain panel by face tool (using a special Aluminium system panel type that I made), selected all the faces and generated the curtain system.

Great, I now had a panelised system for all the pieces.  I then manually merged some of the complicated pieces so we didn't end up with tiny little slithers to be assembled.  Next step, systematically number all the panels (434) with unique marks, we didn't automate this so it was somewhat tedious.

Again we looked to the API to create a macro that automatically created an isolated 3D view for each curtain panel orientated to look perpendicular to the surface.  Easy enough, but how do we no which side of the surface we are looking at.  The edges of each panel needed to be bevelled at 45° so this was important.  Unfortunately there seemed to be no real logic between what side revit determined the interior or exterior of the panel even though they were all part of the same system, they weren't necessarily orientated the same way.  We were able to get around this through Raytracing in the API, which aided us in determining the interior and exterior face.  We re-ran the macro and now we had an exterior view of every panel isolated in the model.

Next step, exporting the views:
As you may or may not know, if you export from a 3D view you get a 3D file.  In this instance we needed 2D Cut files.  How do you get a 3D view to export as 2D?  You place it on a sheet.  We configured the macro to then place all 434 views on a single sheet, then exported (DXF) the sheet and left the "Xref views on sheet" option checked so we would get separate files for each of the files.  Of course we had no control over the naming of these Xref's so we then had to use a small utility to systematically rename all the files so they corresponded to their Mark.

Finally to create the nested cut files, we used another commercially available utility where you can simply enter the sheet sizes, specify the individual cut files and it automatically nests the pieces and optimises them as well as tagging them.

The last task was to generate the 3D cut files for all the structural steelwork.

Tuesday, September 27, 2011

But my structural slab isn't flat!

Set downs in structural slabs or falls to slabs can be tricky to achieve.  Below are some of the methods I used to make things simpler:

  • The first question you need to ask is do I need a thickening where the recess is? If so, then the correct approach would be to simply model another floor with the required negative level offset and overlap the floors. Then provided the floors are of the same materials and both have the same structural property then you can simply use the Join Geometry tool to clean them up.

  • However, if you don’t need a thickening Revit 2012 allows you the ability to create families with Voids that can cut multiple elements in the project: 
    1. Create a new Generic Model family - I like to use face based; 
    2. Add reference planes to control its length and width by instance, and its depth by type. 
    3. Then add a void and constrain it to the reference planes. 
    4. Now ensure you check the option “Cut when nested”. 
    5. Finally create an initial type for a standard set down depth. 
    6. Then just load into your project, place where needed and drag the grips to make it the appropriate size.
    7. Then use the Cut geometry tool, select the floor you wish to cut and then the generic model family to have it cut the floor. You can even have it cut structural beams and multiple floors.

  • For balconies with structural falls to the top face only you can use the point editing tools to drop edges/points lower to create the falls and ensure the layer of the floor is set to be “variable” in its properties. However, if the balcony isn’t rectangular, may be it is L shaped, then this approach can result in all sorts of triangulation edges – this can be worked around by turning off “interior edges” in the visibility settings. But you could also produce a similar generic model family for falls (using a void blend). This way the fall could also cut structural beams as well!

Friday, July 29, 2011

Revit 2012 - AS1428.1-2009 Door Circulation Checker

Hi Everyone,

Sorry I still haven't posted the video and datasets from RTC2011, I will do it when I get a spare few hours, need the incentive to sit down and record it all!

In the meantime I thought I'd share a little freebie, especially useful for all Australian users.  I have compiled a detail component family to graphically represent disabled circulation requirements as per AS1428.1-2009 to match Figure 31.  It has been setup to be completely fool proof, that is if you set any values that don't comply to this standard, you will get a nice large warning advising that the door doesn't comply.

It has some pretty darn long nested conditional statements (each about half a page of single line text) to match the requirements.  To help manage such long formulas I used an Excel spreadsheet to compile the formulas directly from the table.

Hope all find this useful.  Please let me know if you do as it may give me incentive to post some more...

Technically you could nest this family directly into your doors and use some formulas to to have it set to the appropriate sizes.  However, you may find that when you flip your door it will flip around the centre of the extents of the family and not about its origin.  A really annoying limitation of Revit that drives me nuts!!

Door Circulation Family.
Download it here and the Type Catalogue of standard sizes here.

Wednesday, May 04, 2011

Revit 2012 Viewer Mode

Did you know that in the Revit 2012 suite there is now a special "Viewer" mode.  I only discovered this the other day.

Finally a reliable, built in method (without having to rely on demo modes) to enable the Principals, Engineers, or Revit Illiterate Architects access to a Revit model that they can't destroy.

With the viewer it allows all standard functionality but:


  • You can't save or save as,
  • Export or publish views/models if you make any changes,
  • Print if you make any changes,
Still need to test out how this behaves in a worksetted file.  Can anyone comment on whether it borrows elements and automatically relinquishes them upon closing, or something similar?

Revit 2012 & Nested Structural Columns Workarounds

If you've ever tried to nest structural columns or structural framing members and made them shared so you can tag the members independently of the host family, then there is a good chance you've come across this issue.  That is the column height or beam length defaults to its original size and ignores its constraints set by the host family.  Find out how to work around this.