20120507

Repeat and Divide Prt I: curved panels

2012-03-23_1141_4bay_arcs

Buildings are not monolithic things . . . if there is one thing you can say about all buildings (cave dwellers and freaky 1970’s Gunnite structures aside) it is that they are made of many, many tiny parts all glommed together.  In one way or another, our built environment is made of repeated elements in space.

Given this, why doesn’t our BIM have a unified method to array/repeat/distribute/etc elements in space?!?!?!? 

Well, the Repeat and Divide functionality that is new in Revit 2013 is not the Great Unified Solution, but it is pretty damn awesome anyway. 

User Question:  I have a mullion that needs to follow the curvature of my form.  Both curtain system and curtain panel by pattern functionality facet my form.  How can I get back to smooth curvalicious goodness?

2012-03-23_1431

With a few exceptions, the Divided Surface, Curtain Panel by Pattern, and Curtain System functionalities reduce smooth surfaces to facetted ones.  While this is often exactly what people might want, sometimes you might want to subdivide a surface into smoothly curving parts. 

2012-03-23_1417

This video walks through a couple varieties of smooth paneling options

Curved Panels

Download the example files from here.

39 comments:

  1. Thanks Zach. Great post. Autodesk could well create an extra curtain panel pattern based template with 9 adaptive component points. I assume this in not possible with through the API

    ReplyDelete
  2. Hey Zach,

    thats a nice new feature, I thought the repeat function was limited to only 2 points or something like that?
    Anyway, could you please go through the helper family that created the more "constructable" mullions. That one was complicated. Or do you have a previous post about it?

    ReplyDelete
  3. Hi Erik,
    I have part of an explanation here:http://buildz.blogspot.com/2010/12/make-your-own-tools-parametric-arc-by-3.html

    And a little more in the comments. But yes, It probably needs it's own post.

    ReplyDelete
  4. Very nice Zach. thanks for posting. Is it possible to assign shared parameters to the panel itself for scheduling for fabrication? Similar to your 3 point hack?

    ReplyDelete
  5. Hi Bill,
    Yes, absolutely you can add shared parameters to the panel for all sorts of stuff. I show some of this with curtain panels in this post, but the same applies to adaptive components:
    http://buildz.blogspot.com/2012/02/computational-design-lab-reinventing.html

    ReplyDelete
  6. Great post, it looks like I need to upgrade to Revit 2013

    ReplyDelete
  7. Zach, I am trying to place the 9 point panel on a divided surface but I am not seeing the blue dots on which you were able to easily snap your adaptive component family. I have started off as a fresh project in Revit 2013 - massing environment and created a surface and divided it. How did you get the blue dots?

    ReplyDelete
  8. You have to select the divided surface, go to "Divided Surface Representation" up in the ribbon, hit the little arrow thingy in the lower right corner, and check "nodes". It's a bummer, but that's what we got.

    ReplyDelete
  9. Hi Zach, is there any posts you have written that describes how you have created the curved mullion made out of arc segments?

    ReplyDelete
  10. Adriel,
    not yet . . . i would like to get to this. There is a hint about doing it here: http://buildz.blogspot.com/2010/12/make-your-own-tools-parametric-arc-by-3.html

    ReplyDelete
  11. Hi Zach, thanks for these extremely valuable posts and clear and concise videos. Much appreciated by us lesser mortals, well me anyway.

    ReplyDelete
  12. Is there any way to add nodes to the very edge of the divided surface? When no intersect crosses right at the edge the nodes disappear, which makes manually placing the adaptive component nearly impossible.

    ReplyDelete
  13. There is a method that works much, but not all of the time (depending on what your panel is doing). If you turn on Pattern on the Surface Representation Settings (up there in the ribbon when you select the divided surface), you can host the adaptive points to the ends of the pattern lines. This hosting has a different "normal" than node points, and that might make some offset conditions fail, but in many cases it works.

    ReplyDelete
  14. I cant really use the pattern because I am having to go in an manually select and change some of the "repetitive components" to different adaptive components. As far as I can tell using "pattern fills" the entire surface with one adaptive curtain panel. As of now there is no actual "edge" to my divided surface at the top. The V grid just continues and stops at the imaginary edge. Any suggestions? The only thing I can think of is getting an intersects line as close to the actual edge as I can.

    ReplyDelete
  15. Sounds like I should put together a short video on this. The question comes up a reasonable number of times and the answer is neither definitive or obvious without some images. Thanks for following up.

    ReplyDelete
  16. Is there a known issue with the pattern array of adaptive components when reloading a mass made from Rhino? It seems like when I make ANY change to my Rhino mass(even if it has nothing to do with the surface that is divided) I get a bunch of errors and my mass, intersects, and all my adaptive components get deleted. Is there a way around this?

    ReplyDelete
  17. You have a linked import that you are updating? Is it only repeated AC's that are losing their host or are other elements like divided surface also disappearing? Might be some problem in saving out non-native file formats . . . I have only done the linking workflow with dwg files made in Acad.

    ReplyDelete
  18. Basically I am editing the surfaces in Rhino, exporting as an ACIS, then reloading in Revit. When I reload the error say that the adaptive components cannnot be made, and the mass, all the divided surfaces, any intersects stored within the mass, etc, all get deleted as well. Its weird because it is not every time I edit the mass, only sporadically. This is a bigger problem because other things are also hosted to this mass like curtain systems, other walls, etc throughout the project. Additionally, when I am individually swapping out adaptive panel types to customize the system all that time is wasted and must be done again.

    ReplyDelete
  19. I would guess that when you are making a new export, many or all of the faces of your ACIS are getting new/different element ID's, so when Revit reloads it, it can't match your old face to the new faces. So, I suspect that this is something that is happening on export, rather than import, but not sure. You might try other export methods (solid dwg maybe?) and see if it is more stable.

    ReplyDelete
  20. hi zach - i have a similar panel construction for a project at the moment, and have created adaptive panels for a tower the curves in 3 dimensions as it increases in height. what i would like to know is how to get mullions/transoms to work orthogonally within the project that hosts the panels. so far i've created a reference line rig that snaps to an adaptive point along the spline-by-intersection that forms the horizontal plane/s, set to the 'larger/angled' reference plane indicator, and then constraining it back with adjustable dimensions. this seems to work fine when the panels are curved. but on the straighter faces, it blows out, and i can't get the faces to remain straight. i've tried constructing them by using an offset profile from the spline-by-intersection, and while it's straight, it remains orthogonal to the panel face, not the project it is hosted into. is there any way around this? i feel like i'm missing a very simple beat here...

    ReplyDelete
  21. hi zach. please disregard my post above - i'm not a masochist or anything, but it turns out public shaming is my real skill base. 'orthogonal on placement' is the magic term here, and from the adaptive point itself. i won't tell you how many varied/complex rigs i tried to build to get this all to work...

    i will expect your flying simian-based retribution shortly. additionally, keep up the amazing posts, i look forward to making a fool of myself on them in the future.

    ReplyDelete
  22. no it's not the answer. my dishonour continues... please help!

    ReplyDelete
  23. Hey, I've made an adaptive panel like you have above, but i cant figure out how to add depth to it, and I've attached the mullions to the panel but they don't come into the surface as perpendicular to the face so they are all different funky angles. thanks for any help

    ReplyDelete
  24. Hi Kogtransmission and Anon. Can you point to some examples of what you are trying to do? Or send me the files you are working on? Not sure that I will be able to solve the issue, but I'm having a hard time figuring out the problem from the descriptions. THanks

    ReplyDelete
  25. hi zach - thanks for getting back to me. i realise that the above is a garbled mess at best, so perhaps some screenshots would be a better way to go - i'd supply you with files, but the sensitivity involved in this project would make that impossible. i could probably forward the actual adaptive component though. can you maybe supply me with an email address or a way to upload such things for your critique? thanks -chris

    ReplyDelete
  26. Hi Chris,
    Sure, you can send stuff to my email on the about page for this blog. Thanks.

    ReplyDelete
  27. hi zach -
    I'm building an adaptive component, where a series of points are used to define a set of splines which in turn generate a surface, which is then divided (fixed number of divisions, not distance). Pretty conventional so far. I then use the repeat on an adaptive component to array it over the entire surface. Works great. When I place the adaptive component into to model, it just happens that all the points lie on a plane: all H#!! breaks loose, because the grid reverts to an orthognonal layout (at some random angle) and my nice flowing lines disappear. SO: is there some trick to "lock-in" the behaviour of the grids so the grids continue to follow the curved pattern of the surface's edges, even when the splines are co-planar?

    ReplyDelete
  28. Hi Charles,
    I'm afraid that planar and non-planar surfaces will make very different surface divisions and there is currently no "lock". One hack is to adjust a flat surface so that it is very very slightly non-planar. 1/64th of an inch or something. But again, this is a hack. The other method, which may not be appropriate for your application, Is to use the Interesects functionality to explicitly define each division line.

    ReplyDelete
  29. Hey thanks so much Zach, your tutorials have been damn useful in a parametric project I'm currently working on.

    I do have one question. I'm building a dome with an asymmetrical hole in the top which I've creating by cutting the mass geometry of the dome. With segmented panels applied as a pattern, they cut perfectly with the void used to cut the centre hole, but these curved panels don't. Any idea if it's possible to do this?

    Thanks!

    ReplyDelete
  30. Hi Jonathan,
    Without seeing the particular symptoms, I'm guessing that the problem you are seeing is that the repeated component doesn't cover much of the surface? Because the component covers 9 points, the "edge" condition is going to be pretty large on a booleaned surface. Unlike curtain panel by patterns, Repeaters doen't make "partial" or cut off panels, and are just left empty.

    ReplyDelete
  31. Yup that's exactly what's happening, my structural frame is leaving off 9 points at the cut edge condition rather than continuing to the edge. and cutting based on the void as it does with a pattern based panel

    I'm thinking my only way to work around this will be to make another simpler (3 point) adaptive component to create custom edging conditions and stitching this onto the frame manually. Does that make sense, or can you think of a better way?

    Thanks so much for your advice

    ReplyDelete
  32. You may be able to manually stitch the 9 point family into some of the areas too. Little known fact: if you turn on the Pattern aspect of the Divided surface (there are Surface, Pattern, and Component aspects) you can host points on the pattern lines. This might give you some more leeway in using the main panel. But yes, you will likely need to design a few edge condition panels, probably a corner condition too.

    ReplyDelete
  33. Cool, I've been able to stitch a custom edge that mimics the edge of the cut mass opening.

    Thanks so much for your awesome tutorials & prompt/useful replies!

    ReplyDelete
  34. Hi Zach!
    I love your blog. It's so full of useful tricks and inspirations, so that I spend here way too much time ;)
    But what I wanted to point out is that you actually can mąkę curved panele in Revit 2011/2012 - I just did it in the same way as you show here, with the only difference that you have to place each panel separately, since there's no repeat tool yet.
    But what I wanted to ask you about is if you can think of the way of parametrizing panels to achieve effect shown on Revit 2011 splash screen? I mean this characteristic perforation.
    Thank you in advance!

    ReplyDelete
  35. Hi Karolina,
    Yeah, the 2011 splash screen is great. I saw the original Revit file at some point, my recollection is that it was done with good old Curtain System tools, and it was a pretty manual process of making the perforations. I think there were just a handful of different panels that were mixed together to achieve the look. The tricky part, for automating it, would be that some of the holes bleed into their neigbors, not as 2 overlapping circles, but more like metaballs, with tangent arc connections.

    ReplyDelete
  36. Hi Zach Kron,

    Just wanted to let you know you're my hero, been looking waaay to long for a solution like this. Props for the great blog!

    ReplyDelete
  37. Hi Zach,

    First off: many many thanks for this great blog! It helped me greatly with a double curved glass light shaft design.

    I am now trying to create a double curved mass on which I need to host ETFE cushions. (so cushion families on a curved divided plane) I tried with a curtain panel pattern based, but as you'll know it doesn't curve when I place it on my pattern based mass..

    Any great idea's on how to 'cushion' your curtain panels above? :)

    Many thanks for the advice!

    ReplyDelete
  38. Hi Na Rem,
    See if this video helps. I think you can combine the ideas here on making an ETFE with a curved surface . . . Although the idea of a curving pillow is a little difficult.

    ReplyDelete
  39. Oops, sorry, here is the link:
    http://youtu.be/sLW1bx-0Hhc

    ReplyDelete