Aller au contenu

Xref et chemin relatif


Messages recommandés

Posté(e)

Salut,

J'ai un dossier qui contiens des xrefs dans un sous-dossier sur le serveur du taf.

Le serveur merdant un max, j'ai copier le doddier complet sur mon disque C (Le Bureau en particulier). J'ai modifier le fichier xref, je le ferme et j'ouvre ensuite le projet qui fait appel à mon Xref. Mais je n'ai pas les modifs Forecement puisque l'Xref qui est appellée sur mon fichier se trouve sur le serveur et que j'ai bossé sur une copie qui est sur mon disque (Jusque là toust clair? :casstet: )

 

Je souhaiterais savoir si il est possible de donnée un chemin relatif à mon Xref plutôt qu'un chemin absolu de façon à ce que mon fichier de projet fasse appelle à l'Xref qui est dans le dossier et non sur le serveur de façon à ce que quand je vais remettre le dossier complet sur le serveur, je ne sois pas obligé de redonné le nouveau chemein de l'Xref?

 

@+

 

Steven

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Salut

Oui

Le chemin relatif se fait par rapport à l'emplacment du dessin appelant sur le disque

Un rep1\mon_xref.dwg veux dire que le dessin doit regarder dans le sous répertoire rep1

un ..\rep1\mon xref.dwg veux dire que le dessin doit remonter d'un cran et ensuite dans le répertoire rep1

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)
Hello Steven.

 

une autre solution peut être :

exporter depuis le serveur tes fichiers via "etransmit",

le fichier zippé contiendra la structure des répertoires,

à la décompression il va "reproduire" l'arborescence.

 

amicalement depuis le sud de la France...

 

Salut Didier.

 

Tout d'abord, heureux de te revoir parmis nous ;)

 

J'avais en efet penser à me faire des etransmit à moi-même mais après réflexion, je ne pense pas que ce soit la solution car je travaille sur plusieurs dossier et je ne vais jamais en finir si je dois tous les "e-transmités"

 

Merci tout de même de l'idée :)

 

Salut

Oui

Le chemin relatif se fait par rapport à l'emplacment du dessin appelant sur le disque

Un rep1\mon_xref.dwg veux dire que le dessin doit regarder dans le sous répertoire rep1

un ..\rep1\mon xref.dwg veux dire que le dessin doit remonter d'un cran et ensuite dans le répertoire rep1

 

@+

 

Je pensais tout à fait à ceci, ce qui veut dire que je dois entré l'adresse "..\rep1\mon xref.dwg" à la main?

 

voir la commande projectname , ça sert à ça .

Phil http://www.autospeed.biz

 

Comme quoi, on en apprends tous les jours, même après des années passées sur AutoCAD :)

Je vais donc voir du côté de cette variable voir si ça me conviend.

 

Merci ;)

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Posté(e)

Sans savoir si ça peut répondre à ton souhait, le code suivant serait peut être une source de départ?

 

Je l'avais créer pour un besoin précis et il avait fonctionné pour ce que je voulais obtenir, donc à voir et peut être à creuser d'avatantage.

Si je me souviens bien c'est pour obtenir un chemin relatif au dossier en cours et non fixe (ça fais un moment que je ne l'ai pas utilisé)

 

(defun c:relatif_xref ( / cmd bl ch rc n tot)
(setq
	cmd (getvar "cmdecho")
	tot 0
	ch (getvar "dwgprefix")
	bl (tblnext "block" t)
)
(setvar "cmdecho" 0)
(command "_.undo" "_group")
(princ "\nTravail en cours...")(princ)
(while bl
	(if (= (logand (cdr (assoc 70 bl)) 4) 4)
		(progn
			(setq
				rc (cdr (assoc 1 bl))
				n (vl-string-mismatch rc (getvar "dwgprefix") 0 0 T)
			)
			(cond
				((and (not (zerop n)) (> n 2)) (setq rc (strcat ".." (substr rc n))))
				(T (setq rc ""))
			)
			(if (findfile rc)
				(progn
					(command "_.-xref" "_path" (cdr (assoc 2 bl)) rc)
					(setq tot (1+ tot))
				)
			)
		)
	)
	(setq bl (tblnext "block"))
)
(command "_.undo" "_end")
(setvar "cmdecho" cmd)
(princ (strcat "\nModification de " (itoa tot) " chemin(s)"))
(princ)
)

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

Posté(e)
Sans savoir si ça peut répondre à ton souhait, le code suivant serait peut être une source de départ?

 

Je l'avais créer pour un besoin précis et il avait fonctionné pour ce que je voulais obtenir, donc à voir et peut être à creuser d'avatantage.

Si je me souviens bien c'est pour obtenir un chemin relatif au dossier en cours et non fixe (ça fais un moment que je ne l'ai pas utilisé)

 

(defun c:relatif_xref ( / cmd bl ch rc n tot)
(setq
	cmd (getvar "cmdecho")
	tot 0
	ch (getvar "dwgprefix")
	bl (tblnext "block" t)
)
(setvar "cmdecho" 0)
(command "_.undo" "_group")
(princ "\nTravail en cours...")(princ)
(while bl
	(if (= (logand (cdr (assoc 70 bl)) 4) 4)
		(progn
			(setq
				rc (cdr (assoc 1 bl))
				n (vl-string-mismatch rc (getvar "dwgprefix") 0 0 T)
			)
			(cond
				((and (not (zerop n)) (> n 2)) (setq rc (strcat ".." (substr rc n))))
				(T (setq rc ""))
			)
			(if (findfile rc)
				(progn
					(command "_.-xref" "_path" (cdr (assoc 2 bl)) rc)
					(setq tot (1+ tot))
				)
			)
		)
	)
	(setq bl (tblnext "block"))
)
(command "_.undo" "_end")
(setvar "cmdecho" cmd)
(princ (strcat "\nModification de " (itoa tot) " chemin(s)"))
(princ)
)

 

Je vais essayer ça :D

 

Merci ;)

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

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é