N° | Fonction | Catégorie | Version |
---|---|---|---|
BIB 14 | BiB_PutSym | Gestion des Objets | 1.0 - Janvier 2007 |
But | Permet de modifier avec des variables les valeurs associées de paires pointées. |
Prototype | (BiB_PutSym ‘Liste_PP Nom_Entité) |
Argument | Liste_PP - L’élément à ajouter à la liste - liste - Nom_Entité - Le nom de l'entité - ename - |
Retours | La liste des données modifiées |
Var. globales | Néant |
Description | Permet de modifier avec des variables (ou symboles) les valeurs associées de paires pointées dans la liste de définitions d'une entité à partir de l'ename. |
Notes | Ce programme remplace les variables par leur valeur pour utiliser
BiB_PutLst. Si une des paires pointées n’existe pas, elle est créée et ajoutée
à la liste des définitions. Entmod est intégré dans la fonction et n'est donc pas nécessaire pour la mise à jour. |
Exemples | Commande: (setq t1 (car (entsel))) Choix des objets: <Nom de l'entité: 2590dc0> Commande: (setq t2 (entget t1) <Nom de l'entité: 2590dc0>) ((-1 . <Nom de l'entité: 2590dc0>) (0 . "TEXT") (5 . "138") (100 . "AcDbEntity") (67 . 0) (8 . "MUREXT") (100 . "AcDbText") (10 254.187 135.972 0.0) (40 . 5.0) (1 . "neww") (50 . 0.5) (41 . 1.0) (51 . 0.0) (7 . "STANDARD") (71 . 0) (72 . 0) (11 0.0 0.0 0.0) Commande: (setq e1 "newtext" e2 0) Commande: (BiB_PutSym '((1 . e1)(50 . e2)(10 100 100 0)) t1) ((-1 . <Nom de l'entité: 2590dc0>) (0 . "TEXT") (5 . "138") (100 . "AcDbEntity") (67 . 0) (8 . "MUREXT") (100 . "AcDbText") (10 100 100 0) (40 . 5.0) (1 . "newtext") (50 . 0) (41 . 1.0) (51 . 0.0) (7 . "STANDARD") (71 . 0) (72 . 0) (11 0.0 0.0 0.0)(210 0.0 0.0 1.0) (100 . "AcDbText") (73 . 0)) Le texte est automatiquement mis à jour à l'écran. |
1- (defun PutSym (*ListPP *Ent_Name) 2- (entmod 3- (BiB_PutLst 4- (mapcar '(lambda (PP) 5- (cons (car PP) (BiN_Eval (cdr PP))) 6- ) 7- *ListPP 8- ) 9- (entget *Ent_Name) 10- ) 11- ) 12- )
Ligne 2 : Met à jour les données de l'entité après avoir Ligne 3 : modifié les valeurs associées de *ListPP Ligne 4 : Pour chaque élément de *ListPP, construit une liste associative avec le 1er Ligne 5 : élément et la valeur des autres éléments de la liste Ligne 7 : sinon, retourne la liste des données de l'entité Ligne 9 : retourne la liste des données de l'entité Remplace chaque élément de *ListPP, par une liste associative comprenant le 1er élémént (le code) de l'ancienne liste et la valeur de la suite de la liste (un symbole ou une liste) ; ensuite remplace les nouvelles valeurs avec la fonction BiB_PutLst puis met à jour l'entité à l'écran par Entmod.