N° | Fonction | Catégorie | Version |
---|---|---|---|
BIB 04 | BiB_Attr_Data | Gestion des Objets | 1.0 - Janvier 2007 |
But | Retourne les valeurs de tous les attributs d'un bloc. |
Prototype | ( BiB_Attr_Data Ename_Bloc) |
Argument | Ename_Bloc- Le nom (ename) de l'entité bloc - Ename - |
Retours | Une liste |
Var. globales | Néant |
Description | Cette fonction retourne une liste de sous-listes. Chaque sous-liste comprenant : - L'étiquette de l'attribut, - La valeur de l'attribut. |
Notes | Voir BiB_Attr_Lst pour avoir les valeurs par défaut et les messages. - Si le bloc ne contient pas d’attribut, la fonction retourne nil. - Si l’entité sélectionnée n’est pas un bloc, la fonction retourne nil. |
Exemples | Commande: liste Choix des objets: 1 trouvé(s) Choix des objets: REFERENCE DU BLOC Calque: 0 Espace: Espace objet Maintien = 4E6 CARTOUCHE au point, X= 6.2488 Y= 6.3658 Z= 0.0000 X facteur d'échelle 1.0000 ... ATTRIBUT Calque: TITLE Espace: Espace objet Couleur: 2 (jaune) Type de ligne: DUCALQUE ... ... hauteur 5.0000 valeur AFFAIRE 3198 étiquette CP_TJNO ... ATTRIBUT Calque: TITLE Espace: Espace objet Couleur: 2 (jaune) Type de ligne: DUCALQUE Maintien = 4E8 ... Commande: (BiB_Attr_Lst (entlast)) retourne (("CP_TJNO" "AFFAIRE 3198") ("CP_TDWG" "3145AZ") ("CP_TREV" "01") ("CLIENT" "MARTIN & CO") ("REF-CLIENT" "452A") ("TITRE-LIGNE1" "TRAIN AR") ("TITRE-LIGNE2" "LONGERON 25") ("ECH" "1/50") ("FT" "A3") ("DATE" "01/03/99")) |
1- (defun BiB_Attr_Data (*E_Block / l_Attr) 2- (if (= (cdr (assoc 0 (entget *E_Block))) "INSERT") 3- (progn 4- (while *E_Block 5- (if (= (cdr (assoc 0 (entget *E_Block))) "ATTRIB") 6- (setq l_Attr (cons (list (cdr (assoc 2 (entget *E_Block))) 7- (cdr (assoc 1 (entget *E_Block))) 8- ) 9- l_Attr 10- ) 11- ) 12- ) 13- (setq *E_Block (entnext *E_Block)) 14- ) ; fin de while 15- ) ; fin de progn 16- ) ; fin de if 17- (reverse l_Attr) 18- )
Ligne 2 : Si l’entité dont le nom est donné en argument est bien un bloc, Ligne 4 : - Tant que *E_Block n’est pas nul, Ligne 5 : Si la sous-entité du bloc est un attribut (nom associé à 0 = ATTRIB) Ligne 6 : Construit une liste l_Attr contenant - l’étiquette (associée au code 2) Ligne 7 : - la valeur de l’attribut (associée au code 1) Ligne 13 : Passe à la sous-entité suivante Ligne 14 : Remonte ligne 5 tant qu’il y a des entités dans le bloc. Ligne 17 : Retourne la liste l_Attr après avoir inversé l’ordre des sous-listes..