So i finally figure it out! This is it.
1) Create a family with reference lines,or planes. Dimension the planes, and add geometry to them, and constrain the geometry to the reference lines. Then add Paramters to the dimensions.
2)Set all the parameters to instance parameters (so they will change with only one type).
3) Go to the application button,(the big "R"), and export family types to a text file.
4)open the text file in microsoft excel. with the openning wizard window make sure you open it as a "delimited" for the first window, and select "comma" for the second, then finish.
This organizes the text file into easy to read rows and collumn of all your parameters.
5) type in additional values for your parameters.
6) save this as a "comma-delemited" file or a .CVS file in the same location as the saved family it came from.
7)Open a windows explorer and change the file extension of the .CVS file to a .TXT file.
then go back into excell and reopen and repeate step 4-6 with the text file you just created.
***make sure everything is in the same folder.***
9)Back in the family, go to the family types window, and click "manage" where it says Lookup Tables, and import the .CVS file into the family.
10)create a new TEXT parameter called Lookup Table Name, and in the value collumn tpe(or copy/paste), the exact name of the .CVS file. This parameter we are going to use to reference in our formulas for the other parameters.
*Now this is the part that i was stuck on for a litte bit.
In the formula column of the parameter you wish to report a value from the lookup table you must type a very specific formula for Revit to know what you are trying to accomplish.
The formula looks like this:
size_lookup(Lookup Table Name, "Value 1", Value 2, (Value 3,4,etc.))
Lookup Table Name= whatever you called your text parameter, the one that reference the lookup table .CSV file
Value 1= The Coloumn you are trying to report from in the CSV file if the size changes in your family(more than likely diameter). This MUST also ALWAYS be column "B" of the excell file, that means you have to move the base value you want to control everthing else into collumn B of the excell file, (again usually diameter).
Value 2= this is the Default value that is used is if the row you designate does not have a value for it.(most likely the default Diameter parameter), but you must type the parameter name, no actual Values.
Value 3,4,5,...etc= This, or these, values provide what Row to use based on the input value, when used, so Revit knows which row to reference. This,These, values must be enclosed by parentheses.
So when i finished with my "Total length or A" parameter's formula it looked like this:
size_lookup(Lookup Table Name, "Total Length or A", Diameter, (Diameter))
Its saying, " go to look up table parameter,(with the value of the actual CVS file), and look for colunm called "Total Length or A", then if it doesn't have a value reference row called Diameter, and if it Does What row do i want to reference, well Diameter preferably. Since i only needed to reference one size,my diameter, i only have one value for the fourth slot in my formula, or what i called it above, my Value 3.
11) fill out all the formulas for the parameters you want to be used by the lookup table function in this matter.
12)Load into a project and test it out!
P.S.- What i did just to double check my constraints and formula, was i made multiple types at first and change the values directly in the family type window to make sure everything was possible without the family telling, "NO!". then deleted my types when i knew everything was good, and put in the same values in the excell file.
P.P.S- Type catalogues are much easier than lookup tables. =). Type catalogues you jst make additional types and do steps 3, 4, 6, and 7. But the only thing they do is give you a choice f what types you want to load into your project.
I attatched the family i made for anyones reference, its not too pretty, but it works! lol.
|