Hi there,
I was wondering what is the best way to do this:
I have a tag which includes three different parameters, one of them being an Angle parameter. The item that I am tagging not always has value for the Angle parameter so by default the tag shows 0°. I would like the 0° to not be visible but the rest of the angles should show up in the tag.
Since the tag has other parameters as part of it, I would like to keep the Angle parameter as part of the tag because that way the information adjusted itself to be aligned correctly regardless of the length of the information shown.
Also, I know I could build two different types of tags where one will be applied to the items with Angle=0° and the other type to Angle>0°. This is option will work but will make my family tag double the types amount which is not to be ignored.
Looking forward to hear your ideas.
Thanks!
Gelöst! Gehe zur Lösung
Gelöst von TripleM-Dev.net. Gehe zur Lösung
@cristinaroldan wrote:This is option will work but will make my family tag double the types amount which is not to be ignored.
I don't known what you mean by the above statement. But, one Tag Family with 2 Family Types; one with Angle Label visible and one without Angle Label visible, is how I would do it.
Thanks for your response.
I meant that the tag family already have a few types. All of the types have the angle parameter on it but the labels text size and graphics are different for each type since the drawings we are using the tags at have different scale, detail level, etc. So for each one of these types, I will have to create another type with no angle parameter on it. Hope this makes more sense ![]()
The original question was how to create a Tag where the "Angle" Label/Value would not be shown if the "Angle" Value is "0". Did I misread?
Not at all! that was my question
but I wanted to see if there was any other way of doing instead of creating new tag types.
You can set up a visibility parameter for the label in the tag that reports the angle parameter with an if statement such that for angle=0° the label is not visible. Unfortunately this would hide the label whether the parameter is empty (null value) or equal to 0.
Unfortunately, I don't think there is a Revit logical statement that can distinguish between a null value and a zero value. Here is a Revit Idea submission which discusses how to do this for schedules and filters but comes to the conclusion that it is not available for logical operations:
Yes/No Null Value Equivalent to No in Conditional Statement
-luc
Hi,
Something like below, 1 TagType different appearances:
I added multiple fields to display the options.
I've added 3 parameters to the CW panels, below a breakdown of what the Tag does:
A: Reads the Shared text parameter "testvalue1"
B: Reads the Shared length parameter "Testvalue1"
C: Reads the Shared angle parameter "TestAngle"
D. Formula in the Label, as text datatype, Evals 2 angle values (90 and 120), and displays the angle value as text or a empty string.
(If this post is related to one of the previous posts, you only needed to eval 2 angles, correct...?)
E: Formula in the Label, as angle datatype, for this eval >0, if so then display 'TestAngle' else a unused empty shared angle parameter. For this I added the shared angle parameter 'TestAngleEmpty', make sure it's not added in any family or in the project, it MUST never be used else this formula won't work as designed!. That is that we actually don't want Revit to find the shared parameter and thus display "?", see below how to get rid of the visible "?" value.
Below you can see the Tag Family label with the 2 formulas.
For this to display properly (= to not show a "?" for the angle formulas), the Label with the formula needs to also contain a values that exists. That's how the "?" can be avoided.
Another way to avoid the "?" is to add a (visible) detailline or something alike to the tag family.
I hope it's clear how the Tag is built?
I've added the sample project file so you can see/test for yourself.
- Michel
Sie finden nicht, was Sie suchen? Fragen Sie die Community oder teilen Sie Ihr Wissen mit anderen.