Aller au contenu

LISP Sauvegarde


SF.Designer

Messages recommandés

Bonjour a tous,

 

Quelqu'un aurait une explication du pourquoi ma première fonction, "SaveExtended", marche très bien alors que la seconde, "Save2013dwg", ne marche pas ?

 

Je vous met le lisp en entier.

 


; Save.LSP

; -------------------------------------------------------------------------------------------------

; Détermine si les invites et les entrées sont reprises lors de la fonction de commande AutoLISP
	(setvar "CMDECHO" 0) ; 0 = Désactive l'affichage à l'écran

; Chargement de Visual lisp
	(vl-load-com)

; -------------------------------------------------------------------------------------------------
;										CONFIGURATION DE BASE
; -------------------------------------------------------------------------------------------------

; Retour configuration de base
	(defun RootSet ()
		(setvar "CLAYER" "0") ; Definir calque courant
		(setvar "CECOLOR" "BYLAYER"); Definir couleur courante
		(setvar "CELTYPE" "BYLAYER") ; Definir type de ligne courant
		(setvar "CELWEIGHT" -1) ; Definir epaisseur courante
		(vl-cmdf "-COTSTYLE" "R" "STANDARD") ; Definir style de cote courant
		(setvar "CTABLESTYLE" "STANDARD") ; Definir style de tableau courant
		(setvar "CMLEADERSTYLE" "STANDARD") ; Definir ligne de repere multiple courant
		(setvar "TEXTSTYLE" "ISO") ; Definir style de texte courant
		(vl-cmdf "SCU" "_W") ; Definir scu courant
	)
	
; -------------------------------------------------------------------------------------------------
;										ZOOM
; -------------------------------------------------------------------------------------------------

; Zoom Etendu
	(defun ZoomExtended ()
		(vl-cmdf "_ZOOM" "_EXTENTS")
	)
	
; -------------------------------------------------------------------------------------------------
;										ETAT DE CALQUES
; -------------------------------------------------------------------------------------------------

; Calques : Sauvegarde / Unlock
	(defun SaveStateLayers ()
		(vl-cmdf "_LAYER" "_STATE" "_SAVE" "SavTemp" "" "" "") ; Sauvegarder l'etat des calques
		(vl-cmdf "_LAYER" "_THAW" "*" "_UNLOCK" "*" "_ON" "*" "") ; Degeler, Deverouiller, Activer les calques
	)
	
; Calques : Restaurer etat
	(defun RestoreStateLayers ()
		(vl-cmdf "_LAYER" "_STATE" "_RESTORE" "SavTemp" "" "") ; Restaurer l'etat des calques
		(vl-cmdf "_LAYER" "_STATE" "_DELETE" "SavTemp" "" "") ; Supprimer sauvegarde d'etat des calques
	)
	
; -------------------------------------------------------------------------------------------------
;										PURGE
; -------------------------------------------------------------------------------------------------

; Purge de toutes les entites
	(defun PurgeAllObjets ()
		(vl-cmdf "_PURGE" "_ALL" "" "_NO" "")
	)
	
; -------------------------------------------------------------------------------------------------
;										GESTION FENETRE DE TEXTE
; -------------------------------------------------------------------------------------------------

; Fermer Fenetre Texte
	(defun CloseWindowText ()
		(textscr) ; Basculer sur fenêtre de texte
		(vlax-invoke-method (vlax-get-or-create-object "WScript.Shell") "SendKeys" "%{F4}") ; Fermer fenêtre de texte
	)
	
; -------------------------------------------------------------------------------------------------
;										SAUVEGARDER
; -------------------------------------------------------------------------------------------------

; Sauvegarder et fermer
	(defun SaveAndClose ()
		(vl-cmdf "_QSAVE" "") ; Sauvegarde
		(vl-cmdf "_CLOSE" "") ; Fermer
	)
	
; Sauvegarder
	(defun SaveNoClose ()
		(vl-cmdf "_QSAVE" "") ; Sauvegarde
	)
	
; -------------------------------------------------------------------------------------------------
;										FONCTIONS
; -------------------------------------------------------------------------------------------------

; Zoom, purge, sauvegarde 
	(Defun c:SaveExtended ()
		(RootSet)
		(ZoomExtended)
		(SaveStateLayers)
		(PurgeAllObjets)
		(RestoreStateLayers)
		(CloseWindowText)
		(SaveAndClose)
		(princ)
		)
		
	(princ)


; Format enregistrement par defaut
	; 1 - AutoCAD R12 DXF
	; 12 - AutoCAD 2000 DWG
	; 13 - AutoCAD 2000 DXF
	; 24 - AutoCAD 2004 DWG
	; 25 - AutoCAD 2004 DXF
	; 36 - AutoCAD 2007 DWG
	; 37 - AutoCAD 2007 DXF
	; 48 - AutoCAD 2010 DWG
	; 49 - AutoCAD 2010 DXF
	; 50 - AutoCAD 2010 DWT
	; 60 - AutoCAD 2013 DWG
	; 61 - AutoCAD 2013 DXF
	; 62 - AutoCAD 2013 DWT
	; 64 - AutoCAD 2018 DWG
	
; Zoom, purge, sauvegarde 2013
	(defun c:Save2013dwg ()
		(setenv "DefaultFormatForSave" "60")
		(SaveNoClose)
		(princ)
	)

	(princ)

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é