ahbv
Membres-
Compteur de contenus
122 -
Inscription
-
Dernière visite
-
Jours gagnés
1
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par ahbv
-
la "vraie" vie commence et trés bonne retraite profitez bien au plaisir de vous lire ( pour moi c'est dans -8 ans ) :( ahbv
-
salut X_all, je crois qu'il existe un lisp de Gile "ssDynBloc.lsp" SSD version 2.6 (gile) qui pouraait répondre à tes attentes cordialement AHbv
-
tu peux aussi changer les touches raccourcis dans le fichier acadxx.pgp, c, ;copie (cela fait gagner 1 clic pour la commande copie qui est plus souvent utiliser que cercle) cc, ; cercle d, ; deplacer etc...
-
j'ai essayé avec cette modification mais le soucis et qu'il efface toutes les hachures solides quelle que soit la valeur du code (wcmatch (vla-get-layer o) , donc a priori il ne filtre pas les layer ?? merci quand même pour ta réponse.
-
exact, j'ai spécifié un calque "*Model?Unit?-?Zone?Category" donc normalement le lisp devrait n'effacer que les hachures de type "solide" sur le calque "*Model?Unit?-?Zone?Category" non ?
-
j'ai mis la maj suivante: (defun c:KHATCH_BCK-LAYERS (/ b o) (vl-load-com) (vlax-for b (vla-get-Blocks (vla-get-ActiveDocument (vlax-get-acad-object) ) ) ;(setq b(vla-item(vla-get-Blocks(vla-get-ActiveDocument(vlax-get-acad-object)))0)) (or (and (= (vla-get-IsLayout B) :vlax-true)(/= (vla-get-Name B)"*Model_Space")) (= (vla-get-IsXref B) :vlax-true) (vlax-for o b ;(setq o(vla-item b 3)) (if (and (wcmatch (vla-get-ObjectName o) "AcDb*Hatch") (= (vla-get-PatternName o) "SOLID") (not (vl-position (vla-get-layer o) '("Model?Unit?-?Zone?Category" "Model?Unit?-?Zone?Category_Pen_No__*"))) ) (vla-delete o) ) ) ) ) ) (c:KHATCH_BCK-LAYERS) (command "_regen") cependant cela efface toutes les hachures (alors que je ne veux effacer que celles qui sont sur la ligne "(not (vl-position (vla-get-layer o) '" ?? une idée
-
zut je me suis emporté trop vite, la modification efface toutes les hachures et non pas que celle s'appellant "Calque 1" "Calque 2" question: est ce que l'on peut mettre des caractére générique style "*truc?*" MILLES MERCI Patrick_35 :)
-
oups milles excuses pour la "bourde" merci mister "lecrabe"
-
Bonjour, je souhaiterais améliorer le Lisp "KHATCH_BLOCK-SOLID" à savoir qu'il efface toutes les hachures de type solide et sur des calques "définis" ,le Lisp fonctionne a merveille mais il efface toutes les hachures solides de tous les calques et je voudrais qu'il m'efface que ceux qui seraient dans une selection/défini, j'avais pensé a rajouter une ligne du style "vla-get-layer" après la ligne " (= (vla-get-PatternName o) "SOLID")" mais cela ne fonctionne pas (et c'est normal car je n'y connais pas grand chose,je tatonne mais sans grand résultat, je sais c'est un métier) donc si une âme charitable pouvait m'aider svp? merci d'avance. AHBV (defun c:KHATCH_BLOCK-SOLID (/ b o) (vl-load-com) (vlax-for b (vla-get-Blocks (vla-get-ActiveDocument (vlax-get-acad-object) ) ) ;(setq b(vla-item(vla-get-Blocks(vla-get-ActiveDocument(vlax-get-acad-object)))0)) (or (and (= (vla-get-IsLayout B) :vlax-true)(/= (vla-get-Name B)"*Model_Space")) (= (vla-get-IsXref B) :vlax-true) (vlax-for o b ;(setq o(vla-item b 3)) (if (and(wcmatch (vla-get-ObjectName o) "AcDb*Hatch") (= (vla-get-PatternName o) "SOLID")) (vla-delete o) ) ) ) ) ) (c:KHATCH_BLOCK-SOLID) (command "regen")
-
encore merci pour ton aide, j'ai enlevé les guillemets mais ca ne fonctionne pas (je m'en doutais un peu) je vais potasser les liens mais malheureusement par manque de temps je vais devoir finir mon script à la main..
-
merci FRAID pour ta réponse, effectivement j'ai changé le lancement de la commande en tapant (c:count) et là j'ai bien la commande qui se lance par contre la sélection "(ssget "_W" (list 127000.0 190000.0)(list 70000.0 -120000.0))" n'est pas interprétée ?? (pour dire vrai je n'y connais pas grand chose en lisp, donc je cherche des exemples et j'essaye de les appliquer mais la plupart du temps ca "foire" donc je demande a des "experts" via cet excellent site mais peut-etre que la ligne de selection que je veux appliquer ne peut etre interpreter par Autocad (mep2015)??
-
Bonjour, je souhaite améliorer un script qui mélange des commandes autocad basic avec du lisp et j'aurais besoin d'aide/de vos lumières sur le problème suivant: sur la ligne de commande je colle/execute ceci: (command "_count" "(ssget "_W" (list 127000.0 190000.0)(list 70000.0 -120000.0))" "" "80000.0,-125000.0") ou "count" est un programme lisp déjà chargé dans autocad (permet de crée une table des éléments selectionné par "ssget "_w") j'ai le message suivant Command: COUNT Unknown command "COUNT". Press F1 for help." alors que si je tape count sur la ligne de commande j'ai ceci Command: COUNT Select blocks to count <all>: ---------------------- bien sur mon script s’arrête a cette ligne m’empêchant de poursuivre sur d'autres commandes. Quelqu'un aurait une idée la solution,svp ? D'avance merci. ANHG
-
je suppose aussi que tu as fais un regen
-
Salut, regarder aussi du coté des objets annotatifs ? (peux être) la commande msltscale a 0 ?
-
additionner la longueur de plusieurs lignes ou polylignes
ahbv a répondu à un(e) sujet de laura dans Routines LISP
Bonjour a tous, est ce qu'il serait possible de compter aussi les polylignes dans les blocs normaux et blocs dynamiques (j'utilise souvent le lisp longt.lsp qui fonctionne a merveille mais losrque je dois metrer des polylignes dans des blocs (surtout dynamiques) il faut que je les explose et j'ai tres souvent des mauvaises surprises !!). merci d'avance (et bravo pour vos lisp) -
Salut, si tu as autocad full tu peux utiliser le programme "reference manager" (AdRefMan.exe) qui rend pas mal de service. Cordialement AHBV
-
Salut, je dirais qu'il faut mettre un attribut dans ton bloc plutôt qu'un texte. cordialement AHG
-
Merci (Gile).
-
Merci Olivier pour la réponse rapide et fonctionnel !!! juste une autre info, la "variable" TOPO ne doit elle pas etre remise a zero "nil" a un moment dans le programme ? Cordialement AHG
-
Bonjour, je souhaiterais améliorer mon script de "nettoyage de plans reçus" et je bloque sur les lignes suivantes a savoir selection des textes avec valeur "*;2??.??" sur certain type de calque je les sélectionne puis les effaces,les lignes ci-dessous fonctionnent que si il existe des textes "*;2??.??" si il n'y en a pas le script plante (setq TOPO(ssget "_A" '( (0 . "TEXT,MTEXT") (100 . "AcDbMText") (1 . "*;2??.??}*,*;???}*,*;9???}*,*;????}*") (8 . "*xxx*COTATION*1_*,*LEVE*bbb*TALUS*,*leve*ccc*pt**Val*,*leve*dddd*MNT*Courb*") ) ) ) (command "_.ERASE" TOPO "") je voudrais donc faire une "ligne de commande" avec une condition, si des textes avec telle valeur existe alors "effacer" sinon "continuer", j'ai cherché un peu partout sur le net (autodesk,cadtutor,LM etc...) et j'ai trouvé des brides de code que j'ai "essayé" d'adapter mais rien à faire ça ne veut pas (je suis pas débutant mais surtout élite) donc est ce qu'un spécialiste pourrait m'aider svp ?? Dans la foulée je souhaiterais aussi sélectionner d'autres objets style cercle/ligne ou autres avec le même but a savoir les effacer si ils/elles sont dans le plan, d'avance merci et bonne continuation a CADXP. AHG (setq TOPO(ssget "_A" '( (0 . "TEXT,MTEXT") (100 . "AcDbMText") (1 . "*;2??.??}*,*;???}*,*;9???}*,*;????}*") (8 . "*xxx*COTATION*1_*,*LEVE*bbb*TALUS*,*leve*ccc*pt**Val*,*leve*dddd*MNT*Courb*") ) ) ) (if (= "TEXT,MTEXT" "*;2??.??}*,*;???}*,*;9???}*,*;????}*")) (progn (princ (command "_.ERASE" TOPO "") ) ; fin de progn ) ; fin de if )
-
Bonjour Patrick_35, re-salut et désolé j'ai trouvé comment faire : (if (tblsearch "layer" "xxx") (command "._-rename" "layer" "xxx" "yyy" "") ) ----- que faut-il changer dans ton lisp si on veut renommer des calques au lieu de bloc même si il n'existe pas dans le dessin ? (je souhaite utiliser ce principe pour l’insérer dans un script mais en script il plante car le calque "par exemple "xxx" en "yyy") n'existe pas) Merci d'avance pour l'éventuelle réponse. Cordialement AHG57
-
idem pour moi (* 13 0.2) dans le ligne de commande, j'ai bien 2.6
-
problème plus de chargement lisp au demarrage
ahbv a répondu à un(e) sujet de ahbv dans AutoCAD 2015
Juste pour info, j'ai trouvé une solution provisoire pour résoudre mon problème de chargement des lisp à savoir dans le fichier CUI sous repertoire "lisp" j'ai supprimé tous les fichiers lisp chargés, ensuite lancé la commande "appload" et j'ai effacé tous les lisp "chargés" puis j'ai fermé autocad, ré-ouverture d'autocad et ensuite chargement des lisp dans la fenêtre "appload" maintenant cela fonctionne mais j'ai toujours un message "ERROR: Could not instantiate AecDict!" sur la ligne de commande qui ne me gene pas pour travailler (pour le moment). encore merci patrick pour ton aide -
problème plus de chargement lisp au demarrage
ahbv a répondu à un(e) sujet de ahbv dans AutoCAD 2015
Salut PATRICK_35, merci pour ta réponse mais cette variable a 0 ou 1 ne résout pas le problème, au démarrage d'autocad dans le listing de tout ce qui est chargé aucune ligne annonçant le chargement des lisp idem en modifiant avec la commande "appload" (startup suite)alors que dès que je modifie le CUI ' j'ai l'impression qu'autocad charge (ou régénère) le chargement des lisp, peux être que la solution est là mais je ne connais pas la commande qui "régénère" les CUI. ??? -
Bonjour, je reviens vers le forum pour un nouveau problème avec autocad à savoir que les fichiers lisp ne sont plus télécharger dès l'ouverture d'un fichier dwg (alors qu'il y a 3 jours tout fonctionné parfaitement), les lisp fonctionnent lorsqu'on les glisse dans le fichier donc ce n'est pas un problème de programme de plus lorsque j'ouvre la fenêtre "gestion des CUI" et que je modifie l'onglet "lisp" avec l'ajout d'un lisp et touche "appliquer + ok" le menu CUI est enregistré et les lisp sont alors chargés et utilisables (mais je ne peux pas continuer a faire cette manipulation pour chaque fichier). Le problème vient du fait qu'au démarrage les lisp ne sont pas chargés mais pourquoi, mystère et ça depuis peu ??? Est ce quelqu'un connaît la solution sans devoir passer par une réinstallation du programme ? Merci d'avance AHG
