BiF_FileName

Fonction Catégorie Version
BIF 01 BiF_FileName Gestion de Fichiers 1.0 - Janvier 2007

Description

But Récupère le nom seul du dessin en cours.
Prototype (BiF_FileName)
Argument Néant
Retours Le nom du dessin, sans chemin ni extension. - chaîne -
Var. globales Néant
Description Supprime, s'ils existent le chemin (path) et l'extension (.dwg) du nom du dessin donné par la variable DWGNAME.
Notes Le nom obtenu par DWGNAME pouvant
- contenir ou non le chemin (path),
- être avec ou sans l'extension .dwg,
cette routine permet de ne garder que le nom du dessin, sans extension.
Exemples

Commande: dwgname
DWGNAME = "D:\acad2007\TRV\plan101" 

Commande: (BiF_FileName)  retourne	"plan101"	

La fonction


 1-  (defun FileName (/ Name1) 

 2-   	(setq Name1 (getvar "DWGNAME"))
 3-   	(if (wcmatch Name1 "?:*,*`\*")
 4-     	(setq Name1 (substr Name1 (+ 1 (strlen (getvar "DWGPREFIX")) )))
 5-     )
 6-     (if (wcmatch Name1 "*`.[dD][wW][gG]")
 7-         (setq Name1 (substr Name1 1 (- (strlen Name1) 4 )))
 8-     )
 9-     (eval Name1)
10-  )
Exemple : Command: (getvar"dwgname")	"D:\\ACAD2007\\AFF115\\PL525A.DWG"
	      Command: (getvar"dwgprefix")	"D:\\ACAD2007\\AFF115\\"

Ligne 2 :  Récupère dans Name1 le nom stocké par DWGNAME
Ligne 3 :  Regarde si dans le nom retourné par DWGNAME, il y a les caractères ":" ou "\"
Ligne 4 :    si oui, prendre x la longueur de la chaîne retournée par DWGPREFIX et 
                replacer en Name1 la sous-chaîne de Name1 commençant à x+1 
                (Ici, DWGPREFIX a retourné une chaîne de 20 caractères. En partant du 
                caractère n° 21, jusqu'à la fin, on obtiendra la sous-chaîne "PL52A.DWG"
Ligne 6 :  Regarde si dans le nom il y a  les chaînes " .dwg " ou " .DWG "
Ligne 7 :     Si oui, retourne une sous-chaîne de Name1 commençant au 1er caractère et 
              d'une longueur de 4 caractères en moins, ce qui supprime l'extension. 
              Ici, on aura "PL52A"
Ligne 9 :  Retourne le nom du dessin.
Wcmatch : Regarde si les caractères indiqués entre guillemets ne sont pas dans Name1.
Subst : chaîne début [longueur] : retourne une sous-chaîne de chaîne commençant à début. Si longueur n'est pas spécifiée, continue jusqu'à la fin (C'est le cas en ligne 4 mais pas en ligne 7).
Strlen : Retourne la longueur d'une chaîne.
Eval : Evalue une expression.