Aller au contenu

balyoa

Membres
  • Compteur de contenus

    132
  • Inscription

  • Dernière visite

  • Jours gagnés

    1

Tout ce qui a été posté par balyoa

  1. Merci pour ton lisp. Je sais pas si il est moche mais il est long ! ;-) Même en précisant le nom du bloc et le nom du calque, sur 10 points ca va mais sur 1000 ca ne finit jamais. Si un "optimiseur de lisp" passe dans le coin ;-) Mais encore merci pour votre aide. @+
  2. et non pas réussi avec le spécial sélection de gilles : pas d'option pour sélectionner des blocs par la valeur du calque sur lequel se trouve un attribut donné. @+
  3. Merci mais ca ne marche pas. Si je gèle tout sauf "toto" je n'ai plus rien à l'écran, car tous mes blocs sont dans le calque "point". Seul le layer dans lequel se trouve l'attribut diffère pour certains points. Cdt.
  4. Salut, J'ai certains blocs (points Covadis) donc l'attribut ALT est placé dans un calque "toto". Comment sélectionner tous ces blocs dont l'attribut ALT est situé sur le calque "toto" ? Le but est d'isoler ces points dans un nouveau layer. Merci d'avance pour votre aide. Cordialement. Yoann
  5. Merci Bryce de Nice ;-) ca marche Avec 8 décimales voilà ce que j'avais pour les ellipses : Grand rayon = 0.03999426 Petit rayon = 0.0399936 Rapport des rayons : 0.99998347 Avec ta modif ca marche nickel !!! t'es un killer ! Tu veux pas me proposer uen formation en lisp ? Ps pour lecrabe42 : je ne remettais pas en cause tes tests ;-) A+ Yo
  6. Salut, Sur mon dessin ton lisp ne marche pas le Crabe. Quand je sélectionne une ellipse il ne me l'ajoute pas au jeu de sélection : Commande: e2a Choix des objets: 0 trouvé(s) Pourtant j'ai bien une ellipse avec petit rayon = grand rayon = 0.04 Et le lisp de gile (arcedit) ne me traite qu'une ellipse à la fois, moi comme d'hab je dois en traiter des milliers ;-( A suivre et bonne journée ! Yo ;-)
  7. Bonjour, Je souhaite convertir des ellipses en cercles. Le petit et le grand rayon de mes ellipses sont égaux. L'astuce donnée sur caderix ne marche pas (http://www.caderix.com/journal/spip.php?article216). Qui a une idée ? Merci. Yo
  8. balyoa

    Substitution de blocs

    Encore merci les gars, c'est cool j'ai gagné au moins une journée de boulot ;-) Vous pouvez m'envoyer la facture ;-) Sinon, vous connaissez un bon formateur lisp sur Rhone-Alpes ? Ou si Bryce veut bien descendre ici il me fait un p'tit devis, ca m'intéresse... (et c'est pas une blague) ! A+ Yo
  9. balyoa

    Substitution de blocs

    Merci beaucoup, car marche avec la sélection écran, donc pour filtrer sur le nom des blocs on fait p'tit filter sur nom de bloc = X* et on lance fusblocs avec P derrière et ca roule ! Une dernière question : si je sélectionne à l'écran un seul objet à traiter il m'écrit ca : Commande: FUSBLOCS Choix des objets: 1 trouvé(s) Choix des objets: 2 blocs substitués Pourquoi il me dit en voir substituer 2 ? Si j'en sélectionne 2 il m'en substitue 3...??? Bon App ! ;-) Yo
  10. balyoa

    Substitution de blocs

    Le pingouin38 parle au crabe42 : tu sais comment on rajoute une sélection à l'écran dans le lisp de Bryce ? Yo
  11. balyoa

    Substitution de blocs

    En fait son lisp cherche les blocs "C_1, C_2, C_11, C_22, C_111, C_112, etc..." et les substituent par le bloc "C" si il est présent dans le dessin. Mais j'ai des blocs comportant un suffixe que je ne veux pas substituer d'où la demande de filtre sur le préfixe du bloc ou sur une sélection à l'écran (qui doit suffire si avant on lance un filter sur le nom des blocs à traiter ;-) A+
  12. balyoa

    Substitution de blocs

    Bonjour et merci Bryce, le lisp marche bien en fait, mais le probleme c'est que pour certains blocs il n'existait pas dans le dessin le bloc d'origine (sans suffixe), et donc il ne faisait aucun remplacement (logique ;-) Il ne manque qu'un filtre de sélection (à l'écran ca suffirait) et c'est parfait. Encore merci à tous pour ces échanges et votre disponibilité ;-) A+ Yo
  13. balyoa

    Substitution de blocs

    Salut, Merci Bryce. Mais moi aussi probleme sur un MAP2011, quand le lance le lisp il m'écrit "149" ou "10", ou autre chiffre aléatoire et ne traite rien, bizarre... Sinon je suis aussi preneur de pouvoir filtrer soit sur les premiers caractères du nom des blocs à traiter (genre T***_X), soit par sélection à l'écran. Merci d'avance, bonne journée à tous. Yo
  14. balyoa

    Substitution de blocs

    Bonjour, Je relance le sujet, car je suis toujours demandeur d'une astuce sans passer ni par MAP ni par le DXF. Rbloc et Rblock ne propose pas cette fonction. Cordialement
  15. balyoa

    Substitution de blocs

    Oui je viens de l'essayer mais ce ne répond pas à l'automatisation recherchée. A+
  16. balyoa

    Substitution de blocs

    Merci Dioka, mais vu le nombre de blocs à traiter et le nombre de fichiers à traiter ta méthode serait beaucoup trop longue. A raison de plusieurs centaines de définitiions de blocs x plusieurs dizaines de fichiers, c'est pas jouable avec la méthode d'export dans un fichier. Je vais essayer la méthode "brute force" du DXF si pas d'autres astuces, mais j'aimerais éviter de dégrader mon DWG d'origine. A+ les cadistes...
  17. balyoa

    Substitution de blocs

    Merci Le Crabe pour ton aide, mais je préferais rester dans l'environnement Autocad et pas me servir de MAP sur ce coup là. Donc si un lispeur passe dans le coin, son aide est la bienvenue... Sinon, c'est vrai que le préfère de loin le 38 au 42 .... A+
  18. balyoa

    Substitution de blocs

    Salut, Et si je souhaite rester dans l'environnement Autocad sans passer par un shp ? En fait mes blocs ont des rotations, des attributs et des échelles que je ne souhaite pas perdre. Donc je voyais plus la chose en lisp. Si je passe par le shp je vais perdre des choses en route. J'qi trouvé ca (http://forums.autodesk.com/autodesk/attachments/autodesk/247/33798/1/rblock.zip) , pas mal mais pas automatisés. Ce que je cherche c'est un truc du genre : - sélectionne tous les blocs nommés ******_* - remplace les par le bloc nommé ****** Merci, @+
  19. Bonjour, J'ai un dessin qui contient des blocs identiques mais qui portent un nom différent, et donc pleins de définitions de blocs pour rien. Par exemple mes symboles d'arbres s'appelent arbre, arbre_1, arbre_2, etc.... et mes poteaux s'appellent poteau, poteau_1, poteau_2, etc... Je souhaite donc substituer les blocs avec suffixe (_xx) par le bloc d'origine (arbre, poteau, etc...). J'ai essayé avec la commande blockreplace des expresstools et avec la commande substituer de covadis. Ca marche bien mais que pour un bloc à la fois, et j'ai des centaines de remplacements à faire... Qui aurait eu idée sur l'automatisation de ces substiutions ? Merci d'avance. Cdt.
  20. Bonjour, J'aurais besoin d'un coup de main sur un programme en lisp (programme développé par un certain Olivier qui a changé de crémerie apparemment), d'ailleurs si il rode par là je le cherche activement ;-) Mon programme (ci-dessous), à la base, traite un dessin à la recherche de blocs anonymes, dont le nom commence par "*U", et les remplace par des blocs points avec attributs. Le probleme c'est que là j'ai un dessin avec des blocs à substituer dont le nom commence par "_N". J'ai essayé de modifier mon lisp mais il ne marche pas. Quand je lance le lisp, je sélectionne les objets à traiter et il me renvoie juste "(nil <Selection set: 11cd>)" . Je cherche un peu d'aide svp. Je peux si nécessaire vous faire passer un exemple de fichier DWG. Merci d'avance. (defun C:toto ( / NomCalque JEU I f NbJeu Elt EltLst EltBlcName EntTxt TXT PT JEU2) (setvar "ATTDIA" 0) (setvar "ATTREQ" 1) (setq JEU (ssget (list (cons 0 "INSERT")))) (setq I 0 NbJeu (sslength JEU)) (setq f (open "c:\\pts.txt" "w")) (setq JEU2 (ssadd)) (repeat NbJeu (setq Elt (ssname JEU I)) (setq I (1+ I)) (setq EltLst (entget Elt)) (setq EltBlcName (cdr (assoc 2 EltLst))) (setq EltLayer (cdr (assoc 8 EltLst))) (setvar "CLAYER" EltLayer) (if (= "*U" (substr EltBlcName 1 2)) (if (setq EntCercle (cdr (assoc -2 (tblsearch "BLOCK" EltBlcName)))) (if (= (cdr (assoc 0 (entget EntCercle))) "CIRCLE") (if (setq EntTxt (entnext EntCercle)) (if (= (cdr (assoc 0 (entget EntTxt))) "TEXT") (progn (setq TXT (cdr (assoc 1 (entget EntTxt)))) (setq PtBloc (cdr (assoc 10 EltLst))) (setq PtCercle (cdr (assoc 10 (entget EntCercle)))) (setq X (+ (car PtBloc) (car PtCercle))) (setq Y (+ (cadr PtBloc) (cadr PtCercle))) (setq Rot (cdr (assoc 50 (entget EntTxt)))) (setq Rot (- 0.0 (* 200.0 (/ Rot PI)))) (write-line (strcat (rtos X 2 4) "," (rtos Y 2 4) "," TXT) f) (command "-inserer" "PTSA" (list X Y 0.0) "" "" Rot (itoa I) TXT) (setq EntPTopo (entlast)) (setq PtTxt (cdr (assoc 10 (entget EntTxt)))) (setq X (+ (car PtBloc) (car PtTxt))) (setq Y (+ (cadr PtBloc) (cadr PtTxt))) (setq EntPTopoLst (entget (entnext (entnext EntPTopo)))) (setq EntPTopoLst (subst (cons 72 0) (assoc 72 EntPTopoLst) EntPTopoLst)) (setq EntPTopoLst (subst (cons 74 0) (assoc 74 EntPTopoLst) EntPTopoLst)) (setq EntPTopoLst (subst (cons 11 (list 0.0 0.0 0.0)) (assoc 11 EntPTopoLst) EntPTopoLst)) (setq EntPTopoLst (subst (cons 10 (list X Y 0.0)) (assoc 10 EntPTopoLst) EntPTopoLst)) (setq EntPTopoLst (subst (cons 8 EltLayer) (assoc 8 EntPTopoLst) EntPTopoLst)) (entmod EntPTopoLst) (entupd EntPTopo) ) ;; SI le 2nd élément n'est pas un texte (ssadd Elt JEU2) ) ;; SI pas de 2nd élément (ssadd Elt JEU2) ) ; Fin EntTxt ;; SI le 1er élément n'est pas un cercle (ssadd Elt JEU2) ) ; Fin test du Cercle ) ; fin EntCercle ;; SI bloc pas nommé *U (ssadd Elt JEU2) ) ; Fin du test du nom du bloc *U ) (close f) (setvar "ATTDIA" 1) (sssetfirst nil JEU2) )
  21. balyoa

    Probleme de Script sur SAS

    Oui je passe par la lecture des epf, mais il y a un bug (non corrigé en 2012), il faut bidouiller le fichier epf à la main pour repasser la variable "maplayertolevel" à 2. Sinon la modif de la variable SDI en change rien. A+
  22. Bonjour, Tu noteras dans mon message que la variable SDI est bien fixée à 0 Donc le probleme vient d'ailleurs. Merci d'avance pour votre aide.
  23. Bonjour, Je poursuis ce post car j'ai le même probleme non résolu. Sur W7x64, SDI=0, acad launcher en appli par défaut, et bien rien à faire, si autocad est déjà ouvert, quand je clique sur un nouveau dwg dans explorer, il m'ouvre uen nouvelle instance d'autodad (avec demande de l'UAC). Donc si je veux lancer 10 dwg, j'ai 10 instances de AutoCAD.exe. Par contre si je passe par fichier/ouvrir, ca marche. Mais je gagne tellement de temps par le double-clic direct depuis explorer. Merci pour votre aide. Yoann
  24. balyoa

    Probleme de Script sur SAS

    Je précise que je suis sur AutocadMap 2011, je fais des exports au format Shapemulticlass, après configuration de mon fichier EPF. Ca marche bien même si il y a un bug à corriger à la main dasn le fichier EPF. Je peux te montrer un exemple de script si tu veux. A+
  25. balyoa

    Probleme de Script sur SAS

    Et en passant une autre question sur les scripts : Je lance un script qui va exécuter des exports thématiques au format shp, en ouvrant uen vingtaine de fichiers les uns après les autres. Le problème est que la mémoire utilisée par AutoCAD.exe gonfle et quand j'arrive à la limite de Windows (au bout de 10 fichiers), Autocad crash. Peut-on demander dasn un script à ce que AutoCAD.exe vide sa mémoire ? Merci d'avance. Cdt. Balyoa
×
×
  • 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é