Aller au contenu

gel de calque Xref ( en cliquant sur le dessin )


Messages recommandés

Posté(e)

Bonjour, voila mon problème:

 

J'ai un plan qui utilise une xref et j'aimerais geler certains calques pour ne faire apparaitre seulement ce dont j'ai besoin.

 

Quand je passe par le gestionnaire de calque et que je gèle un calque ca fonctionne sans problèmes mais comme j'ai un nombre de calques assez important et que je ne connait pas le nom exact de ceux a geler , j'aimerais savoir comment faire pour geler les calques de la Xref en cliquant dessus directement sur le dessin.

 

Pour info j'ai deja essayé en utilisant la fonction EDITREF mais quand je sauvegarde la référence les calques reviennent sur le dessin (ma fonction VISRETAIN est à 1)

 

Merci pour vos réponses.

  • 2 ans après...
Posté(e)

Bonjour à tous,

 

Je suis très très interressé par cette fonction.

 

Malheureusement pour moi, je ne possède pas la barre d'outils "Expresstool" et que je ne "peux" pas l'installer sur mon pc (pour faire court, je suis en déplacement, faut appeller le service informatique de ma boite, les convaincre de l'utilité de ma demande pour qu'il m'envoie le CD d'install, en bref, j'aurais le CD pour Noël, et encore...)

 

Existe-t-il un lisp qui pourrait remplacer cette fonction?

 

Dites-moi "Ouuuuuiiiiiiiii", svp... :(

 

Charly

Posté(e)

Existe-t-il un lisp qui pourrait remplacer cette fonction?

 

Un code ancien que je me servais pour geler des calques par fenêtres de présentation (ne fonctionne donc que dans l'EP) en cliquant sur les objets.

 

((LAMBDA (/ e plan lplan lsplan drap e_bis plan_bis)
(cond
	((= (getvar "tilemode") 0)
(setq drap (getvar "expert"))
(setvar "expert" 0)
(while (setq e (entsel "\nPointez une entite: "))
	(setq e_bis (car (nentselp (cadr e))))
	(setq e (car e))
	(setq plan (cdr(assoc 8 (entget e))))
	(setq plan_bis (cdr (assoc 8 (entget e_bis))))
	(if (/= plan plan_bis)
		(progn
			(princ "\nL'entité fait partie d'un bloc ou d'un xref.")
			(initget "Insertion Entite _Insert Entitie")
			(if (eq (getkword "\nAdopter le plan d'insertion ou de l'entité - [insertion/Entite]: ") "Entitie")
				(setq plan plan_bis)
				(setq plan plan)
			)
		)
	)
	(setq lplan (cons plan lplan))
	(princ (strcat "  " plan " sera gelé dans la fenêtre courante."))
)
(if lplan
	(progn
		(setq lsplan
			(apply 'strcat
				(mapcar '(lambda (x)(strcat x ",")) lplan)
			)
		)
		(command "._vplayer" "_freeze" lsplan "" "")
	)
)
)
(T (prompt "\nIncorrect, TILEMODE doit être à 0."))
)
(princ)
))

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Salut BonusCAD,

 

Merci pour ce code. Il va considérablement me s'implifier la vie. :D

 

Mais pour que ça soit le top du top me concernant, et vu que je ne m'y connais pas du tout en programmation lisp, existe-t-il ou peut-on modifier ce code afin que le ou les calques sélectionnés soient à la fois gelés dans l'EO et les EP?

 

Merci.

Posté(e)

Génial Oto82!!! :)

 

Merci beeaucoup!!!

 

On peut ajouter une option sur ce lisp??? Oui je sais j'en demande beaucoup...

 

Ca serait de selectionner plusieurs entités de différents calque et quand on appuit sur entrée, es différents calques se gèlent...

 

Merci encore!!!

Posté(e)

Voir même :

- On lance le lisp ;

- On selectionne une entité de l'XREF ;

- La barre de commande donne le nom du calque de l'entité sectionnée sans avoir à taper "Espace" ou "Entrée" (avec possibilité de la désélectionner (touche clavier Maj.) ;

- On recommence l'opération autant de fois que nécessaire ;

- On tape sur "Entrée" ou 'Espace"

- Tous les calques des entitées sélectionnées de l'XREF sont gelés...

 

C'est possible, ou j'en demande trop... :exclam:

Posté(e)

(avec possibilité de la désélectionner

 

pas assez fort pour faire ça rapidos

 

sinon, tu rajoutes entre les 2 lignes "command"

(alert (strcat "le calque " calq " va être gelé"))

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é