Friday, 31 July 2015

RTC Asia - The Best Tall Building in the World Needs lots of Multistorey Stairs

This year I will be presenting two sessions at RTC Asia 2015 at the Singapore.  I hope to see you all in Singapore from 10 - 12 September 2015 for the inaugural Asian Revit Technology Conference - for all things BIM in the construction industry.

The first session will be 'The Best Tall Building in the World - Documented in Revit' describing the trials and tribulations we went through in Revit to document the project 'One Central Park' in Sydney.  I will be describing the building itself and some of the techniques that we used to handle construction documentation for such a large and complex building in Revit starting six years ago (completed in 2013, and given the 'Best Tall Building Worldwide' award in 2014).
One Central Park cantilevered heliostat mirrors
This presentation will be one of the first sessions after the keynote speaker.  You will get to see lots of photos of the building inside and outside;  and you will hear about the massive cantilever 29 storeys up in the air.

Stairway to Heaven 

I will also be running a Lab Session  titled 'Stairway to Heaven'

This session will look at ways of making the new Stair & Railing tools in Revit work better for you.  It will start you off on the 'Stairway to Heaven' instead of languishing in the 'Stair & Railing Hell' that most Revit users live in.*   We will be covering such topics as multistorey stairs and railings, winder stairs, stair sketches.

* Disclaimer:  The aims stated above are of course restricted by the limitations of Revit software.

With thanks to the artist who designed this image for Led Zeppelin

Monday, 20 July 2015

Tightly Curved Swept Blends in Revit Adaptive/Massing Environment

Following on from my last post about 'Unable to Create Form Element' in the Revit Adaptive / Conceptual Massing Environment, here are a few ideas about how you might just solve the problem.

In the conventional family editor, Revit does not have any major problems in creating swept blends along a single path (one spline or arc or line), unless the radius of a curve on the sweep is too small and causes impossible geometry.  For example this simple sweep of a profile along a spline takes a minute or two to create:

In the Adaptive/Conceptual Massing Environment (CME) you have the added ability to loft shapes - to create blends of more than two shapes/profiles.  However, the rules for getting them to work are immensely more complicated, and often quite baffling.  Below is a particular workflow that I was using just to test a process, and it caused all kinds of issues.  Hopefully it might give you some clues as to how to solve similar problems - particularly if the path is more complex.

Creating Swept blends / Lofted Forms along a tightly curved path in CME

  • Place three points 
  • Select the points
  • Create a spline through the points
  • Adjust the spline to have a fairly sharp transition by dragging the middle point
  • Host some new points on spline
  • Host some adaptive profile components on the points
  • Select just the profiles
Select Profiles
  •  Create Form - it fails
  • Try pushing points closer together

  •  Select profiles; then create form - it might work if you are lucky
  •  Maybe you can pull the points back along the curve
  • At some point you get the 'No Entry' sign (circle with line through it), meaning it will not allow you to push the point that far along the spline
  • Try picking the control point for the spline and make it less of a tight curve
  •  Then maybe you can extend form by pushing the points out
  • If it is still not creating the form, you may need the spline to be really gentle to start with before you extend the points out to the ends of the spline
  • Point locations along the spline can be controlled by properties, or you can even make it parametric - using the 'Normalised Curve Parameter'.

  • Intermediate points may also need to move to get a better spread along spline
  •  Then try pulling the spline back to a tighter shape - Revit will most likely allow you to create a much tighter shape than it would originally
  • At some stage you'll notice that the form does not follow the spline, it just creates its own shape by linking the profiles
This may or may not be what you want.
  • If you do want it to follow the spline exactly, your life will be easier:
  • Dissolve the form
  • Select the profiles and the spline
  • Create Form again, and Revit will be much more forgiving - it is more likely to create the form with a tighter curve or one that turns more than 180 degrees on itself.  The obvious difference here is that it knows which order to link the profiles.
  • It uses the spline as a path but only extends between the first and last profiles
If you adjust the spline further, until the shape is too tight it will eventually tell you that it cannot create the form.  I have not figured out yet what the rules are.

What I have figured out is that if you go away for a while and drink a delicious cup of coffee brewed by your local barista (preferably a cappuccino), and come back to try again, you will usually have much more success with pulling the spline around into tighter curves with ends that even extend past each other (but not crossing).

Honestly, it is true that if you are too ambitious with the shapes initially Revit cannot cope.  But try adjusting them later and it works much better.  So the moral of the tale is that Revit gets a boost from caffeine just as much as you do.
More thoughts on lofting and swept blends to follow . . . .

Saturday, 18 July 2015

Unable to Create Form Element in Revit Massing Environment


Unable to Create Form Element

No doubt anyone who has worked in the Revit Adaptive or Conceptual Massing Environment (CME) has encountered this hated error message, that simply 'cannot be ignored'?

I have recently been the victim of several variations on this error message, some of which were quite puzzling, and even had disastrous results.   Here is a typical scenario of when it might happen, and the sequence of dialog boxes:

Create a framework for a swept blend using profiles on a sweep path
 Refer to 'Creating Swept blends with adaptive profile' and 'Creating Hollow Sweeps' for more details on how to do this:
  • Create a spline in the adaptive/massing environment (external family, or in-place mass family)
  • The spline (or other path) needs to have a fairly tight angle change or else turn through more than 180 degrees over its length in order to demonstrate this issue.
  • Host several points on the spline;   
  • host a profile on the workplane of each point
  • Select each profile component and 'Create Form'
  • Depending on the relationship between the profiles, it might create a lofted form (swept blend), or most likely it will give the following message:
Self-Intersecting Geometry Error
  •  If you click on the 'Expand' button, it tells you nothing except the ID of the form that it cannot create.  
  • It gives you the option to 'Delete Instance', which is not helpful either, as it cannot create the form that it is offering to delete.
  • Try clicking on the 'Show' button and it leads to another series of useless dialog boxes:
  • Click OK to continue
  • Well of course it cannot find a view that shows the form with that ID - because it cannot create the form so it does not exist!  Yes it is sort of consistent with other Revit warnings where it occasionally can find a view showing the offending element - but in this case it is a pointless workflow, and it should not offer us the false hope of showing something it cannot show.

Here is another variation on the error message:
In this case it does not give you any clues about the problem (not even self-intersecting geometry).  At least the Show button is greyed out, because Revit knows it is pointless to try that option.  
No doubt there are plenty of situations where this particular error message might occur, but one I know of is when your profiles have loops inside them - refer to the hollow sweeps post for a solution. 

 (Partial) Solution

Those of you who have some experience with lofting or swept blends in the Massing environment might have already figured out how to solve this issue:
You might have picked up that I only suggested selecting the profiles before create form, but did not include a sweep path - congratulations to those who knew that one.  So, you need to pick the profiles, and the spline (or whatever path) before attempting to create a form.  Revit will then have a much better chance of figuring out what you want to achieve.

However, it still may not work.  In some situations you may not actually want the host framework to dictate the exact form - sometimes you want Revit to directly interpolate between the profiles, which may give a different result.

More on how to achieve this in the next post . . . .

Reorder Profiles Button

  • When creating a form you might be lucky and get a bonus message that seems to offer you a way out:
  • What or where is the 'Reorder Profiles' Button?
  • I spent hours (days, weeks, . . . .) searching for this function in the ribbon, on options bar, in the pantry, under the bed . . . . .
  • Eventually I figured out that someone at Autodesk must have planned to put in a functionality whereby Revit could analyse the order that each of the selected profiles might be changed such that it could actually build the form without self-intersecting geometry - sadly the functionality never eventuated but the dialog message was left hidden in the software. 
  • This functionality does actually exist in some other 3D applications - but not in Revit. . . . .
  • Then one day a few weeks ago, I got this slight variation on the dialog box:
  • Wow - so there is the 'Reorder Profiles' Button:  on the actual dialog box.
  • So, of course I did as I was told, and clicked on it.
  • Bang! Revit imploded and shut down quicker than you can imagine.  No chance to save the files or anything like that.
  • I am not 100% sure about this but it seemed like it actually deleted the Revit file from my hard disk - I can't be certain but I thought I had previously done a 'Save As', and there was no sign of the saved as file.  Maybe we can put that down to the fallibility of human memory?
The moral of the tale is:  If you ever see that 'Reorder Profiles' button, make sure you have a backup of the file before you try it out!

Unable to Create Form Elephant

If you ever see this error message, you are in serious trouble.  But don't worry, all you need to do is to get Marcello Sgambelluri to help out . . . . .

Saturday, 27 June 2015

Defining Revit Custom Hatch Patterns

Over the years I have defined quite a few Revit custom hatch patterns, and each time I do it I get a headache!  It is usually about 6 months between each attempt at this so I pretty much have to learn it all over again each time.   The format for defining the hatch files (.pat) is so bizarre that it almost defies logic.  Almost, but not quite . . . .

The Autodesk help files have never changed much over the years, and just reading them gets me baffled each time.  So I decided to write my own help file that is actually understandable by human beings, so I can refer to in six months time.  And well, why not put it out there to see if anyone else finds it useful?  Of course there are now lots of  clever little hatch builder programs available, but sometimes you just want something quick and you may not have access rights to download and install that hatch builder.

The example I am showing here is a series of octagons that are quite widely spaced - I originally created it to represent those 'tactile surface indicators' at the base and top of stairs.  The octagons do a pretty good representation of circles on a stair drawing.

The first step is to create a sample of the pattern using lines - say detail lines on a drafting view.  You probably need to show a couple of repeats in each direction - true octagons are simple to create using the 'Polygon Tool' with only two mouse-clicks.

When the octagon is repeated in a Revit pattern, it does not replicate the octagon shape - it actually treats each line as totally separate, and repeats those in two possible directions.  So in order to understand which lines are repeated where, I have colour coded them.  This pattern is based on a 1000 mm square grid with the space between each octagon exactly the same as the octagon width, which means that the orthogonal lines are repeated every 1000mm, exactly offset from each other - a very simple pattern.  The diagonal spacing between octagons is quite different to the octagon width - so the repeats of diagonal lines are much more complex . . . .

Pattern Definition Format

The pattern file is just a text file, saved with a '.pat' extension.
The overall file can have descriptions at the beginning;  it can also have an overall definition of units (important for metric):

Each pattern definition needs a header prefixed by an *:   a title and description separated by a comma
      *Octagons 1 x spaced,   1000mm spaced and width octagons
It also needs a type definition (Drafting or Model)

Each line repeat (in the pattern) is described in one line of text, with comma delimited format.  eg:
0,     1200, 1000,         0,  1000,       400,  -1500
  • Angle  = angle of line from horizontal measured in an anti-clockwise direction
  • Origin x = horizontal distance of start of line from setout point (always orthogonal)
  • Origin y = vertical distance of start of line from setout point (always orthogonal)
  • Shift u (x) = offset distance of start of repeat line measured parallel to start of line
    (in the direction of the line,  ie. to match the angle)
  • Shift v (y) = offset distance of start of repeat line measured perpendicular to start of line
  • Pen down = length of solid line measured in the direction of the line
  • Pen up = length of gap in the line before the next segment of the line starts repeating (measured in the direction of the line);  is always a minus value.
  • The Shift values define the repeats in the direction perpendicular to the line.  The Autodesk help files mislead by calling them x and y values - I prefer to think of them as u and v values, which are not necessarily orthogonal.  The Autodesk help files completely omit to mention that they are measured parallel & perpendicular to the line.
  • The Shift values are measured from the start of the line, not from the setout point - another vital piece of information that the Autodesk help files neglect to tell you.
  • The pen down/up values effectively define repeats in the direction of the line.  They are optional.  If they are omitted, you get a continuous line
  • The pen down/up repeat is inconsistent with origin & shift because the coded value of Pen up is the distance from the end of the line to the start of the next - the repeat distance is actually the total of Pen down and (minus) Pen down.

Octagon Pattern Example

The horizontal lines (black)
Angle = 0
Start line x from origin = 1292.9
Start line y from origin = 1000
Shift u of repeat from line start = 0   (ie. it is a direct perpendicular offset)
Shift v of repeat from line start = 1000
Pen down = 414.2    (length of octagon side)
Pen up =   -1585.8   (distance to start of next octagon line from end of first)

0,   1292.9, 1000,         0,          1000,       414.2,  -1585.8

The vertical lines (blue)
90,  1000,    1292.9,     0,          1000,       414.2,  -1585.8

The 45° angle lines (red)
45,  1707.1, 1000,        1414.2, 1414.2,    414.2,  -2414.2

The opposite 45° angle lines (purple)
45,  1000,    1707.1,     1414.2, 1414.2,    414.2,  -2414.2

The -45° angle lines (green)
-45, 1000,   1292.9,      1414.2, 1414.2,    414.2,  -2414.2

The opposite -45° angle lines (orange)
-45, 1707.1, 2000,        1414.2, 1414.2,    414.2,  -2414.2

Pattern File
*Octagons 1 x spaced,
0,   1292.9, 1000,         0,          1000,       414.2,  -1585.8
90,  1000,    1292.9,     0,          1000,       414.2,  -1585.8
45,  1707.1, 1000,        1414.2, 1414.2,    414.2,  -2414.2
45,  1000,    1707.1,     1414.2, 1414.2,    414.2,  -2414.2
-45, 1000,   1292.9,      1414.2, 1414.2,    414.2,  -2414.2
-45, 1707.1, 2000,        1414.2, 1414.2,    414.2,  -2414.2

This needs to be saved as a '.pat' file type before it can be used in Revit.  It can be edited in a simple text editor like 'Notepad'.

  • The angle for the last two could be 135° instead of -45°, but the measurement direction would then be in a backward direction, which could be confusing to figure out.
  • If the width and spacing of octagons are not the same, you would need to define two lines at zero and two at 90 degree angles (like the 45 degree line definitions).

I hope this saves me hours of grappling with the file format and help files next time I need to create a quick pattern in Revit.

Thursday, 11 June 2015

Hollow Section Sweep with Adaptive Profiles in Revit

Two years ago I posted a description on how to use adaptive component profiles to create a swept blend form in the Conceptual Massing Environment (CME).  Recently someone asked how to create a hollow steel section sweep in CME.  I realised that I had neglected to mention something about adaptive component profiles that makes them different in yet another way from the traditional family editor:

Traditional Family Editor vs Conceptual Massing Environment - (again)

When you create a profile family in the traditional family editor it is by nature a 2D element (this is dictated by choosing the profile template to create the family).  It also has rules about what it should contain - basically it must be a single closed loop (or chain) of lines/arcs.  When you try to assign it to another family, Revit will pretty soon tell you what is wrong with it if you don't follow the rules:
 In the CME, you have to just create an adaptive component that has some lines in it.  Only you (and your naming convention) know that it will be used as a profile for sweeping or lofting forms.  If you try to create a form using an adaptive profile that has a loop inside a loop, Revit will tell you that it does not like it at all - but absolutely no explanation why:
Select a path and two profiles with nested loops
Extremely unhelpful error message when you try to create a form

How to create a hollow section sweep in the CME

The first step is to create an adaptive component profile that only has a single chain of lines/arcs - this is by nature a flat 3D family.
  • Then the profile can be loaded into another adaptive or mass family (external or in-place) 
  • Host the adaptive profile on the sweep (preferably using points to get maximum control).  Refer to the post on swept blends for more detail.
  • In this example I have only hosted one profile at each end of the sweep, and they are the same size, but you could have different sizes and intermediate profiles to create a lofted form.
  •  Select the path and two profiles
  • Create Form - it should create a solid sweep form providing the path is not too tortuous for Revit to handle.
  • Place two more profiles (smaller this time), preferably hosted on the same points
  • Select the same path plus the two smaller profiles
  •   This time create a void (use the drop down arrow on the Create Form icon)
  • Revit should then carve out the inside of the sweep to create a hollow form
If it does not do so automatically, you may need to use the 'Cut' command to cut the void from the solid form. 

Voila - a hollow steel section sweep.  Both the solid and void forms are hosted on the same sweep path so they will move when it changes.