Aller au contenu

bryce

Membres
  • Compteur de contenus

    2 160
  • Inscription

  • Dernière visite

  • Jours gagnés

    16

Tout ce qui a été posté par bryce

  1. Bonjour, C'est-à-dire ? As-tu essayé d'ouvrir ton dwg avec la commande Récupérer (Fichier > Utilitaires de dessin > Récupérer) ?
  2. Il ne faut pas transformer les polylignes en bloc. Pour récupérer les longueurs des polylignes dans un AutoCAD "full" (pas LT), on peut utiliser la commande Extraction de données (ou éventuellement un lisp). ;)
  3. Bonjour, J'ai fait une petite vidéo pour illustrer le principe des blocs dynamiques avec un attribut pour l'extraction des longueurs : J'ai utilisé la commande ATTEXTR, qui est la seule disponible sur LT. La fonction d'extraction de données d'AutoCAD apporterait des possibilités supplémentaires.
  4. 1. Je ne vois pas comment un lisp pourrait décider des paramètres de mise en page à ta place. 2. Tu ne dois pas la connaître si bien cette commande, puisque même si les paramètres de tracé ne sont pas définis dans les présentations,elle permet de leur appliquer des mises en pages nommées...
  5. bryce

    Texture caillebotis

    Bonjour, Si mes souvenirs sont bons, il prend comme couleur à rendre transparente la couleur du premier pixel en haut à gauche de l'image. C'est à vérifier, mais si c'est bien ça il suffit de coloriser ce pixel en magenta par ex. dans un éditeur d'images, et tout le magenta de l'image sera transparent. Edit: en fait, c'est le premier pixel en bas à droite... :P [Edité le 23/6/2011 par bryce]
  6. Bonjour, Si tu parles bien de la commande GELCALQUE, regarde du côté de l'option Paramètres, puis Fenêtres... ;)
  7. Bonjour, Pas possible dans LT... En utilisant un champ comme valeur par défaut de l'attribut (champ Objet qui récupère la longueur de la polyligne, ou plutôt un champ qui récupère directementla valeur du paramètre d'étirement). ;) [Edité le 24/6/2011 par bryce]
  8. Bonjour, Si c'est pour faire des Pdf à partir de plusieurs présentations ou plusieurs fichiers, il y a la commande Publier...
  9. bryce

    Plan d\'implantation

    Bonjour, Ça risque d'être difficile pour quelqu'un sur ce forum de deviner ce qui ne va pas sans voir un exemple de fichier... ;)
  10. bryce

    Textes à largeur alternative

    Bonjour, Les texte ont l'air tout à fait normal, je n'ai rien vu de bizarre (sur une 2012). :casstet:
  11. Bonjour, Ta demande n'est pas très claire... :casstet: Qu'appelles-tu "contrainte dimensionnelle" (pour moi, ce terme désigne une cote paramétrique, quelque chose qui n'existe pas sur la LT) ? Qu'appelles-tu "variable d'action" ? D'après ce que je crois deviner, tu dois utiliser une version complète, et te mélanger les pinceaux entre les paramètres des blocs dynamiques et les paramètres correspondant à des contraintes dimensionnelles (cotes paramétriques). Ces deux types de paramètres ne peuvent pas "communiquer"... :(
  12. Bonjour, J'ai modifié le lisp pour utiliser le centre de gravité comme point de base du bloc (seules les lwpolylines sont supportées) : (defun c:PO2BL (/ bname *error* obj acdoc as blks blk ss ent ent2 region count errcount errflag lay pt i nbname) ; Crée un bloc pour chaque polyligne sélectionnée. ; Brice Studer, juin 2011 ; ;~~~~~~~ CONFIG ~~~~~~~~~~~ (setq bname "BL_") ; préfixe du nom des blocs créés ;~~~~~~~ FIN CONFIG ~~~~~~~~~~~ (vl-load-com) ;~~~~~~~ SOUS-FONCTIONS ~~~~~~~~~~~ (defun gc:VariantToLispData (var) ; par (gile) (cond ((= (type var) 'variant) (gc:VariantToLispData (vlax-variant-value var))) ((= (type var) 'safearray) (mapcar 'gc:VariantToLispData (vlax-safearray->list var)) ) (T var) ) ) ;~~~~~~~ FIN SOUS-FONCTIONS ~~~~~~~~~~~ (setq obj (vlax-get-acad-object) acdoc (vla-get-ActiveDocument obj) blks (vla-get-blocks acdoc) ) (if (= (getvar "CVPORT") 1) (setq as (vla-get-paperspace acdoc)) (setq as (vla-get-modelspace acdoc)) ) (defun *error* (msg) (and msg (or (member (strcase msg) '("FUNCTION CANCELLED" "QUIT / EXIT ABORT" "FONCTION ANNULEE" "QUITTER / SORTIR ABANDON")) (princ (strcat "\nErreur : " msg)) ) ) (if ss (vla-delete ss)) (vla-endundomark acdoc) (princ) ) (vla-startundomark acdoc) (setq count 0) (setq errcount 0) (if (setq ss (ssget '( (-4 . "") )) ) (progn (initget "Courant Origine") (setq lay (getkword "\nCalque pour l'insertion des blocs [Courant/Origine] : ")) (if (not lay) (setq lay "Courant")) (setq ss (vla-get-activeselectionset acdoc)) (setq i 1) (vlax-for ent ss (setq region (vlax-invoke as 'Addregion (list ent))) (if (not (vl-catch-all-error-p (setq pt (vl-catch-all-apply 'vla-get-centroid region)) ) ) (progn (setq errflag nil) (setq pt (vlax-3d-point (trans (gc:VariantToLispData pt) 1 0))) ) (progn (setq errflag T) (setq errcount (1+ errcount)) ) ) (vla-delete (car region)) ; début création des blocs (if (not errflag) (progn (while (tblsearch "BLOCK" (strcat bname (itoa i) )) (setq i (1+ i)) ) (setq blk (vla-add blks pt (setq nbname (strcat bname (itoa i) ))) ) (vla-put-layer (setq ent2 (vla-copy ent)) "0") (vla-copyobjects acdoc (vlax-safearray-fill (vlax-make-safearray vlax-vbObject (cons 0 0)) (list ent2)) blk) (setq blk (vla-insertblock as pt nbname 1 1 1 0)) (if (= lay "Origine")(vla-put-layer blk (vla-get-layer ent))) (vla-delete ent2) (vla-delete ent); effacement de la polyligne d'origine (setq count (1+ count)) ) ); fin création des blocs );vlax-for ent );progn if ss );if ss (princ (strcat "\n" (itoa errcount) " objets ignorés.")) (princ (strcat "\n" (itoa count) " blocs créés.")) (*error* nil) ); (princ "\nCommande à utiliser: PO2BL") (princ) [Edité le 22/6/2011 par bryce]
  13. Bonjour, Pour ma part je n'ai pas fait beaucoup de VBA, mais voici un lisp qui pourrait servir de base de départ : (defun c:PO2BL (/ bname *error* obj acdoc ms blks blk ss ent ent2 count lay pt i nbname) ; Crée un bloc pour chaque polyligne sélectionnée. ; Brice Studer, juin 2011 ; ;~~~~~~~ CONFIG ~~~~~~~~~~~ (setq bname "BL_") ; préfixe du nom des blocs créés ;~~~~~~~ FIN CONFIG ~~~~~~~~~~~ (vl-load-com) ;~~~~~~~ SOUS-FONCTIONS ~~~~~~~~~~~ (defun gc:VariantToLispData (var) ; par (gile) (cond ((= (type var) 'variant) (gc:VariantToLispData (vlax-variant-value var))) ((= (type var) 'safearray) (mapcar 'gc:VariantToLispData (vlax-safearray->list var)) ) (T var) ) ) ;~~~~~~~ FIN SOUS-FONCTIONS ~~~~~~~~~~~ (setq obj (vlax-get-acad-object) acdoc (vla-get-ActiveDocument obj) ms (vla-get-modelspace acdoc) blks (vla-get-blocks acdoc) ) (defun *error* (msg) (and msg (or (member (strcase msg) '("FUNCTION CANCELLED" "QUIT / EXIT ABORT" "FONCTION ANNULEE" "QUITTER / SORTIR ABANDON")) (princ (strcat "\nErreur : " msg)) ) ) (if ss (vla-delete ss)) (vla-endundomark acdoc) (princ) ) (vla-startundomark acdoc) (setq count 0) (if (setq ss (ssget '( (-4 . "") )) ) (progn (initget "Courant Origine") (setq lay (getkword "\nCalque pour l'insertion des blocs [Courant/Origine] : ")) (if (not lay) (setq lay "Courant")) (setq ss (vla-get-activeselectionset acdoc)) (setq i 1) (vlax-for ent ss (cond ((= (vla-get-objectname ent) "AcDb3dPolyline") (setq pt (vlax-3d-point (gc:VariantToLispData (vla-get-coordinate ent 0)))) ) ((or (= (vla-get-objectname ent) "AcDbPolyline") (= (vla-get-objectname ent) "AcDb2dPolyline") ) (setq pt (gc:VariantToLispData (vla-get-coordinate ent 0))) (setq pt (vlax-3D-point (list (car pt) (cadr pt) (vla-get-elevation ent)))) ) ) ; début création des blocs (while (tblsearch "BLOCK" (strcat bname (itoa i) )) (setq i (1+ i)) ) (setq blk (vla-add blks pt (setq nbname (strcat bname (itoa i) ))) ) (vla-put-layer (setq ent2 (vla-copy ent)) "0") (vla-copyobjects acdoc (vlax-safearray-fill (vlax-make-safearray vlax-vbObject (cons 0 0)) (list ent2)) blk) (setq blk (vla-insertblock ms pt nbname 1 1 1 0)) (if (= lay "Origine")(vla-put-layer blk (vla-get-layer ent))) (vla-delete ent2) (vla-delete ent); effacement de la polyligne d'origine (setq count (1+ count)) ; fin création des blocs );vlax-for ent );progn if ss );if ss (princ (strcat "\n" (itoa count) " blocs créés.")) (*error* nil) ); (princ "\nCommande à utiliser: PO2BL") (princ) C'est une version "allégée" d'un lisp que j'avais écrit suite à une demande de lecrabe ( http://www.cadxp.com/modules.php?op=modload&name=XForum&file=viewthread&tid=31981 ). [Edité le 21/6/2011 par bryce]
  14. bryce

    Echelle de blocs annotatifs

    Si le problème vient de ces lisps, eh bien ne les charge plus automatiquement et utilise-les avec discernement. ;) Je ne vois pas trop l'intérêt de "purger" et réinitialiser la liste d'échelles à chaque ouverture de chaque fichier... :casstet:
  15. bryce

    Macro pour griser un plan

    Bonjour, Tu peux essayer cette macro : ^C^Cdefducalque;tout;;o;o;-calque;co;252;*;ep;par;*;; :)
  16. bryce

    Echelle de blocs annotatifs

    Bonjour, - il y a 2 update pour la 2011, sont-ils installés ? ( http://usa.autodesk.com/adsk/servlet/ps/dl/index?siteID=123112&id=2334435&linkID=9240618#section2 ) - as-tu essayé la commande _AUDIT en lui demandant de réparer les erreurs ? N'hésite pas à poster un fichier en exemple si c'est possible. ;) [Edité le 21/6/2011 par bryce]
  17. Bonjour, Tout ça serait automatisable en Lisp sur une version complète d'AutoCAD. Par contre, pour AutoCAD LT tu ne trouveras rien à mon avis... :( Il faudra soit passer par un autre logiciel, soit passer sur un AutoCAD "full".
  18. La capture a été faite dans un ipt... ;)
  19. Bonjour, Il faut créer une représentation de vue : http://nsa19.casimages.com/img/2011/06/17/110617042147966982.png Puis définir un point de vue et verrouiller la vue (clic droit sur la vue dans le navigateur). ;)
  20. bryce

    Ordre de Tracé

    Bonjour, Normalement l'ordre de tracé est mémorisé automatiquement dans le fichier. As-tu essayé de régénérer avant de commencer à tout remettre dans l'ordre après une modif ?
  21. Bonjour, A mon avis, il n'y pas d'autre moyen que de passer par un lisp... As-tu la possibilité de poster un échantillon de dessin ?
  22. Bonjour, HPQUICKPREVIEW à 0 pour désactiver l'aperçu des hachures, HPDLGMODE à 1 pour afficher l'ancienne boîte de dialogue des hachures au lieu de l'onglet du Ruban.
  23. Bonjour, De ne pas pouvoir être utilisée en ligne de commande (dans un script par exemple) ?! :mad:
  24. bryce

    Créer un script

    Sauf que le point-virgule, ça ne fonctionne pas dans un script... ;) @Phil: un script, c'est tout simplement un fichier texte dans lequel tu écris une suite de commandes AutoCAD. Si tu utilises SAS, tu écris la suite de commandes dans SAS directement, et ça te permet de l'appliquer ensuite à une liste de fichiers.
  25. bryce

    soustraction de deux pièces

    Bonjour, - tu fais ton assemblage - tu crées un nouveau fichier de pièce - tu utilises la fonction Dériver (dans l'onglet Gérer, de mémoire...) et tu vas chercher ton iam - dans la boîte de dialogue "Dériver", tu choisis la pièce qui doit être soustraite à l'autre en cliquant sur les petites bouboules de couleur... :P
×
×
  • 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é