Aller au contenu
Revit – Les formules

Revit – Les formules

Généralités

Dans les formules, les noms de paramètres sont sensibles à la casse. Ainsi, si un nom de paramètre commence par une majuscule (par exemple, Largeur), vous devez l’écrire de la même manière dans la formule. Si vous utilisez une minuscule dans la formule (par exemple, largeur * 2), la formule ne sera pas reconnue.

Il est aussi recommandé de ne pas utiliser un tiret (-) lors de l’attribution d’un nom de paramètre. Celui-ci sera considéré comme un opérateur de soustraction et la formule ne sera pas reconnue. Vous pouvez malgré tout contourner le problème en ajoutant des crochets :

Exemple : = Largeur min-max
Solution : = [Largeur min-max]

Enfin, un nom de paramètre ne pourra pas porter le même nom qu’un opérateur. Par exemple vous ne pourrez pas valider la création d’un paramètre qui aurait pour nom abs car il se réfère à une formule valide pour Revit (abs() : valeur absolue).

Opérateurs

Addition +

Soustraction

Multiplication *

Division /

Exposant

X puissance Y
Y = X ^ Y

e

Constante mathématique e (=2,71828…) élevée à la puissance X.
Equivaut a e^x

exp()

π – Pi

pi()

Circonférence d’un cercle = pi() * (Rayon * 2) 

Aire d’un cercle = pi() * Rayon² ou pi() * Diamètre

Racine carré

Valeur fixe = sqrt(999)
Paramètre = sqrt(Largeur)
Formule = sqrt(Largeur + Hauteur)

Logarithme

En mathématiques, le logarithme de base b d’un nombre réel strictement positif est la puissance à laquelle il faut élever la base b pour obtenir ce nombre.

Par exemple, le logarithme de 1000 à base 10 est 3, parce que 10 doit être multiplié par trois pour donner mille : 10 x 10 x 10 égale 1000

log(1000)

Forcer les paramètres de type oui/non

Forcer le Oui = 1 < 2
Forcer le Non = 1 > 2

Conditionnel

IF (<condition>, <resultat-si-vrai>, <resuItat-si-faux>)

Comparaison

< Strictement plus petit que
> Strictement plus grand que
= Egal
not(A>B) A inférieur ou égal à B
not(A<B) A supérieur ou égal à B


AND Toutes les conditions sont remplies

OR L’une des conditions est remplie


NOT
La déclaration est fausse

Comparaison et conditionnel

IF & AND : if ( and ( x = 1 , y = 2) , 8 , 3 )

IF & OR : if ( or ( A = 1 , B = 3 ) , 8 , 3 )

IF imbriquées : if (Longueur < 35 mm , 35 mm , if (Longueur < 50 mm , 50 mm, Longueur))

Valeur absolue

abs(-x)

Trigonométrie

RAPPEL
sin α = Opp / Hyp
cos α = Adj / Hyp
tan α = Opp / Adj

Valeurs connues : Opp + Adj
Hyp = sqrt(Opp² + Adj²)
α = atan(Opp / Adj)
β = atan(Adj / Opp)

Valeurs connues : Opp + Hyp
Adj = sqrt(Hyp²- Opp ²)
α = asin(Opp / Hyp)
β = acos(Opp / Hyp)

Valeurs connues : Adj + Hyp
Opp = sqrt(Hyp² – Adj²)
α = acos(Adj / Hyp)
β = asin(Adj / Hyp)

Valeurs connues : Hyp + α
Opp = Hyp * sin(α)
Adj = Hyp * cos(α)
β = 90° – α

Valeurs connues : Hyp + β
Opp = Hyp * cos(β)
Adj = Hyp * sin(β)
α = 90° – β

Valeurs connues : Opp + β
Adj = Opp * tan(β)
Hyp = Opp / cos(β)
α = 90° – β

Valeurs connues : Adj + α
Opp = Adj * tan(α)
Hyp = Adj / cos(α)
β = 90° – α

Valeurs connues : Opp + α
Adj = Opp / tan(α)
Hyp = Opp / sin(α)
β = 90° – α

Valeurs connues : Adj + β
Opp = Adj /tan(β)
Hyp = Adj / sin(β)
α = 90° – β


Conversion d’un angle (degré) en pente (%)

Plages

Valeurs de départ :

  • valeur_utilisateur
  • valeur_min
  • valeur_max

vaIeur_actuelle = if (valeur_utilisateur < valeur_min, valeur_min, if (valeur_utilisateur > valeur_max, valeur_max, valeur_utilisateur))

Arrondi

round(x)

round(3.1) = 3
round(3.5) = 4

roundup(x)
roundup(3.1) = 4

rounddown(x)
rounddown(3.7) = 3

A bientôt. AGOBIM.

8 commentaires sur “Revit – Les formules”

    1. Oui, tout dépend pour qu’elle raison laisser un message. Tu peux créer une annotation et rajouter une propriété de visibilité, en fonction d’une condition que tu aura choisis.

  1. Est-il possible de lié un paramètre type « nombre entier » avec une longueur ?

    Exemple : A (longueur) = 5.6mm, B (Nombre entier) = roundUp(A)

    Je n’arrive pas a me débarrasser du soucis d’unités.

  2. Bonjour,

    Est-ce possible de récupérer la valeur de l’échelle de la vue en cours afin de l’utiliser dans les calculs de la famille?

    Merci

      1. Bonjour,

        Pour faire suite à la question de Marcel Goulet au sujet de l’obtention de l’échelle courante de la vue, vous avez préciser qu’il fallait procéder via Dynamo seulement. Je suis familier avec Dynamo, mais je n’arrive pas à comprendre comment obtenir le résultat dans la famille pour que le chiffre soit utiliser dans la vue.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *