Bonjour,
Voila un exercice sympa à faire. Ce n'est pas compliqué, par contre, il faut de la méthode.
Malheureusement, je n'ai actuellement pas de licence Revit active pour vous donner un exemple, alors je vais décrire la méthodologie qu'il faut mettre en oeuvre tout en essayant de rester clair et vaguement concis (je ne suis pas connu pour mes messages courts
)
I - LES CONTRAINTES
- Le réseau peut intégrer ou non un bloc PMR
- Si le réseau intègre un bloc PMR, celui-ci se retrouve en début de ligne
- La largeur du bloc PMR est de 2.000m minimum et de 3.000m maximum (au delà, il faut rajouter un bloc standard et diminuer la largeur du bloc PMR)
- La largeur des blocs standard est fixée à 1.000m (Si tous les paramètres sont interdépendants, vous obtenez une erreur de référence circulaire, le serpent se mord la queue, et ça pique !)
II - LES FAMILLES A CREER
Les familles listées ci-dessous ne concernent que le réseau paramètrique. Vous devez ajouter toutes les autres familles nécessaires comme les éléments de quincaillerie, les symboles d'annotation etc.
- Une famille pour le bloc PMR (gabarit de famille : modèle générique, mobilier, appareil sanitaire)
- une famille pour le bloc standard (gabarit de famille : idem)
- Une famille globale pour l'ensemble des blocs sanitaires, qui intègre les deux autres familles (gabarit de famille : idem)
III - LES PARAMETRES ET LES REFERENCES DES FAMILLES
Les paramètres listés ci-dessous ne concernent que le réseau paramètrique. Vous devez bien sûr ajouter tous les autres paramètres nécessaires en fonction de l'utilisation des familles, comme les paramètres de matériau, les niveaux d'affichage, les marques et fabricants, les classes IFC etc.
Les noms de paramètres sont donnés à titre indicatif. Vous êtes libre de choisir ceux qui vous conviennent. J'ai volontairement choisi des noms très explicites pour aider à la compréhension de tout mon charabia.
Tous les paramètres sont des paramètres d'occurrence. Vous pouvez créer des paramètres partagès pour ceux qui doivent figurer dans les nomenclatures, les étiquettes, être extraits vers un tableau Excel ou gérés par les compléments OBDC (bases Access, SQL, etc.).
Bloc PMR
- Un paramètre de type Longueur pour piloter la largeur totale.
- Un plan de référence du côté fixe du bloc PMR (début du réseau)
Bloc standard
- Pas de paramètre spécifique au réseau
- Un plan de référence du côté fixe du bloc (début du réseau)
Blocs sanitaires
- Plans de référence de base
- Un plan de référence pour définir le début du réseau
- Un plan de référence pour fixer l'entraxe entre deux blocs sanitaires standard
- Un paramètre de type Oui/Non pour piloter la visibilité du bloc PMR (appelons-le "Bloc PMR")
- Un paramètre de type Longueur pour piloter le point de départ des blocs standard en fonction de la présence ou non du bloc PMR (appelons-le "Position blocs standard")
- Un paramètre de type Longueur pour piloter la largeur du bloc PMR (appelons-le "Largeur Bloc PMR")
- Un paramètre de type Longueur pour piloter la longueur totale du réseau (appelons-le "Linéaire")
- Un paramètre de type Nombre entier pour piloter le nombre théorique de blocs standard à inclure dans le réseau (appelons-le "Nombre blocs standard théorique")
En complément, il va falloir créer ce que j'appelle des paramètres de contrôle (ce n'est pas un nom officiel). Il s'agit de paramètres qui vont interdire à Revit de générer des résultats indésirables :
- Un paramètre de type Nombre entier pour interdire de n'avoir qu'un seul élément dans le réseau et définir le nombre réel de bloc, car Revit interdit de créer un réseau paramètrique avec un seeul objet (appelons-le "Nombre blocs standard")
- Un paramètre de type Oui/Non pour contrôler s'il est possible ou non de mettre en place un bloc PMR (appelons-le "Bloc PMR contrôle")
- Un paramètre de type Oui/Non pour afficher un seul bloc standard, pour les petits espaces (appelons-le "Bloc standard unique contrôle")
- Un paramètre de type Oui/Non pour afficher un réseau de blocs standard, pour les petits espaces sans PMR ou les grandes distances (appelons-le "Bloc standard réseau contrôle")
IV - CREER DES RELATIONS ENTRE LES PARAMETRES DE LA FAMILLE FINALE
Voici les formules à appliquer pour chaque paramètre :
Menu Type de famille
Contraintes
Nombre blocs standard théorique = if(and(Bloc PMR contrôle, Linéaire > 2000 mm), rounddown((Linéaire - 2000 mm) / 1000 mm), rounddown(Linéaire / 1000 mm))
Nombre blocs standard = if(Nombre blocs standard théorique < 2, 2, Nombre blocs standard théorique)
Bloc PMR contrôle = and(Bloc PMR, not(Linéaire < 2000 mm))
Bloc standard unique contrôle = or(and(Bloc PMR, not(Linéaire < 3000 mm)), and(not(Bloc PMR), Linéaire < 2000 mm))
Bloc standard réseau contrôle = or(and(Bloc PMR, not(Linéaire < 4000 mm)), and(not(Bloc PMR), not(Linéaire < 2000 mm)))
Construction
Bloc PMR (pas de formule, c'est un paramètre modifiable par l'utilisateur)
Cotes
Linéaire (pas de formule, c'est un paramètre modifiable par l'utilisateur)
Largeur bloc PMR = if(and(Bloc PMR, Linéaire < 3000 mm), Linéaire, if(and(Bloc PMR, Linéaire > 3000 mm, not(Linéaire < 4000 mm)), Linéaire - Nombre blocs standard théorique * 1000 mm, if(and(Bloc PMR, Linéaire > 4000 mm), Linéaire - Nombre blocs standard * 1000 mm, 2000 mm)))
Position blocs standard = if(Bloc PMR contrôle, Largeur bloc PMR, 0 mm)
Procédure détaillée
Comme c'est long a expliquer à l'écrit, vous trouverez une vidéo dans le lien suivant :
Méthode construction des familles
J'ai fait un montage "à la va-vite", donc je n'ai rien mis en forme ni réduit la vitesse de lecture. Je vous invite donc à réduire la vitesse de lecture sur YT.
J'avais prévu une chaine pour la formation au BIM et toutes ces sortes de choses... fallait bien commencer quelque part