pierrevig Posté(e) le 16 novembre 2008 Posté(e) le 16 novembre 2008 Bonjour à tous, Je souhaiterai savoir s'il est possible de faire un ssget uniquement des objets visibles à l'écran.j'essai avec "X" mais celui ci parcours toute la base de donnée. Merci de votre aide,Pierre.
(gile) Posté(e) le 16 novembre 2008 Posté(e) le 16 novembre 2008 Salut, (ssget "_A" (list (cons 410 (getvar "CTAB")))) ne sélectionnera que les objets sur des calques dégelés de l'espace courant (les objets sur les calques désactivés sont sélectionnés). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
pierrevig Posté(e) le 16 novembre 2008 Auteur Posté(e) le 16 novembre 2008 Merci, pour cette infos çà roule. Et j'ai une autre question, j'ai des calques "geler" dans une fenêtre et pas dans l'espace objet ou dans les autres fenêtres. j'aimerai faire passer les calques en Geler dans toutes les fenêtres et aussi dans l'espace Objet. Comment faire, j'ai du mal là. Merci de votre aide,Pierre.
(gile) Posté(e) le 16 novembre 2008 Posté(e) le 16 novembre 2008 Salut, Les noms des calques gelés dans une fenêtre de présentation sont stockés dans les Xdatas de cette fenêtre.On peut en récupérer la liste avec entget (c'est moins compliqué qu'en Visual LISP)Pour geler les calques dans toutes les fen^tres, il faut utiliser la commande FCALQE (_VPLAYER), un entmod ne fonctionne pas sur le fenêtres de présentation (vport).Pour geler en EO on peut utiliser la commande -CALQUE (LAYER) ou entmod.Si les calque sont gelés en EO, il seront aussi gelés dans toutes le fenêtres (sauf à utiliser le LISP MsFreeze). ;; Sélectionner la fenêtre (setq vp (car (entsel "\nSélectionnez la fenêtre: "))) ;; récupérer les Xdatas (setq xdata (cdr (assoc "ACAD" (cdr (assoc -3 (entget vp '("ACAD"))))))) ;; créer la liste des calques gelés dans la fenêtre (setq laylst (mapcar 'cdr (vl-remove-if-not '(lambda (x) (= (car x) 1003)) xdata))) ;; pour chaque calque de la liste (foreach l laylst ;; geler dans toutes le fenêtres (command "_.vplayer" "_freeze" l "_all" "") ;; geler en EO (sauf calque courant) (or (= l (getvar "CLAYER")) (command "_.layer" "_freeze" l "") ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
pierrevig Posté(e) le 16 novembre 2008 Auteur Posté(e) le 16 novembre 2008 c'est parfait ! c'est exactement ce que je voulais savoir,merci encore, chapeau bas ! @+Pierre. [Edité le 16/11/2008 par pierrevig]
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant