Aller au contenu

on se les gele ici


fograf02

Messages recommandés

Salut,

 

Il y a la commande FCALQUE (_vplayer) qui permet ça entre autres choses.

 

Si tu veux vraiment une routine uniquement pour geler les calques des objets sélectionnés dans la fenêtre courante :

 

(defun c:gel_fen (/ ss n)
 (prompt "\nGeler les calques dans la fenêtre courante: ")
 (if (setq ss (ssget))
   (repeat (setq n (sslength ss))
     (command "_vplayer"
       "_freeze"
       (cdr (assoc 8 (entget (ssname ss (setq n (1- n))))))
       ""
       ""
     )
   )
 )
 (princ)
) 

 

[Edité le 10/3/2007 par (gile)]

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Merci gile.

Ton lisp est parfait.

Par contre vplayer (que je ne connaissais pas) ne marche pas: qd je fais freeze, il ne me laisse pas selectionner, et si je tape s poour select layer, il l`interprete comme le nom du calque `s` et me retourne calque inconnu

 

Lien vers le commentaire
Partager sur d’autres sites

Si, si, vplayer marche bien, le LISP utilise la commande.

 

 

Tes déboires semblent être dûs à une "subtilité" dans la syntaxe des invites de commande d'autoCAD.

Si des options sont proposées entre crochets, par exemple :

 

Entrez une option [?/Geler/Libérer/Rétablir/Nouvgel/Visfendéf]:

 

on entre la lettre (ou les lettres) en majuscule pour spécifier l'option (g pour geler)

 

Mais si une option est présentée entre les signes "inférieur" et "supérieur", par exemple :

 

Entrez le nom de(s) calques(s) relatif(s) à geler ou :

 

Il s'agit de l'option par défaut et il faut faire "Entrée" pour la valider.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Gile,

Bon en effet ca fonctionne, c`etait donc une mauvaise manip de ma part, mais ton lisp est quand meme bcp plus pratique a utiliser.

Est-ce que je peux aussi le faire fonctionner pour des objets sur des calques en xref? (Pour l`instant ca me gele tout l`ensemble de l`xref)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Un autre version qui fonctionne avec les "sous-entités" des blocs et xrefs.

 

(defun c:gel_fen (/ ss n)
 (while (setq ent
	(car
	  (nentsel
	    "\nSélectionnez un objet sur le calque à geler dans la fenêtre courante: "
	  )
	)
 )
   (command "_vplayer"
     "_freeze"
     (cdr (assoc 8 (entget ent)))
     ""
     ""
   )
 )
 (princ)
) 

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

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é