BiB_Ename

Fonction Catégorie Version
BIB 05 BiB_Ename Gestion des Objets 1.0 - Janvier 2007

Description

But Retourne le “ Ename ” d’une entité
Prototype ( BiB_Ename Entité)
Argument Entité - L'entité sélectionnée - Divers -
Retours Le 'ename'
Var. globales Néant
Description Cette fonction retourne l’Ename d’une entité sélectionnée par :
- Son ename lui-même
- Une liste Entsel (sélection à l’écran)
- Une liste Entget.
Notes Permet de récupérer les caractéristiques d’une entité, sans se soucier du mode de sélection de l’entité.
Exemples

Commande: line
To point:
To point:

Command: (setq Ent1 (entlast))
	<Entity name: 21a0a40>
	
Command: (BiB_Ename Ent1)
    retourne 	<Entity name: 21a0a40>
    Ici, Ent1 est déjà un Ename.

Command: (setq Ent2 (entsel))
Select object: (<Entity name: 21a09a8> (187.889 68.034 0.0))

Command: (BiB_Ename Ent2)
    retourne 	<Entity name: 21a09a8>
    Ici, Ent2 est une liste Entsel.

Command: (setq L1 (entget Ent1))
((-1 . <Entity name: 21a0a40>) (0 . "LINE") (5 . "228") (100 
. "AcDbEntity") (67 . 0) (8 . "0") (100 . "AcDbLine") (10 
53.7156 238.85 0.0) (11 168.137 247.016 0.0) (210 0.0 0.0 1.0))

Command: (BiB_Ename L1)
    retourne 	<Entity name: 21a0a40>
    Ici, L1 est une liste Entget

Command: (Bib_Ename EntX)	retourne 	nil
    EntX  n’est pas défini.

La fonction


 1-  (defun BiB_Ename (*Elm)
	
 2-    (cond
 3-        ((= (type *Elm) 'ENAME)
 4-             *Elm
 5-        )
 6-        ((not (listp *Elm)) 
 7-            nil
 8-        )
 9-        ((= (type (car *Elm)) 'ENAME) 
10-           (car *Elm)
11-        )
12-        ((cdr (assoc -1 *Elm)))
13-    )
14-  )
Ligne 2:     Conditions
Lignes 3-5 :    Si l’argument *Elm est déjà un Ename, retoune cet Ename
Lignes 6-8 :    Ensuite, si *Elm n’est pas une liste, retourne nil.
Lignes 9-11 :   Si le 1er élément de l’argument *Elm est un Ename, retourne cet 
                      Ename  (Liste Entsel)
Ligne 12 :      Si c’est une liste entget retourne la valeur associée à –1, sinon nil.                


Type : Renvoie le type de l'élément spécifié.
Listp : Retourne T si *Elm est une liste, nil dans les autres cas.
Car : Renvoie le premier élément d'une liste.
Cdr : Renvoie une liste contenant tous les éléments de cette liste sauf le premier.
Assoc : Recherche un élément dans la liste d’association et renvoie la liste correspondante.