Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 28/09/2011 dans Messages

  1. Bonjour, je me suis un peu cassé la tête sur le sujet. Du coup je vous transmet ce qu'il en est sorti. Pour commencer, j'ai fouillé dans les exemples fournis par autocad et j'ai pris : c:\program files\Autocad 2007\sample\dynamic blocks\Architectural - Metric.dwg A l'intérieur, il y a un bloc nommé : Arbres - Métrique que j'ai inséré dans un fichier. (setq e (entlast)) (setq e (vlax-ename->vla-object e)) puis, pour voir ce que la variable e à dans le ventre (vlax-dump-object e) ce qui m'affiche Mais, a priori, rien qui permettrait de bricoler les paramètres du bloc dynamique Allons voir plus loin : (setq dbp (vla-getdynamicblockproperties e)) qui nous renvoie un variant puis : (setq dbp (vlax-variant-value dbp)) pour avoir une safearray ensuite : (setq dbp (vlax-safearray->list dbp)) qui nous donne ça commence à devenir intéressant puisqu'on vient de trouver la liste des paramètres du bloc dynamique. En l'occurrence, il n'y a qu'un seul paramètre, qu'on peut extraire avec car. Sinon, s'il y a plusieurs paramètres, on peut envisager d'utiliser un foreach pour les passer en revue. Donc, je prend le premier élément de la liste (setq bp (car dbp)) puis j'en fais un dump (vlax-dump-object bp) Il y a l'air d'y avoir tout en stock : la liste des valeurs admises par exemple : (setq ListeAdmis (vlax-safearray->list (vlax-variant-value (vla-get-AllowedValues bp)))) c'est une liste de variants, dont on peut récupérer les valeurs "en clair" en faisant (setq ListeAdmis (mapcar 'vlax-variant-value ListeAdmis)) et on récupère une belle liste de ce style Maintenant, je voudrais changer la visualisation de ce bloc dynamique qui, par défaut, est "Palmier (vue en plan)". On retrouve cette info dans la propriété Value, qu'il suffit de changer en utilisant une des valeurs de la liste ci dessus : (vla-put-value bp "Type 3 A feuillage persistant (élévation)") Et l'affichage change. Magnifique non ? :) Voilà pour le paramètre de visibilité d'un bloc dynamique. Pour les autres paramètres, c'est a peu près pareil avec d'autres noms de propriétés. Bon amusement Amicalement Zebulon_
    1 point
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité