BILT Speaker

BILT Speaker
RevitCat - Revit Consultant

Wednesday, 12 June 2013

Revit Step Pattern Repeaters Part 2

Further to my recent post of 6 June on Revit Step Pattern Repeaters, here are a couple more methods to achieve step repeaters:

Step Patterns Method 3

  • The previously created 1 point adaptive box could have an additional parameter added to it - to allow it to be offset to the right from its centrepoint origin.  At its simplest it just needs a parameter from centre to left side - if set at half the width value it will be centred;  if set at zero it will be offset by half its width.  You could put in a formula to make it offset using a checkbox but its not really necessary.


  • Create a new type that is offset to the right by half its width.
  • Place a centred type box on a node of the divided surface
  • Place an offset type box on the node above it on the next row

  • If you try to "repeat" this it will only create a linear pattern;  so you need to teach Revit what you want - place two additional boxes in a cluster of four (two of each type)

  • Select all four boxes and click on the "Repeater" (array) command to get a two directional step pattern.
  •  This will create four separate interlocking repeaters

  • The edges will not be finished correctly, so you need to create a new half width offset box and swap out the overhanging edge pieces.

  • NB. If you change the number of divisions on the surface, you cannot control where the half width types appear in the overall pattern.

Method 4

  • If you want to create something more complex than a box on a rectangular surface grid, you may need to create an adaptive component that has multiple adaptive placement points 
  • Although this example is still a box, it has 3 adaptive points - the first two set out the left hand edge, and the third point the bottom right corner and length (reporting parameter).  The overall box length is calculated at twice the length between the adaptive points 1 and 3
  •  The adaptive component needs to be placed on 3 nodes on the divided surface in the correct order

  •  If you repeat this component, it will make a rectangular pattern, which is not stepped.  So you need to place three more adaptive boxes in the final pattern that you require

  •  Select all four boxes and click on the repeat command - to get a step pattern

  • The edge boxes on the right hand side, need to be individually exchanged for half size boxes;  the left side needs to have new half-sized adaptive component boxes placed in alternate gaps.  It should be possible to place just the first two and then repeat them vertically.
 
  • Although this method is more complicated, the principle it shows would allow more complex patterns than the one point adaptives.  For example, if you taper the surface grid, the length of the box varies according to the node spacing


  • If you created a 4 point adaptive box, you could get it to distort itself to fit properly on a tapered grid

For methods 1 & 2 refer to previous post below:
Revit Step Pattern Repeaters

For information on how to achieve particular repeater patterns of adaptive components on a divided surface refer to:
Single Point Repeaters


Thursday, 6 June 2013

Revit Step Pattern Repeaters

I saw a question recently about how to create a step pattern repeater, so of course I had to figure out how to achieve it. You could just use a 1/2 step or 1/3 step curtain panel pattern on a divided surface, but that may not be exactly what you need, and the predefined surface patterns are not always easy to modify if they don't suit your purpose.

Here are a couple of ways to achieve it with Repeaters in Revit:

Method 1

  • Create a one point adaptive component, with a box centered on the point;
  • Give the box separate width and depth parameters to control its size;
  • Create the surface that you want to apply the step pattern to;
  • Divide the surface and make its nodes visible
 
  • Load and place four instances of the adaptive box on alternate nodes on two rows of nodes
  • Select all 4 components and click on the Repeater command, it will generate a checkerboard pattern
  • It is actually 4 separate but interlocking repeaters
  • Now change the V Grid spacing so that it is half the U grid spacing (or vice versa).  This will tighten the repeaters up into a step pattern
  • An alternative would be to leave the U and V grid spacing the same, but change the width of the box to be double its previous width
  • If you want to tidy up the edges, you may need to swap out the overhanging components for half-sized types, although they would need an additional offset parameter so that the width is not centered about the insertion point (& node).

Method 2

  • Start with the same divided surface but change the rotation angle of one of the grids.  It seems that if you make the V Grid angle 30.95 degrees it offsets the nodes on  alternating rows by half the spacing - I don't have time to figure out the maths but there must be a logical reason.
  • Place just one adaptive box component onto a node
  • Then repeat it

  • The resulting step pattern will have gaps in it, so the width needs to be changed - in this example from 1000mm to 1200 mm
For more on this topic refer to Step Pattern Repeaters Part 2 : Methods 3 & 4

Sunday, 2 June 2013

RTC and Revit Egress/Escape Path Update

RTC Australasia 2013

At the Revit Technology Conference (RTC) in Auckland a couple of weeks ago I learned a whole lot of new tricks in Revit.   I usually think that if I learn one or two things that might save me hours or even days of work in Revit then it is worth attending the conference.  This time I learned a whole swathe of new techniques, including (but not limited to):
  • How to scale families by 5 different methods in Revit (and I thought it was not possible at all);
  • How to control rotation of elements in all axes and directions in a family;
  • How to morph elements in a family;
  • How to create walls, roads and fences that follow a toposurface exactly;
  • How to get a chameleon to persuade a grasshopper to talk to a frog (Revit) ;
  • and the list goes on . . .
Many thanks to Marcello Sgambelluri, Alfredo Medina, Andrew Willes and all the others who taught me new things.  I'm sorry I missed so many other sessions that sounded interesting too.
I also did a presentation in Auckland titled "Fractal Fun with Revit Repeaters and Adaptive Components".   If that sounds complicated, it was actually a lot of fun - and I learned a lot in the research and testing that I did to prepare for it.   For those who missed it, you have another chance to see a new improved version of the presentation in Vancouver at RTC NA in July.  Luckliy I had "Fun" in the title because my presentation followed straight after the keynote speaker Nigel Latter, a psychologist and local TV celebrity - his talk was entertaining, but also had a serious message about how to deal with change (and how to deal with difficult people who are resistant to change!).

One of the other great things about RTC is that you get to talk to other users and Revit experts about what you have seen and heard.  This often leads on to other new ideas.  One of those discussions was about creating Escape or Egress paths in Revit - and this led to some new methods I could use for the adaptive component that I created last year:
Escape Path Adaptive Component

Update on Escape Path Component


The new idea came out of one of Marcello's new methods for scaling families - to play around with the adaptive point properties so that they behave differently in the project.  Comments on my earlier post rightly pointed out that there would be a lot of extra mouse-clicks if you did not require all the segments of a particular escape path component.  However, it is possible to change the properties of each adaptive point so that they are either:
  • a "Placement Point", which requires a mouse-click from the user when the component is first placed;  or
  • a "Shape Handle Point", which does not require a mouse-click on placement, but does allow the user to move it after placement - at which time it behaves as an adaptive point that will move/change any geometry that is linked to it.




What this means is that you could make the first three adaptive points as placement points, and all subsequent points as shape handle points.  So the user initially has to place only the first three points (two line segments);  subsequent points would only come into play if those segments are activated using the visibility switch.

The downside of this idea is that all of the shape handle points are selectable in the project even when their visibility (and the line segments) is turned off - although moving them  would not have any effect if their segments are turned off.








To see how to create the egress path component, refer to:
Escape Path Adaptive Component

Sunday, 12 May 2013

Swept Blend using Profiles in Adaptive Components

This process might seem obvious to anyone who regularly works in the Revit Conceptual Massing Environment (CME), but for those who are starting out with Adaptive Components, it might help the transition from the old Revit family environment.

The question is:
How do you create a solid extrusion or sweep using a profile in an adaptive component ?

A lot of people advise against nesting components too much, but profiles are incredibly useful in Revit - they can save a lot of time and usually give much better control of geometry, rotation and parameters than just drawing linework within a family.  But the problem in adaptive components is that Revit won't allow you to load a traditional Revit profile family.  The adaptive component environment also does not have any of the "Edit Path", "Load Profile" sort of commands that you regularly find in the family editor.

The Solution:

How to create a Swept Blend using Profiles in Adaptive Components

The answer is really quite simple:  create an adaptive component that just has 2d linework geometry.  It can have dimensions, parameters and reference planes just like a profile.  the main difference is that it is visible in 3d in editing mode and after you have placed one too.





There are a number of tricks that you need to know:

  • The adaptive "profile" component does not need to have an adaptive point.  In fact it is better without, because then you can use the reference planes to lock the geometry to the origin as in a normal profile.
  • When you place an adaptive profile into another adaptive component, you can place it on a workplane or host it onto another element.  If you host it to a reference line it will automatically orient itself to be prependicular to the line (or arc).
  • You can also host it on a point, which may itself be hosted on a line - very useful for controlling its location along the line parametrically.
  • You can host it on a divided path node;  but don't bother to convert it to a repeater because it cannot then be used to create a solid form.
 Here is a quick description of how to use profiles to create a swept blend, but this technique could be used for any shape, solid or void.



  • Host two different size adaptive profiles (different types) on an arc reference line;

  • Select the profiles and the arc;  
  • Create a form;


  • Select a profile and slide it along the arc;

Flex the form by changing the sizes of the profile, the radius of the arc or move the adaptive points.

This techniques features briefly in my upcoming RTC presentation:
"Fractal Fun with Revit Repeaters and Adaptive Components" at RTC 2013

Creating a more Complex Form

You could try something a bit more complicated by first applying a divided path to the arc

Then try hosting some different sized profiles on the divided path nodes
You can turn these into a repeater - but sadly you can't select a repeater and turn it into a form (Revit won't allow that as of v2014 *see below)
The alternative is to manually host the profiles on each node - the end result may look the same, and be more laborious but it is not a repeater
These manually placed profiles can all be selected and turned into a form
The profiles are still visible, but they can be hidden
This form can be somewhat parametrically controlled - spacing of nodes, profile sizes, arc radius etc;  but the number of profiles cannot be adjusted after the fact.

Addition to Post  20 Dec 2013
I notice that this post gets a lot of hits so it must be an issue that people struggle with on Revit.  So I thought I'd add a bit more information:

It is possible to use a traditional Generic Model family with flat geometry nested into an adaptive or mass family to create your sweep or lofted form.  However, a traditional generic model does not have the advantages that and Adaptive Component (Generic or other category) has:

  • When a traditional generic family is loaded in, it will normally just place flat on the Level work plane.  If you want it to be in a different orientation, you need to set its properties to not be always vertical, and also to be work plane based.  Then you have to stuff araound setting the work plane before placing it - what a hassle.
  • If you use an adaptive component (with 2d linework, preferably in a closed loop), you don't need to mess with its settings - just load it into the adaptive or mass family;  when you place it, it will automatically rotate to its host - either perpendicular to a line, or snapped to a point.
  • If the point is in free space (ie not hosted on something else), it will snap to the default work plane of the point (most likely horizontal)
  • If the point is hosted on a line/arc/curve (it will look smaller than a free point), it will again orient to the default work plane of that point - but that will already be oriented perpendicular to its host.  Its very easy.
  • Another advantage of placing the adaptive profile onto a hosted point is that the hosted point has a "Rotation Angle" property that is simple to control - the profile will rotate with it.  simple.


You can use the Rotation Angle property of your hosted points to rotate individual profiles to achieve a twist in your form really easily.

Postscript 11 June 2015:
What happens if you want to create a hollow section sweep?  Refer to this post.

In Revit 2016, you can now create a swept blend or loft from a repeater (sort of) - refer to this post

Thursday, 2 May 2013

Revit contour label orientation

A few times I have tried to search for information on how to control the orientation of contour labels in Revit - always without success.  It seems that Revit likes to orient the text of contour labels to be readable only if you are walking uphill on a Revit toposurface.  That works fine until "uphill" happens to be in an Easterly direction or even worse in a Southerly Direction, then the text can be upside-down.

All of the advice I have read is that this cannot be changed, and that you should not fight against Revit - just go with it and accept the way it is.  Most of the time I would agree with that advice, but just occasionally you might be forced into beating Revit in this battle . . . .
Like maybe your boss threatens to sack you if you can't make such a simple change to a drawing;  or the client threatens to sack your boss . . .

The Revit Contour Label Orientation Issue

Most of the time this issue is not a big deal, but some numbers can be confusing when read upside-down - 6 & 9 for example.
In this example, the contour labels are in millimetres, so it is pretty obvious that "0009" must be upside down, and it will be unlikely to cause a problem.  However, it is more common to work in metres on site plans and landscape drawings, so the numbers immediately become confusing, if not downright dangerous - especially if you can't easily trace the contours around to see the problem (unlike this example where it is easy to pick the mistake due to proximity of correctly oriented labels):
Your first response is likely to be to search the type properties for text orientation, but there is nothing there to change (at least not in Revit versions prior to 2014).  You can confirm this by looking at Wikihelp.

 

How to make Revit contour labels readable

The only solution to this problem that I could come up with is to put a tiny zigzag in the contour so that for a very short distance the contour direction is reversed.  you can then apply a lable to this section.  It is not so easy to do because when you edit a toposurface Revit likes to take shortcuts when you place points of a similar height very close together.
So you have to force Revit not to take shortcuts.  This can be done by inserting points of a slightly lower height - by trial and error to see where they need to go.  Fortunately Revit is very kind in that it shows the new contour lines as soon as you place or move a point.
The extra points must be very close in height to the contour height otherwise you'll get a nasty jagged area visible in 3d.  The zigzag also needs to be very small, so that it is easy to hide in plan.
Once the contour is "fixed" you can place a very short contour label line that only crosses only the reversed section of the contour.

With any luck, the contour label will obsure the zigzag.  Obviously you need to remove the upside-down label by shortening the line - that means you cannot have one continuous contour label line running across several contours.  You have to resort to lots of tiny separate label lines.

When Would You Use This Workaround?

I have to confess that this is a really nasty workaround - it is very labour-intensive and fiddly.  So I would advise you NOT to use this except in extreme circumstances where your credibility or job might be threatened. 
Sometimes it is not worth admitting to Revit's quirky behaviour and inconsistency if it might contribute to negative perceptions of Revit in your workplace.  So, do you fight Revit or fight your workmates/bosses?
Another situation that it might be worth doing is where you think there is a real risk that someone might dig a 3 metre hole on site when they misread a 6 for a 9 !!!

There is another possible solution that may avoid confusion, even if it does not placate the boss: Try making the label text underlined - that generally makes it obvious that it is upside-down, even if it looks horrible.





Saturday, 27 April 2013

Revit's most hidden commands

Recently I did a Revit demo of divided paths and repeaters.  Afterwards someone said they had spent a day trying to figure out one simple thing I showed - they searched everywhere, including Youtube for videos but could not find out how to control divided path node visibility in a project.  That got me thinking about some really hidden away commands and features in Revit that are not at all intuitive and are not clearly explained in the Wikihelp - so here are a couple of them:

Divided Path & Divided Surface Node Visibility

When you are in the Conceptual Massing Environment (CME) in Revit (Mass family, In-Place mass, Adaptive Component, Pattern-based family), there are two commands for dividing elements:   Divide Path & Divide Surface.
They behave slightly differently but have a common purpose and methodology as well as common problems.

Divided Path

When a linear element (line, arc, spline etc) is selected, a command becomes available: "Divide Path" - this does not affect the original element but places a new element on top, which is divided into a specified number of segments delineated by nodes.
These nodes show as blue dots, and can be used to snap onto.  There is no way to control the size or colour of the nodes - it is hard-coded into Revit.  The visibility of the nodes is also hard to control;  in fact, in the project environment they cannot be controlled at all - if they were visible in the family when it was loaded, then they will always be visible in the project, which can be very frustrating.  Don't waste your time looking for settings in "Visibility Graphics" or anywhere else in the project settings - you have to go back and edit the family to hide them:
In the family environment, select the divided path.  On the menu, it should display a panel called "Path Representation";  on the bottom right corner of the menu panel is a tiny black arrow.
Click on the arrow and it will open a Path Representation dialog box


This is where you can turn on or off the node visibility. Then you can save the family and load it into a project again.

Divided Surface

This works in a similar way and has the same visibility control problems, but of course it is inconsistent with the divided path in several ways:
1.   By default the nodes on a divided path are visible;  on a divided surface they are not, so you have to turn them on to see them!

2.  The number on a divided path refers to the number of nodes;  on a surface it refers to the number of segments - thus the same number would result in one extra node on a surface relative to a path

3. Surface representation has additional options related to grids, lines and patterns.

However, if  all three checkboxes are unticked, it still displays the original surface and it seems that there is no way to turn off its visibility - ie the "Original Surface" checkbox only works when one or both of the other two boxes  are ticked (Nodes or UV Grids and Intersect Lines).  The only way I could figure to hide it is to tick the "Original Surface" checkbox, which enables the material settings so that you can make its material transparent.

Hopefully this will save someone else from spending all day searching how to control node visibility.

Room Area Calculation Height

This one catches me out every time I want to change it - I have to search the internet for clues on how to control what height room area calculations are made.  This might not seem a big deal but when you have a split level building it certainly becomes vital, as room areas can be calculated for the wrong floor, or not at all.  It can also be a problem if some of your walls start or stop at unusual heights.
In this example the room on the left displays its hatching and area correctly.  The one on the right does not - the difference here is that one of the walls on the right has a base offset of 200mm.  By default the room area calculation is done at zero height above the floor level, so Revit considers the room to be not enclosed.

How do you change this?  After much head-scratching you might eventually figure out that the setting is not a project setting, nor a room setting but is in fact a property of the Level that the room is placed on.  If you go to a section or elevation view and select the level, it will display the properties.

One of the properties is "Computation Height".   Change the value of this to 300mm (above the base offset of the wall), and the room is now enclosed properly.

Pretty obscure huh?  You can argue whether this is the right way to control the area calculation as it certainly gives flexibility to have different values for each level.
But there is no doubting that this has to be one of the most hidden away settings in Revit - who would think to look there?  Who would remember this setting without being traumatised by spending hours or days trying to troubleshoot why a room is not properly enclosed?