Skip to main content

Kinetic Panel Folding | Rotating Panel



Family_Double-Folding Panel &
Detail Family Formula (Using [Length of Angle Bisector])

* Caution
1. Analysis Result , Number
– (b / 1') * (c / 1') : Drop the Number value to Foot Unit!! (This Method is used for Error messege “Inconsistent Unit”)
2. Analytical Alignment
3. Bisection Formula : https://www.proofwiki.org/wiki/Length_of_Angle_Bisector 




Syntax for Formulas

Formulas support the following arithmetic operations: addition, subtraction, multiplication, division, exponentiation, logarithms, and square roots. Formulas also support the following trigonometric functions: sine, cosine, tangent, arcsine, arccosine, and arctangent.

The valid formula abbreviations for arithmetic operations and trigonometric functions are
Addition +
Subtraction -
Multiplication *
Division /
Exponentiation ^: x^y, x raised to the power of y
Logarithm Log
Square root sqrt
Sine sin
Cosine cos
Tangent tan
Arcsine asin
Arccosine acos
Arctangent atan
e raised to an x power exp
Absolute Value abs

You can enter integers, decimals, and fractional values in formulas, using normal mathematical syntax, as shown in the examples below:
Length = Height + Width + sqrt(Height*Width)
Length = Wall 1 (11000mm)+ Wall 2 (15000mm)
Area = Length (500mm) * Width (300mm)
Volume = Length (500mm) * Width (300mm) * Height (800 mm)
Width = 100m * cos(angle)
x = 2*abs(a) + abs(b/2)
ArrayNum = Length/Spacing

Parameter names in formulas are case sensitive. For example, if a parameter name begins with a capital letter, such as Width, you must enter it in the formula with an initial capital letter. If you enter it in a formula using lower-case letters instead, for example, width * 2, the software will not recognize the formula.

Note: It is recommended that you do not use a dash (-) when naming parameters.
You can use conditional statements in formulas to define actions in a family that depend on the state of other parameters. With conditional statements, the software enters values for a parameter based on whether a specified condition is satisfied. Conditional statements are useful in certain circumstances; however, they make families more complex and should be used only when necessary.

For most type parameters, conditional statements are unnecessary because the type parameter itself is like a conditional statement: If this is the type, then set this parameter to a specified value. Instance parameters are a more productive place to use conditional statements, particularly when they are used to set a parameter that does not vary continuously.

Syntax for Conditional Statements

A conditional statement uses this structure: IF (<condition>, <result-if-true>, <result-if-false>)

This means that the values entered for the parameter depend on whether the condition is satisfied (true) or not satisfied (false). If the condition is true, the software returns the true value. If the condition is false, it returns the false value.

Conditional statements can contain numeric values, numeric parameter names, and Yes/No parameters. You can use the following comparisons in a condition: <, >, =. You can also use Boolean operators with a conditional statement: AND, OR, NOT. Currently, <= and >= are not implemented. To express such a comparison, you can use a logical NOT. For example, a<=b can be entered as NOT(a>b).

The following are sample formulas that use conditional statements.
Simple IF: =IF (Length < 3000mm, 200mm, 300mm)
IF with a text parameter: =IF (Length > 35',"string1", "string2")
IF with logical AND: =IF ( AND (x = 1 , y = 2), 8 , 3 )
IF with logical OR: =IF ( OR ( A = 1 , B = 3 ) , 8 , 3 )
Embedded IF statements: =IF ( Length < 35' , 2' 6" , IF ( Length < 45' , 3' , IF ( Length < 55' , 5' , 8' ) ) )
IF with Yes/No condition: =Length > 40 (Note that both the condition and the results are implied.)
Examples of Conditional Statement Usage
Typical uses for conditional statements in formulas include calculating array values and controlling an element뭩 visibility based on a parameter value. For example, you can use conditional statements to
Prevent an array parameter from taking a value less than 2.In Revit Architecture, arrays can only have an integer value of 2 or greater. In some situations, it may be useful to create a conditional formula that maintains an array parameter of 2 even if the calculated value is 1 or 0. With such a formula, if the calculated array value is 2 or greater, the formula retains the value. However, if the calculated value is 1 or 0, the formula changes the value to 2.
Formula: Array number = IF (Arrayparam < 2, 2, Arrayparam)
Make muntins visible only when the number of window lights is greater than 1.For example, if you have a Lights parameter that you want to use to control the visibility of muntin geometry, you can create a Yes/No parameter like MuntinVis, and assign it to the Visible parameter on the Properties palette for the muntin geometry. Because the MuntinVis parameter is a Yes/No (or Boolean) operation, both the condition (IF) and the results are implied. In this example, when the condition is met (true), the MuntinVis parameter value is selected, and the muntin geometry is visible. Conversely, when the condition is not met (false), the MuntinVis parameter is cleared, and the muntin geometry is not visible.
Formula: MuntinVis = Lights > 1

Popular posts from this blog

Scheduling | Managing Schedule using Dynamo

Schedules on Sheets This node will query all schedules in your project and create two lists. One list will contain all schedules that are currently placed on sheet(s) and one list with schedules that have not yet been placed on sheet(s). Keep in mind that Revision Table built into a Titleblock is really a schedule and will display on the list of schedules on sheets. It might even create more than one instance of such. Schedule Appearance This node allows you to modify schedule appearance settings. Due to my limited Revit API knowledge for now you can only override Title, Header and Body Text type by feeding it an id of a Text Type that you want to use. Use, Get Text Note Type by Name from the archi-lab package to get the appropriate text style. Schedule Formatting This node will allow you to control schedule formatting. Just like in the Revit UI you can control some basic visibility settings per parameter (column) in a schedule. Parameter inputs are: Schedule – thi

Executive | Kinetic | Al-bahar Tower Open Proportion Controlling

1. Extracting 'Panel Instance Value' & 'SunSetting Instance Value', Albahar_SunScript.dyn 2. South View, 3D View, Shadow View 3. In Case of Adjusting to semi-Sphere Order of Albahar_SunScript 1. Make Family 'Albahar_Panel.rfa' 2. Start with 'Mockup-Panel.rfa' or 'Mockup-Panel_Origin' (Upload Panel family) 3. Open Dynamo API 'Albahar_SunScript.dyn' ====================================================== 4. According to the Sun Location, Panel will be changed the feature by the opening proportion  * Opening Proportion = Normalized_Curve_Parameter

SAP2000 | SAP2000-v16.1.1 & Dynamo-v0.7.5

1. SAP2000 - Bounding Box Algorithm  2. SAP2000 - Bounding Box Model 3. SAP2000 - ShellStructure - Algorithm 4. SAP2000 - ShellStructure - Model 5. SAP2000 - SpaceStructure - Algorithm 6. SAP2000 - SpaceStructure - Model 7. SAP2000 - ReadDoam + Decomposition 8. SAP2000 - ReadShell + Decomposition 9. SAP2000 - RunAnalysis-ReadResult 10. SAP2000 - Read_Edit_AddGroup  11. SAP2000 - Read_Edit_AddLoadCase Overview DynamoSAP is an open-source project and is currently available on Dynamo’s package manager . We developed the project in C# using Visual Studio, and tested it with Dynamo 0.7.5 and SAP2000 version 16. The package prescribes a few common workflows, which are outlined in the package’s sample files. The library provides a wide range of opportunities for automation of typical tasks in SAP, such as: a. Creating a structural model. The package allows users to generate structural members by using th