View Full Version : Parametric Louvers
beegee
2003-07-06, 06:15 AM
I'm creating a parametric window family for louvres.
The number of louvres in the height changes with a parametric array and works fine, but I'm having problems flexing the width.
The louvres are an extrusion, with the bottom louvre having its edges align locked to reference planes at the frame edges. This bottom louvre then is arrayed vertically, with a formula changing the number of louvres with the height.
When arrayed, the other louvres created, are not locked to the edge reference planes for some reason, so the width of the array does not flex properly.
Once I get this working, I will probably replace the louvres with a nested family. Also I'll then post to RUGI if anyone is interested.
The family is attached, if anyone can help.
beegee
Wes Macaulay
2003-07-06, 06:53 AM
I've had problems with parametric arrays not flexing dimensionally. I think your solution of a nested family is probably the best bet, though it's a drag to have to do this...
beegee
2003-07-06, 08:18 AM
Thanks Wes,
I'll give the nested family a go.
beegee
Gerhard
2003-07-06, 02:53 PM
first of all I copied the extrusins instead of array, so flexible width works fine, but not your formula of course for the hight
then tried sweep and nested families, but all did not work with your array formula
for time being have therefore two single families
one with varibale width and the other with variable hight
but guess there must be a solution
and how do you want to post it on Rubi
when I try to connect there, I'm asked for a user name and password.
Up to now I always connected without, have therefore now passwort and just can connect?!
Gerhard
beegee
2003-07-07, 12:22 AM
I deleted the blades in the model. Created a separate family for a louvre blade ( as an extrusion ), nested that into the main louvre window family, locked its edges and it works fine, .... as a single instance.
However, I still can't get it to array within the main family and lock its edges. Maybe a sweep would work better than an extrusion ??
beegee
beegee
2003-07-07, 08:30 AM
This is the current state of the family, as per post above.
Any help appreciated.
beegee
Wes Macaulay
2003-07-07, 11:17 AM
The trick with a nested family is to create parameters which can in turn be used in the parameter settings of the imported family. Then you go into the properties of the imported family and hit the little equals button at the right edge of each parameter row inside the imported family. Up pops a dialog box telling you which parameter you'd like to choose of the ones you've created in the host family file, and there you are.
So you can't snap geometry to ref planes, but you can still make nested families behave parametrically using this method.
beegee
2003-07-07, 09:49 PM
I firstly created a family called "louvre blade" with a parameter " width" for the length of the blade. This family was nested into the " Louvre" family and the parameter 'width' was made a shared parameter. This works perfectly for a single instance. The problem occurs when that component (the nested louvre blade) is arrayed vertically with the array tied to a formula to control the number of blades in the height. When the family is flexed, the array will not maintain alignment, as you can see from the posted file.
I cannot find a way to fix this as yet.
beegee
bclarch
2003-07-08, 01:58 PM
Beegee, you seem to be ahead of the curve on this one compared to most of us. Your best bet might be to talk to Revit support and see what they say. If it is achievable, then they should be able to help you quickly. If they tell you that it is not possible, then you can at least save yourself some frustration.
Hi,
sorry to bug in this thread, but I have been using parametric arrays to do a lot of things since 4.5 and they never really worked the way I wanted them to. But ever since in 5 we can nest families things are starting to work a little better..
anyway, here's my try to your problem, it's working on mine... but I hope I understood your prob correctly...
1. I arrayed the louvre blade using the "array to Last" and flagging the constrain option (it should keep the constrains of the original object though sometimes it doesn't work...)
2. I inserted a new family parameter to control the louvre's width automatically
3. In the array I edited the last member of my group (the top one) and locked to the top reference plane to make sure it is following the height value
4. I also had to lock that same louvre blade to the left ref plane to make it stay in the right position... the constrain didn't work correctly... :(
now it seems to work correctly, I flexed the model both in the height and the width and the geometry is behaving correctly...
Please excuse me if I didnt get your problem correct... but I spent hours and hours trying to get parametric arrays and formulas to work... and somehow it's nice to see I wasn't alone in that :)
ciao
gianluca
beegee
2003-07-08, 10:12 PM
gnl,
You've cracked it :lol: thanks very much.
The new constraint you added " width1 " was already there as " blade lenght " , so , as far as I can see, the fix was to constrain the array and primarily, to (re)constrain the top blade before applying the array parameter. Am I right ?
I'll play around with it some more when I get time, so I can understand the process more clearly.
Again, thanks so much for your help.
beegee
Beegee,
yes, I added the vertical constrain to the last object of the array before assigning the array parameter.
sorry about the width1, guess I missed your blade length parameter...
glad to have helped
ciao
gianluca
aggockel50321
2003-07-31, 08:42 PM
Jeesh!!
I just beat my brains out trying to make a simple bookshelf with arrayed shelves & experienced all the problems you had with the louvre.
After reading this thread, I finally got it to work.
An additional observation that I found helped me out of my dilema:
Do the array first, with a nested object, locked to your reference planes.
Flex the array and any other length parameters first & make sure the nested array behaves before constructing any geometry adjacent or near it.
I first made the sides & back of the bookshelf, brought in the nested (shelf) object & arrayed it. No matter what I did, I could not get the constraints of the shelf to follow the other geometry when flexing.
Enough, time to go home for a cold one...
PeterJ
2003-08-01, 07:22 AM
Andrew
I played with a set of pigeon hole post boxes for a block of flats for what seemed like hours. I could get it to flex in one direction, i.e. 4 boxes in a row, or the other, i.e. 5 rows of 4, but I never could get it to flex properly as a system that would be completely controlled by me.
So, I could set overall dims, I could choose max box width and max box height and it would work out haw many boxes in each direction. I could go the other way too and specify an x y array of boxes. It all looked fine in elevation but when you ran into 3D one array would always be running away from the vertical (front back) reference plane.
It was a practice run and I ran out of time on that job. Drafted the bugger in the end.
P
aggockel50321
2003-08-01, 03:38 PM
Yikes!
A two-dimensional array. Go slowly. I think I used up all my patience for this week on the bookshelf...
Steve_Stafford
2003-08-02, 02:05 PM
I tried using the louver in my current project and the array doesn't work...some fins show up correctly, others not at all and if the sill height changes, some fins drop down.
So I tried the family in a stock template, same strange behaviour in all standard templates except the default.rft. In default it works correctly.
So, I decided to try my hand...made a louver fin...nested and array'd in my own louver family, insert...exactly the same behaviour. The array goes awry in all projects other than default.
Very strange, I'm wondering if there is a bug in the nested family array functionality? I'm curious if anyone else is seeing this?
beegee
2003-08-03, 02:04 AM
Hmmm,
the gnl tweaked version was working for me, I'll revisit it , soon as I get a chance.
beegee
2003-08-03, 07:45 AM
Andrew
I played with a set of pigeon hole post boxes for a block of flats for what seemed like hours. I could get it to flex in one direction, i.e. 4 boxes in a row, or the other, i.e. 5 rows of 4, but I never could get it to flex properly as a system that would be completely controlled by me.
P
As Andrewg says, a 2 dimensional array would be required. I had a play-around with it also, and my diagnosis is it ain'tpossible with our current technology.
Course, I'd be happy to be proved wrong.
beegee
2003-08-03, 08:08 AM
I tried using the louver in my current project and the array doesn't work...some fins show up correctly, others not at all and if the sill height changes, some fins drop down.
............
Very strange, I'm wondering if there is a bug in the nested family array functionality? I'm curious if anyone else is seeing this?
Q,
Works OK for me flexing in the family and also when inserted in a project :screwy:
I made the wall height in the family higher, cos that can create stuff-ups if flexed above the wall.
Note that this family was made from, and resides in a window template.
I'm posting it if you want to check it out.
Steve_Stafford
2003-08-03, 11:20 AM
Two images, your louver, one inserted in the default template the other in the commercial template. Two different results, yikes!
Definitely something strange happening....are you using the latest build? I am...
beegee
2003-08-04, 12:43 AM
Two different results, yikes!
Definitely something strange happening....are you using the latest build? I am...
Yikes is right.
I'm using build 20030716_1400 ( not 1429 , since 1400 was what the download gave me :? ). I did not reinstall content though, so my templates remain as was.
Sounds like support need to know about this.
Steve_Stafford
2003-08-04, 01:28 AM
Does that mean it did it for you too?
beegee
2003-08-04, 01:44 AM
Works fine for me. Template is based on defaultANZENU.rte. I havn't yet had time to try it with other templates.
I think it also worked for gnl, using a Euro template ( I imagine ). I'm not sure though if he tried it a project.
Sounds like the template is the most likely culprit.
Steve_Stafford
2003-08-04, 04:05 PM
Revit support filed a bug on this one, it is a problem with what level the imported family uses when there are other levelss below Level 1. I don't fully understand what the technical issue is, suffice it to say, Revit Support logged it.
If you are trying to work with nested parametric families and they "act out", you may be running into this issue. It happens when using the commercial default template as the basis for your project, what I submitted to Revit, and I've personally duplicated it in Residential-Default and the construction template too.
Hopefully, this will save someone else time if their attempts go astray.
Added link to Known Issues post relating to this: CLICK ME (http://www.zoogdesign.com/forums/phpBB2/viewtopic.php?t=864)
bmadsen
2003-08-04, 08:32 PM
Thanks for working this one to resolution (if not solution). Your efforts are much appreciated by all us lurkers on this thread.
You have saved me at least 16 hours of work and probably a week of worry.
Just wanted you to know that your work and discussion on these topics is a great contribution.
Steve_Stafford
2003-08-04, 09:47 PM
Thanks! I'll pass your note on to my boss :D
beegee
2003-08-04, 11:54 PM
Revit support filed a bug on this one, it is a problem with what level the imported family uses when there are other levelss below Level 1. I don't fully understand what the technical issue is, suffice it to say, Revit Support logged it.
Just to confirm this behaviour with other templates, I tried it the Construction Default ANZENU template , and got exactly the same wierd behaviour as Q. Some of the louvre blades appear in the level below the insertion level.
However, I am using that family successfully in a project with a custom template, essentially Default ANZENU, and its working on the top level of a 4 storey commercial building. Go figure !
Vincent Valentijn
2003-08-06, 09:25 AM
I have no problems with creating parametric arrays in families, once I had figured out the way to construct them. :) At least.. it only works if you keep them as simple as possible.. just adding something like a fillet-corner to a solid can mess up the family-object for no apparent reasons.. :cry: ouch..
anyway - I was just wondering, are you guys also experiencing -massive- generation-times for such arrayed family-objects? For example, I have made an elements-radiator that produces elements of a modular size following the length-parameter of this object. [using arrays and formulas] This is a great thing, but if I insert this family in a project it takes quite some processor-time to place the object or regen after I have altered one of the parameters.
~ what I want to know ~ does this have anything to do with my methods or is it simply an effect of the way Revit works? having to generate the object with these rather complex parametricly controlled solids...
beegee
2003-08-06, 09:28 PM
anyway - I was just wondering, are you guys also experiencing -massive- generation-times for such arrayed family-objects? .....in a project it takes quite some processor-time to place the object or regen after I have altered one of the parameters.
~ what I want to know ~ does this have anything to do with my methods or is it simply an effect of the way Revit works? having to generate the object with these rather complex parametricly controlled solids...
I have noticed a slight time lag when the parametric family has to recalc / regen, but nothing to get too excited about.
I have no idea if this is caused by my poor family building skills or by Revit, but I strongly suspect the former.
maxxue1756
2003-08-18, 03:45 PM
How about this!
beegee
2003-08-18, 09:42 PM
There is some problem with the constraints setupup in your file maxxue.
I havn't had time to delve into it . Have a look at the louvres posted above. ( There is apparently also a probelm with these, although they work OK in certain situations. Refer thread CLICK HERE (www.zoogdesign.com/forums/phpBB2/viewtopic.php?t=864)
maxxue1756
2003-08-19, 12:00 AM
There is some problem with the constraints setupup in your file maxxue.
I havn't had time to delve into it . Have a look at the louvres posted above. ( There is apparently also a probelm with these, although they work OK in certain situations. Refer thread CLICK HERE (www.zoogdesign.com/forums/phpBB2/viewtopic.php?t=864)
Thank you beegee!
I know this is an old thread, (they say the good things never die) but could you family people please tell me if the nested louvre blade was a generic wall based template which you made a window category or did you start with a window template?
How did you control the height of the blade to match it's position in the arrayed family Also can the depth of blade be controled?
beegee
2003-12-12, 02:31 AM
I know this is an old thread, (they say the good things never die) but could you family people please tell me if the nested louvre blade was a generic wall based template which you made a window category or did you start with a window template?
How did you control the height of the blade to match it's position in the arrayed family Also can the depth of blade be controled?
From memory, the louvres were made in a window family and the nested blade was generic. ( I'll check that when I get time )
The blade was arrayed vertically, with the top and bottom blades locked in postition to the frame and the array number controlled by a formula.
The depth of the balde can also be controlled if its nested aand that parameter is shared.
ford347
2006-10-14, 05:15 AM
Old subject, still a problem, at least with me. Try this one. Round louver gable end vent. Generic model wall based family. I've tried everything I can think of to some methods mentioned here and I cant' get it. I tried using a nested family, but I can't join geometry, so the vent looks terrible. Since you can't align the edge of a sweep or extrusion to a radius, I can't get the louvers to stay within the vent space. I've spent countless hours on this thing and I've decided it's not possible. Please someone tell me I'm wrong.
Josh
robert.manna
2006-10-14, 03:15 PM
I'm at home, so I can't easily open Revit files (not to mention I don't have 9.1 yet anywhere). I think you are right though. Based on your description, you are trying to array a horizontal blade within a circular wall penetration, and you want the louvers to adapt their length as needed based on the width of the circle at the point where the blade takes place. Since when you array an object there is no way to easily control any individual object, you can have them adapt. The way I see it the developers could add to bits of functionality (which may already be covered in this thread).
1.) Introduce the ability to give a radius or spline to a reference line. If reference lines could be splines and radii then when dealing with arrays, you could do a first and last array, and align/lock the ends of the 1st and last blades to your curving reference lines, therefore, as the objects array they should grow and follow the curving ref line/
2.) This might be a little easier for the developers. Make arrays smarter, more like arrays in a programming language. We can know how many objects are in an array (since we can define it) but we can't really know anything about the objects in an array. When you're programming the "object" in an array can know where it is in the array, ie is it first, second, fourth, tenth, etc. If it were possible for an object in a Revit array to know what its number is (in the array) as a variable then you could write a formula that, based on the number of objects, the spacing between the objects, and the radius of the circle the object could lengthen or shorten itself as needed. We can know everything right now, and do everything, except to extablish where in the array the object is. Being able to know where in an array an object is would lend huge functionality to the array tool, IMHO.
-R
dbaldacchino
2006-10-14, 03:45 PM
I cannot look at your family (will get 9.1 next week), but if you want your louver elements to fit within a circular shape, why not built a parametric void within your family to cut the excess from the blades? It shouldn't be terribly difficult.
ford347
2006-10-15, 01:52 AM
Thanks guys. Yeah, I tried the void, donut idea but couldnt' get it to re-size properly, simply because I'm learning, but Sdavis mentioned the same thing, so sounds like I need to go back to that and add some parameters to control the size of the void. I appreciate it. Let's me know I wasnt' going backwards at least!!
Josh
dbaldacchino
2006-10-15, 02:55 PM
If you have trouble making a full circle/donut parameteric, split it in two semi circles and treat it as two shapes. It might be easier.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.