Communauté
AutoCAD – tous produits - Français
Bienvenue sur les forums AutoCAD d’Autodesk. Partagez vos connaissances, posez des questions, et explorez les sujets AutoCAD populaires.
annuler
Affichage des résultats de 
Afficher  uniquement  | Rechercher plutôt 
Vouliez-vous dire : 

Bloc dans le mauvais calque

8 RÉPONSES 8
Répondre
Message 1 sur 9
thomas.vandenberghe
1196 Visites, 8 Réponses

Bloc dans le mauvais calque

Bonsoir, J'ai un problème au niveau des calques pour mes blocs. J'ai un bloc qui a pour représentation un point avec une valeur à côté. Ce bloc est situé dans le calque dit "0" Pourtant lorsque je clique sur le bloc et que je vais dans les propriétés de l'éditeur d'attributs étendu, il me dit que le bloc est dans le calque dit "1". Je peux le changer manuellement est le mettre dans le 0. Mais j'ai beaucoup de bloc avec ce même problème. Y'a t'il pas une façon plus rapide au lieu de faire bloc par bloc cette manip'. Merci d'avance !!!
8 RÉPONSES 8
Message 2 sur 9
braudpat
en réponse à: thomas.vandenberghe

 

Hello

 

Si ton probleme est bien : tout ou une partie du graphisme de mon bloc n'est pas sur le calque ZERO

et je veux que TOUT soit sur le calque ZERO alors un petit programme Lisp/VLisp fera tres bien le boulot !

 

Sinon c un BEDIT sur chaque bloc fera aussi le boulot ...

 

Donc que veux tu faire ou avoir ?

 

Patrice ( Supporting Troops ) - Autodesk Expert Elite
If you are happy with my answer please mark "Accept as Solution" and if very happy please give me a Kudos (Felicitations) - Thanks

Patrice BRAUD

EESignature


Message 3 sur 9
thomas.vandenberghe
en réponse à: braudpat

Bonjour,

La premiere solution me parait très bien ! Mais comment faire ? ^^'

 

Merci encore !

Message 4 sur 9
braudpat
en réponse à: thomas.vandenberghe

 

Hello

 

OK donc voici une excellente routine "RB_Calque" en VLisp de P35 qui remettra TOUTES les entites des blocs sur le calque ZERO

Cette version de la routine ne touche aux couleurs, types de lignes, epaisseurs de ligne, eventuellement forcees sur les entites ...

 

Chargement par :  APPLOAD  <Entree>

 

Puis execution par la commande :  RB_Calque  <Entree>

 

Est ce OK ?

 

Patrice ( Supporting Troops ) - Autodesk Expert Elite
If you are happy with my answer please mark "Accept as Solution" and if very happy please give me a Kudos (Felicitations) - Thanks

Patrice BRAUD

EESignature


Message 5 sur 9
thomas.vandenberghe
en réponse à: braudpat

Ca ne marche pas.

Il me dit toujours dans les propriétés de l'éditeur d'attributs étendu  que le bloc est dans le calque dit "1" 😕

Message 6 sur 9
braudpat
en réponse à: thomas.vandenberghe

 

Hello

 

Desole mais je viens de faire un bloc XXXX avec le graphique sur le calque "B1" et 2 attributs sur le calque "B2" 

puis d'inserer ces Blocs sur le calque "VERT" donc :

- le graphique du bloc est toujours sur le calque "B1"

- les attributs sont toujours sur le calque "B2"

Bien que le Bloc soit insere sur le calque "VERT" ...

 

APPLOAD <Entree>

Parcourir et CLIC CLIC sur le fichier "RB_Calque.lsp" - Charger / Fermer

RB_Calque <Entree>

Selectionner le/les blocs concernes ...

et HOP TOUT le graphisme et TOUS les attributs passent sur la calque ZERO dans la definition du Bloc XXXX

et donc tout se dessine sur le calque "VERT" !

 

Patrice ( Supporting Troops ) - Autodesk Expert Elite
If you are happy with my answer please mark "Accept as Solution" and if very happy please give me a Kudos (Felicitations) - Thanks

Patrice BRAUD

EESignature


Message 7 sur 9
Olivier.R
en réponse à: thomas.vandenberghe

Bonjour,

Pour remetre sur le calque 0 un attribut dont la propriété à été forcée grâce à la commande battman, essaye ce petit lisp vite fait.

 

(defun c:prop_at (/ ss ent n)
  (setq ss (ssget "_X" '((0 . "INSERT") (66 . 1))) n 0)
  (repeat (sslength ss)
    (setq ent (entnext (ssname ss n)) n (1+ n))
    (while (/= (cdr (assoc 0 (entget ent))) "SEQEND")
      (if (and (= (cdr (assoc 0 (entget ent))) "ATTRIB")
	       (/= (cdr (assoc 8 (entget ent))) "0")
	       )
	(entmod (subst '(8 . "0") (assoc 8 (entget ent)) (entget ent)))
	)
      (setq ent (entnext ent))
      )
    )
  )

 

Olivier

Message 8 sur 9
braudpat
en réponse à: Olivier.R

 

Hello Olivier

 

MERCI pour cet excellent petit programme Lisp !

 

SVP quelle serait la variante qui permetrait de selectionner des Blocs DEJA insereres

afin de ne traiter QUE CES Blocs et non pas TOUS les Blocs du DWG ?

 

Merci d'avance

 

Patrice ( Supporting Troops ) - Autodesk Expert Elite
If you are happy with my answer please mark "Accept as Solution" and if very happy please give me a Kudos (Felicitations) - Thanks

Patrice BRAUD

EESignature


Message 9 sur 9
Olivier.R
en réponse à: braudpat

Hello Patrice,

Il suffit de supprimer les caractères "_X" après le ssget.

 

Olivier

Vous n'avez pas trouvé ce que vous recherchiez ? Posez une question à la communauté ou partagez vos connaissances.

Publier dans les forums  

Autodesk Design & Make Report