Aller au contenu

(résolu) sauvegarder l'étét des calques


x_all

Messages recommandés

bonjour

 

j'utilise beaucoup une adaptation de Vue pavé de (gile) pour restaurer facilement des vue d'étage (passer d'un étage à l'autre sur un gros projet est pas économe en coup de roulette)

 

le problème c'est que quand on restaure une vue, si entre temps on à rajouté un calque (après la sauvegarde de la vue) celui ci est gelé à l’appel de cette vue... pas top.

 

je voudrai donc rajouter quand je lance la commande

-une sauvegarde de l'état des calque

puis appeler ma vue

-restaurer cet état de calque et le détruire

 

je ne sais pas trop par quel bout le prendre...

 

;;; Vue prédéfinies depuis le pavé numérique (gile)
;;; daptation pitoyable de vues-pave de (gile)


(mapcar
 '(lambda (f v)
    (eval (list 'defun-q
	 f
	 nil
	 (list 'command "_.view" "_restore" v)
	 '(princ)
   )
    )
  )
 '(c:0 c:1 c:2 c:3 c:4 c:5 c:6 c:7 c:8 c:9)
 '("vue0"	"vue1"    "vue2"	"vue3"    "vue4"
   "vue5"	"vue6"    "vue7"	"vue8"	    "vue9"
  )
)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Tu devrais pouvoir t'inspirer de cet exemple (regarde l'aide pour les fonctions layerstate-save, layerstate-restore et layerstate-delete).

 

(mapcar
 '(lambda (f v)
    (eval (list 'defun-q
                f
                nil
	 (list 'layerstate-save "tempLayerState" 7 nil)
                (list 'command "_.view" "_restore" v)
	 (list 'layerstate-restore "tempLayerState" nil)
	 (list 'layerstate-delete "tempLayerState")
                '(princ)
          )
    )
  )
 '(c:0 c:1 c:2 c:3 c:4 c:5 c:6 c:7 c:8 c:9)
 '("vue0"      "vue1"    "vue2"        "vue3"    "vue4"
   "vue5"      "vue6"    "vue7"        "vue8"      "vue9"
  )
)

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

Lien vers le commentaire
Partager sur d’autres sites

yo merci beaucoup...

 

j'ai bien regarder l'aide, et la seule question que je me pose, c'est pourquoi tu passes 7 en masque et pas 255?

 

Après, c'est exactement ce que je voulais faire, j'ai juste rajouter un '(command "regen") avant le '(printc) car sinon l'état est restauré mais n'apparait pas.

 

j'avais un peu peu de basculer dans le visual lisp, pour faire ça... il faudra bien que j'y passe un jour... mais déjà que je patauge grave en lisp, j'ai un peu peur de la bête..

 

berf encore une fois (super merci)

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é