Presentation on theme: "SE427-1: The IF's of Revit® Ken Murphy BIM Manager, Thornton Tomasetti Inc. Image courtesy of Hobart, Yañez, Ramos, Maguey, and Martínez."— Presentation transcript:
SE427-1: The IF's of Revit® Ken Murphy BIM Manager, Thornton Tomasetti Inc. Image courtesy of Hobart, Yañez, Ramos, Maguey, and Martínez
About me Corporate BIM Manager for Thornton Tomasetti Structural Engineering firm with over 500 staff Architectural Technology graduate from DIT Dublin, Ireland Autodesk user since 1993 (AutoCAD 11 for DOS)
Key Learning for this class: What’s ‘IF’ all about? How and where IF statements can be used? Tips & Best Practices Examples: 1. Concrete Column Family with Hold / Cardinal Point 2. Embedded “Error Message” in framing family 3. Steel Embed Plate with nested & arrayed Shear Stud 4. Quantity Schedule in project using IF Statements 5. Using Filters to visually data mine the model
What's ‘IF’ all about: NO!
What's ‘IF’ all about: Subtle area of Revit that is not documented in depth. Can extend the capabilities of many schedules and families. No need for API programming etc. to use these capabilities.
What's ‘IF’ all about: The basics of IF statement syntax IF ( something, then do this, or else do this )
What's ‘IF’ all about: Families and Schedules in Revit can contain Conditional ‘IF’ statements These are added as formulae inside parameters in Families In Schedules they are added as “Calculated Values”
What's ‘IF’ all about:
Quick examples of IF’s DEPTH parameter driven by IF statement based on LENGTH
What's ‘IF’ all about: Quick examples of IF’s YES/NO parameter based on other YES/NO Using ‘NOT’ to automatically apply a YES/NO condition
What's ‘IF’ all about: Quick examples of IF’s YES/NO parameters
What's ‘IF’ all about: Quick examples of IF’s TEXT parameter driven by IF statement based on LENGTH TEXT parameter based off many IF conditions
What's ‘IF’ all about: Quick examples of IF’s COST parameter driven by IF based off LENGTH and YES/NO parameter for FIREPROOFING AND statement
What's ‘IF’ all about: Quick examples of IF’s OR statement Calculate Slope / 12 based on angle
What's ‘IF’ all about: Quick examples of IF’s Multiple IF statements using parameters of LENGTH, TEXT, YES/NO and CURRENCY type.
What's ‘IF’ all about: Doing it the wrong way (Cardinal Hold Point Family)
Tips & Best Practices: Parameter names are always case sensitive, make sure to type them exactly or IF statements will not work!
Tips & Best Practices: Avoid using a dash ‘-‘ or hyphen in parameters names (Revit will think you are trying to subtract something in the middle of your statement)
Tips & Best Practices: Remember that mixed units be converted to a common form to be able to calculate a parameter, e.g. multiplying LENGTH X AREA requires that you divide one of the values by 1. Weight = Volume / 1 * 490 (490 represents the density of steel)
Tips & Best Practices: Avoid naming a parameter as a number, as this will cause errors in your statements. If you really want to name a parameter as a number, first create the parameter as a text name, e.g. “EIGHT”, then create the conditional IF statement referring to that parameter, and then rename the parameter called “EIGHT” after you have successfully made the IF.)
Tips & Best Practices: It is currently not possible to concatenate parameter values to combine text or numbers. The best solution to this if you want to display the concatenated information in a Label is to make multi- parameter labels with the different values shown.
Tips & Best Practices: If you want a TEXT parameter to contain no characters or just be blank you can use the format “ ”
Example 1: Concrete Column with Cardinal / Hold Point:
Example 2: Embed Plate with nested Shear Stud array:
Example 2: Embedded Error message:
Example 4: Schedule with Calculated Values
Example 5: Using Filters to visually mine data from the model:
Summary: IF’s can extend your model in many ways Geometry, numbers, arrays, lengths, angles etc can all be driven by IF’s Possibilities are endless for conditional statements Schedules can also be a powerful tool for QA or calcs Filters are a great way to navigate conditions
T h a n k Y o u ! Please complete the feedback for this class at the kiosks
Now revit is looking for a number yet your units when for instance going cost*area is m �.... Try this cost*(Area/1) This will effectively remove the units from the value IF (PANEL TYPE = 1, WIDTH * 2, 0) If is implied in Yes/No parameters. All you need is: Check Box Parameter = Void DTR >0‘ if(COST_PER_POUND < 40, "F", if(COST_PER_POUND < 100, "D", if(COST_PER_POUND < 200, "C", if(COST_PER_POUND < 250, "B", if(COST_PER_POUND < 300, "A", "FAIL"))))) if(Q9_OVERRIDE, "HIDE", if(and(Q9_AGREE, Q9_RELEVANT), "Red", (if(and(Q9_AGREE, not(Q9_RELEVANT)), "Blue", "Green")))) not(or(STEEL GRADE A, STEEL GRADE B))
You can use numeric 'text' in formulae with a bit of clever tinkering. Rename your 99 parameter to val1 and insert it in your formula. then rename your val1 parameter back to 99. voilà you have a numerically named parameter in your formula.... We calculated the cross sectional area Formula |3.14*(bar diameter^2)/4| We then figured how many 20' bars we needed with formulas Created a linear feet of bar needed with formulas Then for tonnage we used the following formula |(((cross Sectional Area/144cf)*Linear Feet of Bar Needed*144)*490)/2000