AutoCAD : Centrer un réseau d'objets dans un bloc dynamique

J’essaie de créer un bloc dynamique dans AutoCAD pour une table avec des chaises. Je souhaite qu’en augmentant la largeur de la table, une deuxième chaise s’ajoute, mais que les deux chaises restent centrées sur la table. Mon bloc actuel n’arrive pas à maintenir ce centrage.

Pour centrer dynamiquement un réseau d’objets, comme des chaises, dans un bloc AutoCAD en fonction d’un paramètre de distance, la méthode la plus efficace consiste à utiliser une table de consultation double (double lookup) pour lier les paramètres et déclencher une action de déplacement sur l’objet de base avant l’application du réseau. Cette solution a été proposée par Howard Walker.

Voici la démarche pour y parvenir :

  1. Préparer le bloc de base : Créez votre bloc dynamique avec la table et une seule chaise. Assurez-vous que la chaise est positionnée de manière à pouvoir servir de référence pour le réseau.
  2. Ajouter les paramètres nécessaires :
    • Insérez un paramètre linéaire (Distance) pour contrôler la largeur de votre table.
    • Ajoutez un paramètre de réseau (Array) à la chaise, en le liant au paramètre linéaire de largeur. Définissez l’incrément de distance pour le réseau (par exemple, la largeur d’une chaise plus un espacement).
  3. Créer une table de consultation pour le nombre de chaises :
    • Ajoutez une action de consultation (Lookup Action) au bloc.
    • Dans la table de consultation, définissez les règles pour le nombre de chaises en fonction de la largeur de la table. Par exemple :
      • Si la largeur est inférieure à 1.8 unités, le nombre d’éléments du réseau est 1.
      • Si la largeur est égale ou supérieure à 1.8 unités, le nombre d’éléments du réseau est 2.
  4. Implémenter la table de consultation double pour le centrage :
    • Ajoutez une action de déplacement (Move Action) à votre bloc. L’objet à déplacer est la chaise de référence (celle qui sera ensuite dupliquée par le réseau).
    • Créez un second paramètre de consultation (Lookup Parameter) et liez-le au paramètre linéaire de la largeur de la table.
    • Dans la table de consultation double associée à ce second paramètre, définissez les valeurs de déplacement pour la chaise de référence :
      • Pour une largeur inférieure à 1.8 unités, le déplacement de la chaise de référence est de 0.
      • Pour une largeur égale ou supérieure à 1.8 unités, le déplacement de la chaise de référence est d’une valeur négative (par exemple, -0.4 si la chaise doit reculer de 0.4 unités pour centrer le réseau de deux chaises).

Résultat attendu : Lorsque la largeur de la table atteint le seuil défini (par exemple, 1.8), la chaise de référence se déplace automatiquement. Le réseau se forme alors autour de cette nouvelle position, garantissant que les deux chaises restent parfaitement centrées par rapport à la table, même après l’ajout de la deuxième chaise.