There are times when I want to have something's distand be relative to another dimension. This currently requires assigning both to labels.
But then the user can change those labels.
For example:
Dimension A represents the length of Side A. I want Side B to be 1.5 x Dimension A. And I don't want the user changing Side B.
There might be a time where I want to let the user SEE the label for Side B (but be unable to change it) and there might be a time where I don't even want them to see it either.
Don Ireland
Engineering Design Technician
Hi, Here my trick to have a read-only parameter:
Create a yes-no parameter called: Lock
Create your length parameter: Size A
Create your length parameter: Size B with the following formula : if(Lock, Size A*1.5, Size A*1.5)
This way the Size B parameter will be greyed out and read-only.
To hide a parameter there is another post explaining it : Family parameters
Hope this help! Mario
Thanks I found the thread you mentioned (at least I think it's the one).
http://forums.autodesk.com/t5/Autodesk-Revit-MEP/Family-parameters/td-p/3567894
It links to a blog entry (http://aectechtalk.wordpress.com/2012/07/12/hiding-revit-family-parameters-in-a-project/) that explains it fairly well. But it requires using shared parameters.
The parameters I'm dealing with won't/shouldn't exist anywhere else. Is there anyway to do this WITHOUT using shared params?
And assuming for a minute that I DO go that route, what happens if the user attaches a DIFFERENT shared params file to the project? Will my params be "lost"?
Don Ireland
Engineering Design Technician
I don't know a way to hide family parameter other then shared parameter!
But,the shared parameter will be loaded and part of your family, it doesn't matter which shared parameter file linked to your project when you use the family.
Also, I tried the method you suggested and it worked. BUT it created a new parameter that didn't really do anything. If I turn it off, nothing changes. And I really didn't want the user to have the option of UNLOCKING it anyway.
SO.....
This is the forumla I entered for Side B: =if(1=1,Side A *1.5, Side A * 1.5)
This way there's no extra param to create and the if statement is going to evaluate to true no matter what.
Don Ireland
Engineering Design Technician
This tip was what I was looking for also, many thanks.
A slight enhancement - the formula can be:
For Side B: =if(1=1,Side A *1.5, 0)
This saves copying or re-typing the "Side A*1.5" formula again. As referred to in the prior post, there is no way the statement can be false (ie. 1=1 always - at least in Revit's mathematical universe). Saves typing mainly with lengthy parameter names or complicated formulas.
Can't find what you're looking for? Ask the community or share your knowledge.