Aller au contenu

lisp bloc->layer0


infograf94

Messages recommandés

non en effet je n'ai pas trouvé comment faire des recherches. Y a-il un index par mots-clés qque part? sinon ya bien un forum lisp, mais comment savoir que la reponse s'y trouve sans devoir lire tous les post?

 

 

 

Alors sur ton lien en VBA, c'est un peu trop fort pour moi. qu'est-ce que c'est que cette programmation, c'est pour faire des boutons?

desolé, je ne connais pas le VBA. m'enfin je suppose que je peux en conclure qu'il n'existe pas de lisp...

 

Alors bon commençons par le commencement, Y a-t-il un lien pour debutants, genre le VBA pour les nuls, pour savoir au moins ce que je suis censé faire avec cette chaine

Lien vers le commentaire
Partager sur d’autres sites

Salut, j'avais déjà posté quelque chose sur ce sujet, mais le revoici

 

@+

 

(defun c:rb(/ a b cmd)
 (setq cmd (getvar "cmdecho"))
 (setvar "cmdecho" 0)
 (command "_.undo" "_group")
 (setq a (tblnext "block" t))
 (while a
   (setq b (cdr (assoc -2 a)))
   (while b
     (setq b (entget b))
     (if (cdr (assoc 62 b))
       (setq b (subst (cons 62 0) (assoc 62 b) b))
       (setq b (append b (list (cons 62 0))))
     )
     (setq b (subst (cons 8 "0") (assoc 8 b) b))
     (entmod b)
     (setq b (entnext (cdr (assoc -1 b))))
   )
   (setq a (tblnext "block"))
 )
 (command "_.undo" "_end")
 (setvar "cmdecho" cmd)
 (princ)
)

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

tu es excusé en tant que nouveau, disai-je, soit,

mais fais défiler la page du lien que je t'ai filé,

et tu verras ...

 

allez, on essaie la roulette de la souris ;)

 

Patrick_35, n'est pas concerné par cette ironie gentille ;)

 

amicalement

Lien vers le commentaire
Partager sur d’autres sites

oops! merci pour le cours d'utilisation de la molette :) j'avais rien vu...

 

je repete neanmoins ma question sur la façon de chercher une info precise sur ce site...

 

le lisp qui est donné sur ton lien met en 0 mais ne transforme pas les couleurs.

sinon j'en ai trouvé un sur le net qui fonctionne bien, mais qui a un inconvenient, il transforme TOUS les blocs, pas seulement celui que je veux traiter, et comme il transforme les couleurs, on perd les informations sur les blocs definis avec plusieurs couleurs...

 

le voilà:

 

;Title - Erin Stephens Lisp Page

;Lisp Page from Internet - Internet Worldwide Communications

;FIXBLOCK.LSP [4/16/96]

;

; Copyright 1996 Manu-Soft Computer Services

;

; gratuiciel by:

; Owen Wengerd

; Manu-Soft Computer Services

; CompuServe: 71324,3252

; owenw@nvi.nvi.net

;

; Load function, then enter FIXBLOCK to redefine selected blocks

; so that all entities are on layer '0'.

;

 

 

(defun c:b0 (/ ss cnt b donelist bredef)

(defun bredef (b / e el)

(setq e (tblobjname "BLOCK" b))

(while e

(setq el (entget e))

(setq el (subst '(8 . "0") (assoc 8 el) el))

(setq el (if (assoc 62 el) (subst '(62 . 0) (assoc 62 el) el) (append el '((62 . 0)))))

(entmake el)

(setq e (entnext e))

)

(if (/= "ENDBLK" (cdr (assoc 0 el))) (entmake '((0 . "ENDBLK") (8 . "0") (62 . 0))))

)

(if (> (logand (cdr (assoc 70 (tblsearch "layer" "0"))) 1) 0)

(princ "\nLayer 0 must be thawed before running FIXBLOCK!\n")

(if (setq ss (ssget '((0 . "INSERT"))))

(progn

(setq cnt (sslength ss))

(while (>= (setq cnt (1- cnt)) 0)

(if (not (member (setq b (cdr (assoc 2 (entget (ssname ss cnt))))) donelist))

(progn

(bredef b)

(setq donelist (cons b donelist))

)

)

)

(princ (strcat "\n" (itoa (sslength ss)) " blocks redefined\n"))

)

(princ "\nNo blocks selected!\n")

)

)

(princ)

)

;End-of-file

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é