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, Un petit lisp vite fait: (defun opendbx(dwg / dbx) ; par Patrick_35 (if (< (atoi (substr (getvar "ACADVER") 1 2)) 16) (setq dbx (vlax-create-object "ObjectDBX.AxDbDocument")) (setq dbx (vlax-create-object (strcat "ObjectDBX.AxDbDocument." (substr (getvar "ACADVER") 1 2)))) ) (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-open (list dbx dwg))) nil dbx ) ) (defun c:LAYIMPORT ( / template f laylist ) ; Nom du gabarit contenant les calques (setq template "test.dwt") (vl-load-com) (if (setq f (opendbx (strcat (getenv "TemplatePath") "\\" template))) (progn (vlax-for l (vla-get-layers f) (or (wcmatch (vla-get-Name l) "*|*") (setq laylist (cons l laylist)) ) ) (vlax-invoke f 'CopyObjects laylist (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object)))) (vlax-release-object f) ) ) (princ) )
  2. bryce

    Synchroniser les attributs

    Bonjour, Avec BATTMAN, on peut aussi modifier les propriétés des attributs (hauteur, justification, style, visibilité, etc.), sans passer par l'éditeur de blocs. Et la synchro se fait automatiquement...
  3. bryce

    remplacer objet OLE

    Bonjour, Y a-t-il d'autres objets OLE dans le fichier, qu'il faudrait conserver ? Pourrais-tu poster un fichier en exemple ?
  4. bryce

    prob liste d'echelle

    Bonjour, Dans les options, on ne peut que modifier les listes d'échelles par défaut (métrique ou anglo-saxonne), pas l'appliquer au dessin courant. Pour réinitialiser la liste d'échelles du dessin, tu peux lancer la commande MODIFLISTECHELLE, puis cliquer sur le bouton Réinitialiser. ;)
  5. bryce

    ScanDXF Beta

    Bonjour, C'est de ta faute, c'est parce que tu as fermé ScanDXF en faisant clic droit > Fermer la fenêtre dans la barre des tâches après l'avoir minimisé. :P Je viens de mettre en ligne une version Beta 15 pour corriger ce problème. ;)
  6. Bonjour, C'est écrit en RealBasic. ;) Edit: arf, j'ai encore oublié de rafraîchir l'onglet avant de répondre...
  7. bryce

    Portée d'une fonction

    Bonjour, Ce n'est pas si flou, puisque tu as bien compris ce qui se passe ! ;) Si tu charge dans le même dessin un 1er fichier qui contient (defun c:LispA (/) ... ) (defun Dialog1_verification (/) ... ) puis un 2nd fichier qui contient (defun c:LispB (/) ... ) (defun Dialog1_verification (/) ... ) alors la fonction Dialog1_verification chargée avec le 2nd fichier va forcément écraser et remplacer la 1ère. Tu peux donc effectivement soit les nommer différemment, soit les déclarer en fonctions locales: (defun c:LispA (/ Dialog1_verification ) (defun Dialog1_verification (/) ... ) ... ) (defun c:LispB (/ Dialog1_verification ) (defun Dialog1_verification (/) ... ) ... )
  8. bryce

    Macro gel/degel

    Bonjour, Pas besoin de macro, ça existe en standard: commande GELCALQUE, menu Format > Outils de calques > Gel de calque. Il y a une icône dans le Ruban ou dans la barre d'outils "Calques II". ;)
  9. bryce

    bloc avec attributs

    Bonjour, Le bloc est bien inséré dans le calque courant, mais comme il est décomposé dans la foulée, on se retrouve avec les objets constitutifs du bloc, qui ont leurs propriétés (calque, couleur, etc.) propres. En l'occurrence, le bloc explosé contient un autre bloc qui se trouve sur le calque 0. Tu peux donc insérer le 1er bloc sur n'importe quel calque, en le décomposant tu retrouveras toujours le bloc imbriqué sur le calque 0... A moins de décomposer avec XPLODE et l'option Hériter, au lieu de l'astérisque: ...-inserer;03_EP_VIGNETTE;\1;0;xplode;d;;h
  10. bryce

    où sont mes alias?

    Bonjour, Notepad++ ne nécessite pas forcément d'installation. Il suffit de le télécharger en zip, et on peut le décompresser n'importe où (sur le Bureau, une clé USB...) puis l'utiliser. ;)
  11. Bonjour, Pour ta macro, il faudrait plutôt quelque chose comme ça: ^C^Carc;\\\pe;d;;;ef Il faut 3 pauses après la commande Arc (pour les 3 points).
  12. bryce

    Extraire des blocs

    Bonjour, Sur Autodesk Exchange, il y a un plugin gratuit appelé AutoWblock (par DotSoft), qui fonctionne bien.
  13. bryce

    Flux Rss

    Youpi ! :)
  14. Bonjour, Si j'ai bien compris, il s'agit d'inclure un arc passant par 3 sommets dans une polyligne qui a plus de 3 sommets. Pas si simple donc, hors lisp je ne vois pas vraiment de solution plus rapide que la manip décrite dans le 1er post.
  15. J'ai fait une petite modif supplémentaire pour éliminer les calques verrouillés...
  16. Bonjour, (ssget "_A") ne sélectionne pas les objets se trouvant sur des calques gelés.
  17. Bonjour, Relis bien tout le fil... ;)
  18. Il suffit de la faire glisser de quelques pixels vers le bas, et elle s'ancrera comme dans les versions précédentes. Rien n'a changé en fait, si ce n'est son positionnement par défaut... :)
  19. Bonsoir, Je ne sais pas pour Map, mais en tout cas la ligne de commande est présente sur les autres produits 2013 que je connais ou ai vu (AutoCAD standard, Mechanical, Electrical, Structural Detailing...). :huh:
  20. Ah oui, en fait je n'avais pas testé sur des cotes angulaires... :P Voici une nouvelle version qui les prend en compte (+ de petites améliorations rapides): (defun c:DIMFREEZE ( / acdoc layers lockedLayers ss dimTxt dimFormat dimOverride ) ; Force les valeurs des cotes sélectionnées à leur valeur réelle actuelle. ; Bryce, 03/2013 (vl-load-com) (setq acdoc (vla-get-ActiveDocument (vlax-get-acad-object)) layers (vla-get-LAyers acdoc) filter '( (0 . "DIMENSION") ) lockedLayers "" ) (vlax-for l layers (if (= (vla-get-Lock l) :vlax-true) (setq lockedLayers (strcat lockedlayers (vla-get-Name l) ",")) ) ) (if (/= lockedLayers "") (setq filter (append filter (list (cons -4 "<NOT") (cons 8 lockedLayers) (cons -4 "NOT>")))) ) (if (cadr (ssgetfirst)) (setq ss (ssget "_I" filter)) (progn (prompt "\nSélectionnez les cotes à forcer ou <entrée pour toutes> : ") (or (setq ss (ssget "_:L" filter)) (setq ss (ssget "_A" filter)) ) ) ) (if ss (progn (vla-StartUndoMark acdoc) (setq ss (vla-get-ActiveSelectionSet acdoc)) (vlax-for d ss (cond ((vlax-property-available-p d 'UnitsFormat) (setq dimTxt (rtos (vla-get-Measurement d) (vla-get-UnitsFormat d) (vla-get-PrimaryUnitsPrecision d)) ) (cond ((= (vla-get-ObjectName d) "AcDbDiametricDimension") (setq dimTxt (strcat "%%c" dimTxt)) ) ((member (vla-get-ObjectName d) '("AcDbRadialDimension" "AcDbRadialDimensionLarge")) (setq dimTxt (strcat "R" dimTxt)) ) );cond ) ((vlax-property-available-p d 'AngleFormat) (setq dimFormat (vla-get-AngleFormat d) dimTxt (angtos (vla-get-Measurement d) dimFormat (vla-get-TextPrecision d)) ) (cond ((zerop dimFormat) (setq dimTxt (strcat dimTxt "%%d")) ) ((= dimFormat 1) (setq dimTxt (vl-string-subst "%%d" "d" dimTxt)) ) );cond ) );cond (setq dimTxt (strcat (vla-get-TextPrefix d) (vl-string-subst (vla-get-DecimalSeparator d) "." dimTxt) (vla-get-TextSuffix d) ) dimOverride (vla-get-TextOverride d) ) (if (/= dimOverride "") (setq dimTxt (vl-string-subst dimTxt "<>" dimOverride))) (vla-put-TextOverride d dimTxt) );vlax-for (vla-Delete ss) (vla-EndUndoMark acdoc) );progn );if ss (princ) )
  21. Bonjour, Qu'est-ce qui te fait penser ça ? :huh: Je ne vois pas pourquoi dans ce cas ils se seraient amusés à l'"améliorer" dans les versions récentes (autocomplétion, options cliquables dans la 2013...) ? A mon avis, AutoCAD sans ligne de commande, ce n'est pas demain la veille...
  22. bryce

    Ellipses->polylignes 2

    Bonjour, J'ai l'impression que Rimbo n'a pas chargé la routine ELLIPSETOPOLYLINE dont EL2PL a besoin... :unsure:
  23. Bonjour, Il suffit d'utiliser Sélection rapide avant de lancer Dimfreeze... :P
  24. bryce

    Lenteur Autocad

    Bonjour, Lors d'un rendu, les 4 coeurs de mon i5 sont à 100%... ;)
  25. Bonjour, Par exemple: (setq objType (vla-get-ObjectName obj)) (cond ((= objType "AcDbText") ... ) ((wcmatch objType "AcDb*Dimension") ... ) )
×
×
  • 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é