Aller au contenu

LUDWIG

Membres
  • Compteur de contenus

    1 396
  • Inscription

  • Dernière visite

Tout ce qui a été posté par LUDWIG

  1. LUDWIG

    Purger

    ok, j'utilisais déjà le lisp de ce chalenge, je vais donc continuer...
  2. LUDWIG

    Nombre de blocs

    ou le lisp d'autodesk : (defun c:deldup_blk (/ ss ssdup ct len e eb pt lay bname ang sclx scly sclz obj obj_list ) (princ "\nSelect block objects.") ;Select objects and filter all but block insert objects. (setq ss (ssget (list (cons 0 "INSERT")))) (if ss ;If any valid objects were selected. (progn (princ "\nBuilding list of objects.") (setq ssdup (ssadd)) ;Initialize new selection set to hold objects to delete (setq len (sslength ss)) ;Find out how many objects were selected. (setq ct 0) (while (< ct len) ;Loop through selected objects (setq e (ssname ss ct)) ;Get an object name (setq eb (entget e)) ;Get the entity list from the object name (setq ct (+ ct 1)) ;Increment index into selection set (setq pt (cdr (assoc 10 eb))) ;Access object's coordinate (setq lay (cdr (assoc 8 eb))) ;Access object's layer (setq bname (cdr (assoc 2 eb))) ;Access object's block name (setq ang (cdr (assoc 50 eb))) ;Access object's rotation angle (setq sclx (cdr (assoc 41 eb))) ;Access object's x scale (setq scly (cdr (assoc 42 eb))) ;Access object's y scale (setq sclz (cdr (assoc 43 eb))) ;Access object's z scale ;Make list of object properties (setq obj (list pt lay bname ang sclx scly sclz)) (if (not (member obj obj_list)) ;If these properties are not already in list (setq obj_list (cons obj obj_list)) ;Add them to the list (ssadd e ssdup) ;Else add object to selection set to delete ) ;End if ) ;End of while loop (if (> (sslength ssdup) 0) ;If there are any objects in the selection set to delete (progn (princ "\nDeleting duplicate objects.") (setq len (sslength ssdup)) ;Find out how many many objects to delete. (setq ct 0) (while (< ct len) ;Loop through objects and delete. (setq e (ssname ssdup ct)) ;Get object name (setq ct (+ ct 1)) ;Increment index into selection set (entdel e) ;Delete duplicate object ) ;End of while loop (princ ;Print the number of objects deleted to command line (strcat "\nDeleted " (itoa len) " duplicate objects." ) ;_ Fin de strcat ) ;_ Fin de princ ) ;End progn (princ "\nNo duplicates found.") ;Else no there were no duplicates to delete. ) ;End if ) ;End progn (princ "\nNo block objects selected.") ;Else there were no valid objects selected ) ;End if (princ) ) ;_ Fin de defun (prompt "\ndeldup_blk : Supprimer les superpositions de blocs" ) ;_ Fin de prompt
  3. LUDWIG

    Plans trop lourds

    est-ce que il n'y a pas une histoire de polylignes "polylignes2D" qui sont plus lourdes que les "LWpolylines" ? http://www.cadxp.com/modules.php?op=modload&name=XForum&file=viewthread&tid=23093#pid99056 Superpurge de (gile) : http://www.cadxp.com/modules.php?op=modload&name=XForum&file=viewthread&tid=10498#pid69008 Superpurge de manusoft : http://www.manusoft.com/Software/SuperPurge/index.stm Essayes d'enregistrer dans un format dxf, voir le changement de taille. Est un quelques overkill ? (j'ai par contre l'habitude de lancer les 3 types de nettoyage séparement, car ça me semble plus rapide).
  4. LUDWIG

    Largeur définie à 0

    j'ai donc paramétré mon style de texte par défaut, la hauteur par défaut étant définie dans le style de texte, le nombre de colonne est définie par mtextcolumn, et la justification et la largeur sont définies dans la macro que j'ai modifié : ^C^C_mtext \j mc l 0
  5. LUDWIG

    Largeur définie à 0

    Le nombre de colonne par défaut des textes multilignes : MTEXTCOLUMN
  6. LUDWIG

    Publier en pdf

    Super Lili2006, merci beaucoup pour ce lien. Merci JF aussi pour l'astuce. Ca fonctionne nickel maintenant. Pdf multifeuille (ou non, au choix dans les options de publications), avec gestion des calques ! Une petite anomalie au premier test : certaines écritures étaient manquantes (petits points en remplacement) alors que d'autres non (pourtant même style écriture ect, seul la valeur du texte changeait). Un petit tour dans le gestionnaire de tracage "DWG TO PDF", "propriétés personnalisées", "traitement des polices", "Les capturer toutes", et hop, c'est réglé ! On voit d'ailleurs d'autres options utiles comme les résolutions et les informations de calques. Je n'ai plus qu'à régler la taille du papier (mes présentations A3 sont légèrement tronquées). Merci encore !
  7. LUDWIG

    Publier en pdf

    Le tracé en arrière plan était déjà désactivé. Je l'ai activé pour voir, rien n'a changé. Publishcollate à 0 ou 1 ne change rien...
  8. LUDWIG

    Publier en pdf

    Bonjour, La fenêtre de publication a changé sur autocad 2010. J'essaye de publier un ensemble de présentation ; - traceur nommé : ça marche - dwf : ça marche - dwfx : ça marche - pdf: ça ne marche pas, que je fasse un fichier de X feuilles ou X fichiers. L' "état du travail" s'arrête à la feuille 1 sur un total de X. Aucun fichier pdf n'est créé. Le fichier plot est créé à l'emplacement mentionné, et indique l'utilisation du plotter "DWG To PDF.pc3" qui existe bien. L'impression via ce plotter par le menu "imprimer" imprime correctement. Avez-vous une idée d'ou viendrait le problème ? Merci d'avance !
  9. LUDWIG

    PERTE RETICULE

    Mon problème est en partie réglé ! J'ai bien changé la couleur du réticule, contexte "espace objet 2D"ET "Feuille/Présentation". Ca change bien la couleur du réticule (et la couleur du texte des onglets "Objet" et "présentation" !!!). Quand je suis dans l'espace objet de ma fenêtre, pas de problème mon réticule est là, de la couleur choisie. Quand je suis dans l'espace objet agrandie de la fenêtre, le réticule est de la couleur négative de celle choisie pour l'espace objet (vert--> violet ; bleu--> jaune). Comme j'avais un réticule blanc, celui-ci était devenu noir dans l'espace objet agrandi, et noir sur noir, il n'y a plus d'espoir... PS : testé sur 2009, la couleur du réticule de l'espace objet agrandie n'est pas en négatif. Quelqu'un veut bien testé sur une autre 2010 SVP ?
  10. LUDWIG

    PERTE RETICULE

    Merci de me répondre ! J'ai changé la couleur du réticule mais rien n'y fait. Pas de problème côté de la fenêtre de texte.
  11. LUDWIG

    PERTE RETICULE

    Bonjour, Mon réticule n'apparait pas quand je suis dans l'espace objet agrandi de ma fenêtre de présentation. Idem, pas d'aperçu des commandes (quand je trace une ligne par exemple). Auriez-vous une idée pour me dépanner ? Merci d'avance !
  12. LUDWIG

    Saccade sur bloc dynamique

    oui, suractivité du processeur au survol du bloc concerné. Tamt pis, je supprime tous mes paramètres de points...
  13. Bonjour, J'avais récupéré cette routine pour purger rapidement un plan : (defun c:pu () (vla-PurgeAll (vla-get-ActiveDocument (vlax-get-acad-object))) ) Mais voilà, autocad 2010 présente l'option de purger les entités de longueur nulle et les textes vides, et appparement, quand je lance le code, cette option n'est pas lancée. Quelqu'un saurait comment résoudre ce (petit) problème ?
  14. LUDWIG

    Des zombies dans les blocs

    Merci (gile) Encore un outils à ajouter à ma collection de programme de nettoyage. Mes plans vont être tout propres !
  15. LUDWIG

    Un générateur de TDC.........

    excellent, c'est le genre de truc qui m'éclate
  16. LUDWIG

    Saccade sur bloc dynamique

    Merci pour ces tests. Il faudra que je regarde au niveau du processeur moi aussi. Pour info, j'ai désactivé la surbrillance au survol des entités.
  17. LUDWIG

    Largeur définie à 0

    Je ne sais pas par contre comment définir le type de colonnage par défaut sur aucun. A chaque fois que je créé un texte, je suis obligé d'aller changer la valeur du type de colonnage. Et comme c'est une boîte de dialogue et non une liste déroulante, c'est long...
  18. LUDWIG

    Largeur définie à 0

    Bon, voilà, je me réponds tout seul : il faut que les paramètres de colonnes du texte (nouveautés 2010) soit sur "aucune" et là la valeur de largeur définie est modifiable.
  19. Bonjour, Je n'arrive pas à mettre la valeur de largeur définie d'un textmult à 0... C'était pourtant possible sur 2009. Encore une variable ? Merci pour vos réponses...
  20. Ces bidouilles me rappellent maintenant un lisp que j'avais fait quand je faisais du lisp Une version pour "normaliser les blocs", c'est à dire placer les entités du bloc sur le calque 0 mais en conservant la couleur d'origine (ou celle du calque d'origine). Ainsi, le bloc conserve son apparence, mais n'a plus que des entités sur 0 (defun c:nb2 () (setq echoold (getvar "cmdecho")) (setvar "cmdecho" 0) ;(command "-calque" "a" "e" "Normalise" "" "" "") (COMMAND "-calque" "L" "*" "AC" "*" "D" "*" "") (COMMAND "-calque" "E" "0" "") ;Normalisation des blocs dans la table des blocs (if (/= nil (setq i (tblnext "block" t)))(progn ; RECHERCHE LA PREMIERE ENTREE DANS LA TABLE DES BLOCS (setq tot 1) (while i (setq n (cdr (assoc -2 i))) ; SELECTIONNE LA PREMIERE ENTITE QUI COMPOSE LE BLOC (while n (setq n (entget n)) (setq colorigin (cdr (assoc 62 n))) (if (or (= nil colorigin)(= 256 colorigin)(= "BYLAYER" colorigin))(setq colorigin (cdr(assoc 62 (tblsearch "layer" (cdr (assoc 8 n))))))) (if (> 0 colorigin)(setq colorigin (- 0 colorigin))) ;Récupère la couleur de l'entité d'origine (ou de son calque si la couleur est "bylayer") ; RECUPERE LES VALEURS DES ENTITES QUI COMPOSE LE BLOC (if (/= (cdr (assoc 8 n)) "0") (progn (setq n (subst (cons 8 "0") (assoc 8 n) n)) ;SI L'ENTITE N'EST PAS SUR 0, LA DEPLACE SUR 0 (entmod n) ) ;_ Fin de progn ) ;_ Fin de if (if (not (assoc 62 n)) ;SI L'ENTITE N'A PAS LE CODE DXF 62 (=DuCalque), LE CREE ET LUI AFFECTE LA VALEUR de son calque d'origine (setq n (append n (list (cons 62 colorigin))))) ;CHANGE LA COULEUR EN COULEUR D4ORIGINE (setq n (subst (cons 62 colorigin) (assoc 62 n) n)) (entmod n) (setq n (entnext (cdr (assoc -1 n)))) ;ENTITE SUIVANTE ) ;_ Fin de while (setq i (tblnext "block") tot (1+ tot) ) ;BLOC SUIVANT ) ;_ Fin de while ;Normalisation des étiquettes d'attributs de blocs dans le dessin (car une étiquette peut avoir des valeurs de calque, couleur, etc. différentes de l'attribut) (setq sel (ssget "x" (list (cons 0 "INSERT")))) (setq j 0) (setq nat 0) (while (ssname sel j) (setq n (entget (ssname sel j))) (if (assoc 66 n) (progn (setq i (entget (entnext (cdr (assoc -1 n))))) (while (/= (cdr (assoc 0 i)) "SEQEND") (setq i (subst (cons 8 "0") (assoc 8 i) i)) ; mettre l'attribut sur le calque 0 (if (not (assoc 62 i))(setq i (append i (list (cons 62 0))))) (if (/= (cdr (assoc 62 i)) 0)(setq i (subst (cons 62 0) (assoc 62 i) i))) ; mettre l'attribut en couleur dubloc (entmod i) ; modifier l'entité (entupd (cdr (assoc -1 i))) ; mettre à jour sur l'écran l'entité (setq nat (+ 1 nat)) (setq i (entget (entnext (cdr (assoc -1 i))))) ) ;_ Fin de while ) ;_ Fin de progn ) ;_ Fin de if (setq j (1+ j)) ) ;_ Fin de while ;Résultat ;----------------------------------------------- (princ (strcat "\nTraitement de " (itoa (+ tot nat)) " bloc(s) (" (itoa tot) " dans la table des blocs et " (itoa nat) " étiquette(s) d'attribut(s) de bloc(s) dans le dessin)" ) ;_ Fin de strcat ) ;_ Fin de princ ;(command "-calque" "a" "s" "Normalise" "" "") (command "regen") (setvar "cmdecho" echoold) (graphscr) (princ) ) ) ) (prompt "\nnb2 : Normaliser les blocs du dessin (calque 0 - Couleur d'ORIGINE)" ) ;_ Fin de prompt
  21. Merci ! Le problème c'est que ton programme force la couleur des entités en Ducalque OU les laisse à la couleur d'origine. Pour mon application, il faudrait que les entités prennent la couleur de leur calque d'origine. Exemples : - une ligne de couleur Ducalque sur le calque vert TOTO devra devenir de couleur verte sur le calque 0 - une ligne de couleur cyan sur le calque TUTU restera de couleur cyan sur le calque 0
  22. Bonjour à tous, Je me rappelle avoir vu passer un lisp pour changer de calque les entités tous en conservant les couleur et type de ligne des calques d'origine (en les forçant). Est-ce que quelqu'un sait où je pourrais retrouver ça ? Merci d'avance !
  23. LUDWIG

    World Builder

    Super ! Merci ! Ca me fait penser au film Dark City, en moins sombre...
  24. Bonjour à tous, Je rencontre un petit soucis un peu embettant (sur 2008, 2009, 2010) : je travaille beaucoup avec des blocs dynamiques. J'en ai un qui comporte 33 paramètres de visibilité, et pour chaque paramètre, 2 paramètres de points et 2 actions de déplacement associés. Quand je "survole" ce bloc avec la souris, celle-ci se bloque et saccade. J'ai testé en supprimant tous les paramètres de poins et le soucis ne se présente plus. Il semble que le pointeur "accroche" sur chacun des 66 paramètres de points, alors que seuls 2 sont actifs. Quelqu'un a t'il rencontré ce problème ? Quelqu'un a t'il une solution ? Merci d'avance !
  25. LUDWIG

    Type de ligne \"pas\"

    Merci ! Mais je n'arrive pas à charger ce type de ligne ??? http://www.cadxp.com/sujetXForum-23473.htm
×
×
  • 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é