Recently I was reading Paul Aubin's new book:
Renaissance Revit: Creating Classical Architecture with Modern Software
In chapter 1 he discusses some of the differences between the Traditional Family Editor and the Massing Environment (Conceptual Massing Environment or CME as Autodesk refers to it). I realised that there are a whole lot more differences, that are not clearly documented anywhere, so I thought I would try to address the issue here.
Before I do that, a little more about Paul's book:
Although the overall intent of the book appearsto be about using Revit to create classical architectural elements, it is in fact all about using Revit to create some tricky geometry - and the techniques that he describes could be used for all sorts of purposes. For example, in chapter 4 he describes how to constrain arcs, circles, elipses and splines that might be used to parametrically control families. I wish I had read that before embarking on my own exploration of the subject, which had nothing to do with classical architecture - it would have saved me a lot of time and effort. The early chapters of the book also set out a lot of good practise that anyone should apply when creating Revit families, for whatever purpose.
Traditional Family Editor vs Conceptual Massing Environment
Below is an analysis of the differences between the traditional Revit Family Editor and the Conceptual Massing Environment, follwed by some specific differences that apply to Adaptive Components - these generally follow the massing methodolgy but have a few more quirks of their own. The table below is compiled from some of Paul's observation and some from my own experiences of working with adaptive components in particular. This is not a definitive list, and I may have made errors or omissions. Please feel free to comment, and I may update the list in the future, based on feedback.
I hope that Autodesk can make use of this analysis to help bring the two rival Revit environments back together in the future – and I use the word rival quite deliberately because they seem to be fighting each other much of the time.
I have traffic-light colour coded the comparisons:
Red = Bad
Orange =
Getting there
Green = Good
Conceptual Massing Environment
|
Traditional Revit
|
3D work environment
·
Offers greater
flexibility
·
Can be very confusing
·
Need to continually set work plane;
·
Can pick work
plane on the fly just by picking level or reference plane
·
But it is easy to make
mistake with work plane
·
Levels visible in
3D (but not for in-place massing)
·
Reference planes
visible in 3D (but not for in-place massing)
·
Reference lines used extensively to generate
forms or host elements
|
2D work environment
·
Limitations when working with unusual shapes in 3D
·
Simple, familiar
workflow (for Revit users)
·
Work plane often
set automatically by the view;
·
Can set reference
plane as work plane only if named first
·
Must use set work plane command (unless
prompted)
·
Hard to make a
mistake with work plane
·
Levels not visible in
3D
·
Reference planes not
visible in 3D
·
Reference Lines used almost exclusively for
controlling angles
|
Levels
·
Can create
multiple levels within family (but not In-Place CME)
· Created levels do not relate to levels in project |
Levels
· Cannot create multiple levels within family (unless already in template)
·
Upper level in columns & 2 level Generic model family do relate to project levels
|
3D forms created from selected elements
·
Greater flexibility
·
Harder to understand
· Unpredictable – eg. Cannot nominate which element is for path (result is a guessing game)
·
Easy to make mistakes
·
Often fails to create
form
|
3D forms are sketch-based, on a 2d work plane
·
Limited range of 3D
forms
·
Simple to
understand
· Predictable – eg. Sweep path is nominated · Hard to go wrong once learnt
·
Seldom fails to
generate form (usually understandable when it
does – eg lines zero length)
|
·
Limited by what
you can draw, and by certain software
limitations (unknown so can’t be listed here!)
·
Can be solid or void
·
Boolean combinations – does allow solid to cut solid
· Boolean operations can be confusing (must control picking of form vs surface) · Cannot create form from loop within loop (must use void to cut out shape)
·
Can loft multiple
selected shapes, which can be at varied angles
· Profile for Extrusion etc can be closed (for solid forms) or open (for surfaces); Open profiles require a single element path
·
Sweep along a path can have multiple linked elements to
define its path (2d or 3D) but it can be tricky to define (arcs, lines and/or curve)
· Swept blend along a path can
only have one element to define its path (arc, line or curve)· Can loft multiple selected shapes, which can be at varied angles to each other |
·
Limited to: Extrusion, Blend, Revolve, Sweep,
Swept Blend
·
Can be solid or void
·
Also limited boolean combinations of above (join & cut)
· Extrusion, sweep allows loop within loop · Profile for Extrusion, Blend, Revolve, Sweep, Swept Blend must always be closed (to create solid forms) · Can only create blend between 2 shapes - with “blend” (ends must be parallel) or “swept blend” (ends perpendicular to ends of sweep path). · Sweep along a path can have multiple linked elements to define its path (arcs, lines and/or curve); Path can be in 3 dimensions but only by pick line function, otherwise only in 2d if sketched · Swept blend along a path can only have one element to define its path (arc, line or curve) · No loft tool |
Profile families
·
Cannot
use traditional 2d profile families to generate forms in CME – but can use flat generic adaptive families (easy enough but different methodology).
· 2D Profile cannot have loop within loop |
Profile families
·
Can use
traditional 2d profile families to generate forms
· 2D Profile can have loop within loop |
·
Forms can be
changed from one type to another (extrusion to blend to loft etc)
·
Lock/Unlock
Profile command to enforce extrusion
·
Add Profile command available
·
Boolean commands
to cut or combine forms
|
Editing Forms
·
Forms cannot be changed from one type to
another – each of the five primitives are not interchangeable
·
Profiles, sweep
paths, and dimensions can be changed easily
·
Boolean commands
to cut or combine forms
|
Editing shapes of profiles
·
Complex rules; easier to make mistake
·
Depends on how the lines/form were created:
o
Base reference lines can be moved without
editing profile
o From lines and profile is
“locked” – can edit
·
Edit Profile
command sometimes
available (like trad. edit sketch)
·
Add/remove
segments in Edit Profile mode
·
Add Edge command
sometimes available
|
·
Select form, “Edit
Sketch”
·
Adding/removing
segments very simple in sketch mode
|
Changes to Work Plane of profiles in forms
·
Somewhat complex and
not intuitive: need to select
original elements that were used to create form – only works if reference
lines; model lines get consumed by
form, so cannot select them.
·
Can only change work
plane of selected elements to a parallel plane
·
Extrusion with “locked profile” will display Positive and Negative
Offsets if top or bottom face is selected; (but work plane of
original lines is not displayed at the same time) – so it is possible
to change location of a top face relative to bottom face (not possible with blend or loft)
·
User can place a dimension for the height of
the form, but this involves extra steps; it stops
temporary dimensions working for that face;
·
If the height dimension is turned into a
parameter it may remove spot elevations and shape
handles of forms back in the project environment
|
·
Very simple –
“Edit Work Plane” or “Pick New” commands available to relocate original
sketch and thus modify or move form
·
Using “Pick New”
work plane, can totally change orientation of an extrusion or blend.
·
Extrusion or blend
have properties: Workplane; First End;
Second End so it is easy to change the opposite end of the form by amending End
property.
|
Identify or Change absolute location of a face in CME (eg. If you need
to know RL of top of an extrusion)
· This is a nightmare! It is really difficult:
·
Extrusions display a positive & negative
offset for a face only if profile is locked –
therefore it won’t work for a blend
·
Work plane property is
only displayed in a separate dialog box; and only if the original reference
planes are selected; not possible with model lines.
·
It is not possible to
place a Spot Elevation annotation in the CME
·
If you place a Spot
Elevation annotation onto an in-place mass before editing, the annotation
disappears as soon as you edit – so you cannot see the RL as you drag the
face of an extrusion!
·
In the project environment, if you drag the
face of an extrusion (mass family) using the shape handle, an attached Spot Elevation will not update dynamically
– only updates after you let go the handle
|
Identify or Change absolute location of a face in Model In-Place
family (eg. Need to know RL of top of an extrusion)
·
Very simple: Edit
Family; select form to see properties
·
Extrusion or blend
have properties visible in same dialog box:
Work Plane; First End; Second End (dimensions) so it is easy to know
its absolute location.
·
Easy to change Second
End property of extrusion or blend to an absolute location (assuming base
work plane is a level, grid or named reference plane)
·
It is not possible to
place a Spot Elevation annotation within In-Place family
·
If you place a Spot
Elevation annotation onto an in-place family before editing, the annotation
disappears as soon as you edit – but this is not so bad because it
easy to identify RL from work plane + second end property
·
In the project
environment, if you drag the face of an extrusion (in-place family) using the
shape handle, an attached Spot Elevation will update dynamically
|
Panelling
·
Divided surfaces can
only be done within CME, not in project environment
·
Divided surfaces
are fairly flexible (grids or intersects),
·
Divided surfaces are
not always predictable or easy to control
·
Curtain Panel Pattern families are special
types of components that can only be applied or
modified as patterns within the CME.
This is very “unRevit-like”.
·
Only Curtain Panel
Pattern or Adaptive families can be applied to a divided surface as a pattern
of panels or repeater – but this must be within CME
·
Adaptive and Curtain Panel Pattern components
can be individually placed on divided surface nodes (only if visible) in CME – they will move with changes to nodes
|
Panelling
·
Curtain walls and
systems can be placed in the project environment;
·
Curtain wall/system
divisions are limited
·
Curtain
wall/system divisions are fairly predictable
·
Panels in curtain
walls and systems are regular components that follow normal Revit rules
·
It is not possible to
apply a traditional Revit family to a divided surface as a pattern of panels
(or suchlike) – it may be technically possible by nesting, but that is not a
realistic option
·
Adaptive components can be placed on divided
surface nodes (only if visible) in Project Environment – but they will not move with changes to nodes. NB.
Node visibility can only be changed by editing the mass family.
|
Categories - CME
·
Mass family cannot be
changed to other categories
·
Adaptive families
can be changed to some limited other categories (but not to structural)
·
Adaptive families
cannot be changed to mass category
|
Categories - Regular family
·
Regular family can
be changed to many other categories but not to
mass, adaptive or system (except by obscure workarounds)
·
Changing category will inherit some
characteristics of new category but depends on what is normally in pre-set
templates
|
File size & performance - CME
·
much larger files
·
multiple nesting can
increase size significantly
·
can run very slowly,
especially with multiple nesting
|
File size & performance
·
smaller files
·
multiple nesting
only increases size a small amount
·
run moderate to fast depending on formulas and
nesting
|
Line selection in CME
·
Chain of lines is
automatically highlighted for selection (this is mighty confusing and wastes
much more time than it could ever save)
|
Line selection in traditional family editor / project environment
·
Chain of lines is
only highlighted for selection using the tab key
|
Copy and Paste
·
Cannot copy and paste
into CME from traditional family
·
Cannot copy and paste
from project environment into CME
|
Copy and Paste
·
Cannot copy and paste
into traditional family from CME
·
Can copy and paste
lines from project environment into traditional family editor (limited)
|
Nesting
·
Cannot nest CME or
Adaptive families into traditional families
|
Nesting
·
Can nest
traditional families into CME or Adaptive
|
Group command not available
|
Group command is available
|
Create Similar command not available
|
Create Similar command is available for
in-place families
|
Does not have “Annotation” tab in the
ribbon
·
Cannot place text
·
Cannot place symbols
·
Cannot place Symbolic
Lines
·
Cannot place Detail
Components
·
Cannot place Detail
Groups
·
Cannot place Masking
Region
· Does not have model text. · only way to get any kind of text/label/tag into a mass or adaptive component is to nest a generic component that has model text in it |
Does have “Annotation” tab in the ribbon
·
Can place most
detail/annotations to represent 2D information in plans sections and
elevations
·
Cannot place filled
region in model families (have to be nested)
|
Divide line & Divide Surface
available
·
Mismatch between
numbers on divided path vs surface
·
Divided path/surface
node visibility setting is obscure
·
Divided path/surface
nodes visible in project (by default for path)
|
Divide line & Divide Surface not
available
|
Arrays – in CME / Adaptive
·
Repeater command
available
·
Repeaters
relatively flexible but hard to predict
·
Repeaters can be 2
or 3 dimensional (inc radial)
·
Array command not
available
|
Arrays
·
Repeater command not
available
·
Array command
available
·
Arrays very limited
but predictable
·
Arrays only 2
dimensional or radial
|
Volume properties
[Edit. Not sure when this changed, but can now]
· “Gross Volume” mass property can be scheduled or tagged |
Volume properties
·
“Volume” property
of forms in generic category (only) can be scheduled but not tagged
|
Control command not available
|
Control command available (for flipping
components in project)
|
Visibility Settings only available by right-clicking
|
Visibility Settings available (for
controlling display levels and 2d view visibility)
|
Parametrics & Formulas
·
Allows all available Revit formulas (with
many limitations)
·
Reporting parameters
can be used in formulas only if derived from Adaptive points (? No other “host” elements)
|
Parametrics & Formulas
·
Allows all available Revit formulas (with
many limitations)
·
Reporting parameters
can be used in formulas only if derived from “host elements” – ie. Baked into
templates (eg. reference planes, levels, walls)
· Global parameters allow reporting parameters attached to any linear/angular dimension in the project (but not for areas) |
Here is a further analysis of the weird and wonderful (or not) quirks of trying to create equivalent traditional Revit 3D forms in the Conceptual Massing Environment
And more detail on individual form types:
A few more comparisons related specifically to Adaptive Components:
Adaptive
Component Environment
|
Traditional
Revit Family Environment
|
Can snap in 3d - this is a huge advantage,
allowing easy creation of geometry in all kinds of directions in 3d.
·
3D snapping is off by default, leading to frequent
errors
|
Cannot snap in 3d in family editor (big limitation in
flexibility)
·
Limited line selection
for 3d sweep paths
|
Placement of adaptive components in the project model:
·
Does not lock to
orthogonal (bad news)
·
Does snap to
vertices in 3d;
·
adaptive points
remain locked to vertices even when they move
·
Does not snap to toposurface even when
category is “Site”
- "Load Family" command is not available on the ribbon when placing a component if an adaptive component is active in the Type Selector (In project and family editors) |
Placement of regular components in the project model:
·
Does lock to
orthogonal, and take advantage of all the Revit automatic snapping options
·
Only snap to vertices in 3d on a preselected work
plane/surface; limited 3D line selection for beam placement
·
Does snap to
toposurface when category is “Site or Entourage”
|
Voids in adaptive components:
·
Adaptive components
cannot have a host element baked into the template – so It is not possible to
include a void element in the adaptive component that will automatically cut
the host face it is placed onto
·
“Cut with voids when
loaded” capability is very limited in categories it can be applied to – it
cannot cut curtain panels, curtain systems,
mass categories (big limitation). Only works in projects.
·
void repeaters have
very limited usage – they can only be placed on flat surfaces of
walls, floors, furniture, casework etc.
This is a huge wasted opportunity as it means that we cannot place
void repeater patterns onto massing (to quickly represent windows on a mass
model), curtain panels (perforated metal panels), or any curved surface of
any category
|
Voids in regular components:
·
Some family
templates have a host element baked into the template (face-based generic,
doors, windows etc)– so It is possible to include a void element in the
component that will automatically
cut the host face it is placed onto
·
Regular components
cannot be used in repeaters, so the “face-based” families with voids in them
cannot be used
· “Cut with voids when loaded” only works in project, not in nested families |
Point Elements
·
Points are
available in CME and Adaptive components
·
Points can
host geometry and components
·
Points can be
hosted on lines/arcs
·
Points can be used
to control arc midpoints using “Start-End-Radius” arc (from v2014 only)
·
Placement of
(Adaptive) points on Level work plane do not snap to reference planes in 3d
views (but do in plan)
|
·
Points not available
|
Nesting
·
Traditional
families can be nested into adaptive components
·
Nested family
behaviour is unpredictable – particularly location and 2d rotation –
behaviour changes radically depending on whether hosted on points or just
placed on a work plane
· Line based traditional families
can be nested in, and two ends can be hosted on adaptive points
|
Nesting
·
Adaptive components
cannot be nested into traditional families
·
Nested traditional
family behaviour is fairly predictable – particularly location and 2d
rotation
|
Hosting
·
Adaptive components can be hosted by adaptive points onto vertices in the project - in 3D (not constrained to planar placement)
·
Adaptive components will flex when host vertices are moved, when adaptive points are snapped to vertices.
· Adaptive components are deleted if any one of its (possibly multiple) hosts is deleted - this is seriously bad news
|
Hosting
· Traditional
families can be hosted onto other elements in different ways depending on the family template and category - eg. Non-hosted; face-based; line-based; wall-hosted, ceiling-hosted, floor-hosted
· Hosting behaviour is very inconsistent between different categories and templates - very confusing.
· Hosting behaviour can be modified in the project by other settings and automatic system constraints.
· Family hosting behaviour cannot easily be changed (except by obscure workarounds)
|
3D Orientation
·
Adaptive families can
be very unpredictable when placed in the project environment,
especially when families are nested
·
Elements can be
hosted on points, which have their own orientation controls – so that
different parts of the model can be differently oriented
·
Options for point
orientation are extremely confusing (even with the recent name changes)
·
Nested families can be oriented and located as
part of the whole family or else controlled by points they are hosted on – can be very confusing
·
Nested components can
orient themselves differently in the project environment to how they are
oriented in their host family – can be very hard to manage (somewhat
better from v2014 onwards)
|
3D Orientation
·
Most traditional
families will be inserted into the project in the same orientation that they
are modelled – the exception being face-based, or work plane based (where
“Always vertical” is unticked).
·
The whole family is inserted in the same
orientation
·
Nested families are oriented as part of the whole family, even if they have “Always Vertical” ticked (overridden by parent
orientation in the project). Simple and
predictable |
See separate posts on Adaptive Components:
- Comparison of Origin and Insertion Points for Adaptive vs Traditional Families
- A Dozen Reasons Not to use Adaptive Components
- Reasons to be Cheerful about Adaptive Components
- Creating a swept blend with adaptive component profiles
- Creating hollow sweep forms using adaptive profile components
Hi Tim:
ReplyDeleteGreat post. First: Thanks for the mention on Renaissance Revit. I appreciate all your comments and feedback both here and privately.
On your comparisons, I would like to add a few comments:
Levels
Limited by what the template contains, the levels do not directly translate to levels in the project unless baked in that way (like Columns, or GM two-level based)
You cannot make a two-level adaptive component for example. (Changing it to a column category is possible, but it won't automatically relate to the upper level).
Biggest weakness of Create Form is that it is a guessing game. Wonder if I can make it understand what I want with this...
Traditional forms limited, but completely understandable. They have clear rules.
Limitations on traditional, why can't profiles be used for extrusion, sweep and revolve?
Why can't swept blends use multi-segment paths?
Why can't they use more than two profiles?
Booleans. Revit only recognizes Union (join) and subtract (voids). There is no intersect.
The CME really needs to allow Profile families to be used directly, or a quick conversion routine. Having to recreate all of my profiles as GM was a major PIA.
Categories is simultaneously one of the strengths and weaknesses of Revit. Sigh.
Performance continues to plague all of these tools. If you create a family in either environment of any kind of complexity (nesting, formulas, heavily parametric, etc), be prepared to suffer on performance.
Chain selection. Agreed. It should be one or the other. Period.
Copy and Paste - Arrrggghhhh
Nesting - Arrrrgggghhhh
Create Similar - Right! Why not?
Annotation - Agreed again. We should be able to at the very least nest in 2D families.
Voids - Cannot make complex voids. If you want a void made from two forms, say an extrusion and a sweep. Then combine this as a single void, it cannot be done. (at least not in any reasonable or repeatable/teachable way). So your ability to use voids to sculpt form is limited.
Voids greatly affect performance too. So that is another downer.
Voids cut when loaded ONLY works when loaded in a project. NOT on nested families. Huge bummer.
Points - the options for points are still very mysterious and require a soothsayer (or Zach Kron) to figure out.
Thanks again. Terrific stuff. This will be a future "GoTo" post for my students.
Just thought of another line item for your table:
ReplyDeleteParameters and Formulas. Both environments can be fully parametric, have types and use formulas.
Thanks Paul, I will Edit to incorporate your comments soon
ReplyDeletethere some excellent conceptual design models using the edit polygon modifier stack in 3ds Max Design. You can import in as a SAT file to Revit.
ReplyDeletefantastic tutorial here for creative designers:
http://youtu.be/tKvyv5KmtV8
In response to "Building Design Suites": you have proved my point perfectly. Autodesk seems only to be interested in providing quick fixes - yet another software solution instead of fixing the one that we actually want to use. Have you ever tried to import a SAT file into Revit? Or, if you succeed, to then use it for something? NO! what we need is for the tools we already have in Revit to be made consistent. That would make them simpler to use, and we would not need all these other solutions.
ReplyDelete