To make the swappable profile, use a Generic Model Adaptive template, but don’t add any Adaptive points.  Set the 2 reference planes in the template to “Defines Origin”.  You can parametrize this as much as you like (just don’t use Reference Lines – you need a closed profile of Model Lines as per any Profile).  Then, load this into another new Generic Model Adaptive family.  Host the Profile component on a hosted point (that is, one that has been placed on a line).  You will need one of these nested Profiles at each end of a line to control the form properly.

I am in the habit of using hosted points to host Profiles now.  For example, in a 2pt Adaptive with a Reference Line, I will add 2 hosted points to the Reference Line to carry the Profile instances.  These hosted points will be forced to the end points by using a parameter for zero, and another one for one, and forcing these values by putting 0 and 1 in the Formula box of the Family Types dialog (see image).

If you are using hosted points (make a new point, and drop it on a Reference Line – it will be come a small dot if it is hosted on the line), you can actually adjust the rotation Angle using a parameter – this makes it easy to rotate the profile around the hosting line.

Here is the really cool part – you can apply a Label parameter to the Profile instance in the host family, and then directly swap Profile shapes (different nested RFAs or types in the same RFA, both work).  This even works from the Project Environment.

If you want to drive the profiles parametrically via the host family, you will have to make them un-Shared (otherwise you can’t map parameters from Type to Host).  You can swap between un-Shared and Shared profiles using the Label parameter.

Finally, to create the form, select the Profile families (the ones at each end of the Reference Line) and click Create Form.  Unlike other form creation scenarios, you do not want to select the “lines” by Tabbing through – you actually want to select the family itself.  The Label parameter will allow you to swap these families, which will drive the Form.

In the image below, all of these are one Adaptive family – with profiles swapped, and parameters adjusted, including rotation about the axis.


Download the above example here

Credit:  I’m fairly sure I read about this general idea somewhere… it was a while ago.

Credit to Doug Bowers:
In the Project Browser, expand the Families category, then expand the Profiles portion.  Locate the desired profile and expand it.  When you see the types displayed under that profile, right click on the desired type name and select “Type Properties…” from the menu.

This process is different for profile families from other families in that with other families you can simply highlight the nested family and pick on the Type Properties button in the Properties palette to access the parameters.  That process does not work with Profile families.

Read more
Passing Revit Parameters to Nested Profile Family | Applying Technology to Architecture

In a future post – swapping Profiles completely in Adaptive scenarios…

You can host profiles onto the nodes of a divided path (line), however they can’t be conventional Revit profiles, they must be adaptive components – they can be quite simple drawn in 2d (XY axis) without even placing an adaptive point. When hosted on the nodes they will be automatically oriented perpendicular to the divided path. You can then “Repeat” them along the path – the number is then easy to control. The challenge is how to create and manage variations in the Repeater – it can be done but is not so easy.
via Tim Waldock’s comment at
http://wikihelp.autodesk.com/Revit/enu/2014/Help/0000-New_in_R0