获取数据或XRECORD
大家好,我决定用字典来存储变量。我成功做到了这一点:
(defun GetOrAddDict ( parentDict dictName )
(cond
( (cdr
(assoc -1
(dictsearch
parentDict
dictName
)
)
)
)
( (dictadd parentDict dictName
(entmakex
'( (0 . "DICTIONARY")
(100 . "AcDbDictionary")
)
)
)
)
)
)
(defun AddOrReplaceXrec ( parentDict xrecName xrecData / xrec )
(if
(setq xrec
(dictsearch
parentDict
xrecName
)
)
(entdel
(cdr
(assoc -1 xrec)
)
)
)
(dictadd
parentDict
xrecName
(entmakex
(append
'( (0 . "XRECORD")
(100 . "AcDbXrecord")
)
xrecData
)
)
)
)
(defun C:BUILDDICTIONARY ( / dict1 xrec00 xrec01 xrec02 xrec03 xrec04 xrec05 xrec06 xrec07 xrec08 xrec09 xrec10 xrec11 xrec12 xrec13 xrec14 xrec15 xrec16 xrec17 xrec18 xrec19 xrec20 xrec21 xrec22 xrec23 xrec24 xrec25 xrec26 xrec27 xrec28 xrec29 xrec30 xrec31 xrec32 xrec33 xrec34 xrec35 xrec36 xrec37 xrec38 xrec39 xrec40 xrec41 xrec42 xrec43 xrec44 xrec45 xrec46 xrec47 xrec48 xrec49 xrec50 xrec51 xrec52 xrec53 xrec54 xrec55 xrec56 xrec57 xrec58 xrec59 xrec60 xrec61 xrec62 xrec63 xrec64 xrec65 xrec66 xrec67 xrec68 xrec69 xrec70 xrec71 xrec72 xrec73 xrec74 xrec75 xrec76 xrec77 xrec78 xrec79 xrec80 xrec81 xrec82 xrec83 xrec84 xrec85 xrec86 xrec87 xrec88 xrec89 xrec90 xrec91 xrec92 xrec93 xrec94 xrec95 xrec96 xrec97 xrec98 xrec99 )
(if (not (setq adict (dictsearch (namedobjdict) "MyDictionary1")))
(progn
(setq dict1
(GetOrAddDict
(namedobjdict)
"MyDictionary1"
)
)
(setq xrec00 (AddOrReplaceXrec dict1 "Fase00" '( (1 . "00-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec01 (AddOrReplaceXrec dict1 "Fase01" '( (1 . "01-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec02 (AddOrReplaceXrec dict1 "Fase02" '( (1 . "02-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec03 (AddOrReplaceXrec dict1 "Fase03" '( (1 . "03-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec04 (AddOrReplaceXrec dict1 "Fase04" '( (1 . "04-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec05 (AddOrReplaceXrec dict1 "Fase05" '( (1 . "05-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec06 (AddOrReplaceXrec dict1 "Fase06" '( (1 . "06-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec07 (AddOrReplaceXrec dict1 "Fase07" '( (1 . "07-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec08 (AddOrReplaceXrec dict1 "Fase08" '( (1 . "08-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec09 (AddOrReplaceXrec dict1 "Fase09" '( (1 . "09-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec10 (AddOrReplaceXrec dict1 "Fase10" '( (1 . "10-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec11 (AddOrReplaceXrec dict1 "Fase11" '( (1 . "11-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec12 (AddOrReplaceXrec dict1 "Fase12" '( (1 . "12-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec13 (AddOrReplaceXrec dict1 "Fase13" '( (1 . "13-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec14 (AddOrReplaceXrec dict1 "Fase14" '( (1 . "14-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec15 (AddOrReplaceXrec dict1 "Fase15" '( (1 . "15-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec16 (AddOrReplaceXrec dict1 "Fase16" '( (1 . "16-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec17 (AddOrReplaceXrec dict1 "Fase17" '( (1 . "17-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec18 (AddOrReplaceXrec dict1 "Fase18" '( (1 . "18-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec19 (AddOrReplaceXrec dict1 "Fase19" '( (1 . "19-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec20 (AddOrReplaceXrec dict1 "Fase20" '( (1 . "20-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec21 (AddOrReplaceXrec dict1 "Fase21" '( (1 . "21-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec22 (AddOrReplaceXrec dict1 "Fase22" '( (1 . "22-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec23 (AddOrReplaceXrec dict1 "Fase23" '( (1 . "23-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec24 (AddOrReplaceXrec dict1 "Fase24" '( (1 . "24-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec25 (AddOrReplaceXrec dict1 "Fase25" '( (1 . "25-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec26 (AddOrReplaceXrec dict1 "Fase26" '( (1 . "26-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec27 (AddOrReplaceXrec dict1 "Fase27" '( (1 . "27-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec28 (AddOrReplaceXrec dict1 "Fase28" '( (1 . "28-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec29 (AddOrReplaceXrec dict1 "Fase29" '( (1 . "29-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec30 (AddOrReplaceXrec dict1 "Fase30" '( (1 . "30-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec31 (AddOrReplaceXrec dict1 "Fase31" '( (1 . "31-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec32 (AddOrReplaceXrec dict1 "Fase32" '( (1 . "32-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec33 (AddOrReplaceXrec dict1 "Fase33" '( (1 . "33-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec34 (AddOrReplaceXrec dict1 "Fase34" '( (1 . "34-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec35 (AddOrReplaceXrec dict1 "Fase35" '( (1 . "35-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec36 (AddOrReplaceXrec dict1 "Fase36" '( (1 . "36-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec37 (AddOrReplaceXrec dict1 "Fase37" '( (1 . "37-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec38 (AddOrReplaceXrec dict1 "Fase38" '( (1 . "38-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec39 (AddOrReplaceXrec dict1 "Fase39" '( (1 . "39-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec40 (AddOrReplaceXrec dict1 "Fase40" '( (1 . "40-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec41 (AddOrReplaceXrec dict1 "Fase41" '( (1 . "41-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec42 (AddOrReplaceXrec dict1 "Fase42" '( (1 . "42-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec43 (AddOrReplaceXrec dict1 "Fase43" '( (1 . "43-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec44 (AddOrReplaceXrec dict1 "Fase44" '( (1 . "44-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec45 (AddOrReplaceXrec dict1 "Fase45" '( (1 . "45-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec46 (AddOrReplaceXrec dict1 "Fase46" '( (1 . "46-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec47 (AddOrReplaceXrec dict1 "Fase47" '( (1 . "47-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec48 (AddOrReplaceXrec dict1 "Fase48" '( (1 . "48-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec49 (AddOrReplaceXrec dict1 "Fase49" '( (1 . "49-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec50 (AddOrReplaceXrec dict1 "Fase50" '( (1 . "50-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec51 (AddOrReplaceXrec dict1 "Fase51" '( (1 . "51-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec52 (AddOrReplaceXrec dict1 "Fase52" '( (1 . "52-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec53 (AddOrReplaceXrec dict1 "Fase53" '( (1 . "53-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec54 (AddOrReplaceXrec dict1 "Fase54" '( (1 . "54-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec55 (AddOrReplaceXrec dict1 "Fase55" '( (1 . "55-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec56 (AddOrReplaceXrec dict1 "Fase56" '( (1 . "56-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec57 (AddOrReplaceXrec dict1 "Fase57" '( (1 . "57-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec58 (AddOrReplaceXrec dict1 "Fase58" '( (1 . "58-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec59 (AddOrReplaceXrec dict1 "Fase59" '( (1 . "59-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec60 (AddOrReplaceXrec dict1 "Fase60" '( (1 . "60-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec61 (AddOrReplaceXrec dict1 "Fase61" '( (1 . "61-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec62 (AddOrReplaceXrec dict1 "Fase62" '( (1 . "62-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec63 (AddOrReplaceXrec dict1 "Fase63" '( (1 . "63-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec64 (AddOrReplaceXrec dict1 "Fase64" '( (1 . "64-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec65 (AddOrReplaceXrec dict1 "Fase65" '( (1 . "65-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec66 (AddOrReplaceXrec dict1 "Fase66" '( (1 . "66-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec67 (AddOrReplaceXrec dict1 "Fase67" '( (1 . "67-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec68 (AddOrReplaceXrec dict1 "Fase68" '( (1 . "68-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec69 (AddOrReplaceXrec dict1 "Fase69" '( (1 . "69-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec70 (AddOrReplaceXrec dict1 "Fase70" '( (1 . "70-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec71 (AddOrReplaceXrec dict1 "Fase71" '( (1 . "71-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec72 (AddOrReplaceXrec dict1 "Fase72" '( (1 . "72-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec73 (AddOrReplaceXrec dict1 "Fase73" '( (1 . "73-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec74 (AddOrReplaceXrec dict1 "Fase74" '( (1 . "74-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec75 (AddOrReplaceXrec dict1 "Fase75" '( (1 . "75-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec76 (AddOrReplaceXrec dict1 "Fase76" '( (1 . "76-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec77 (AddOrReplaceXrec dict1 "Fase77" '( (1 . "77-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec78 (AddOrReplaceXrec dict1 "Fase78" '( (1 . "78-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec79 (AddOrReplaceXrec dict1 "Fase79" '( (1 . "79-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec80 (AddOrReplaceXrec dict1 "Fase80" '( (1 . "80-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec81 (AddOrReplaceXrec dict1 "Fase81" '( (1 . "81-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec82 (AddOrReplaceXrec dict1 "Fase82" '( (1 . "82-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec83 (AddOrReplaceXrec dict1 "Fase83" '( (1 . "83-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec84 (AddOrReplaceXrec dict1 "Fase84" '( (1 . "84-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec85 (AddOrReplaceXrec dict1 "Fase85" '( (1 . "85-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec86 (AddOrReplaceXrec dict1 "Fase86" '( (1 . "86-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec87 (AddOrReplaceXrec dict1 "Fase87" '( (1 . "87-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec88 (AddOrReplaceXrec dict1 "Fase88" '( (1 . "88-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec89 (AddOrReplaceXrec dict1 "Fase89" '( (1 . "89-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec90 (AddOrReplaceXrec dict1 "Fase90" '( (1 . "90-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec91 (AddOrReplaceXrec dict1 "Fase91" '( (1 . "91-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec92 (AddOrReplaceXrec dict1 "Fase92" '( (1 . "92-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec93 (AddOrReplaceXrec dict1 "Fase93" '( (1 . "93-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec94 (AddOrReplaceXrec dict1 "Fase94" '( (1 . "94-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec95 (AddOrReplaceXrec dict1 "Fase95" '( (1 . "95-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec96 (AddOrReplaceXrec dict1 "Fase96" '( (1 . "96-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec97 (AddOrReplaceXrec dict1 "Fase97" '( (1 . "97-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec98 (AddOrReplaceXrec dict1 "Fase98" '( (1 . "98-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(setq xrec99 (AddOrReplaceXrec dict1 "Fase99" '( (1 . "99-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"))))
(princ "Dictionary aangemaakt")
)
(progn
(princ "Dictionary bestaat al.")
)
)
(princ)
)
我的最后一个问题。。。
我怎样才能读出我的Xrecord?
例如,我想要:
(defun C:getvars ()
(setq dict1 (GetOrAddDict (namedobjdict) "MyDictionary1" ))
(setq variables dict1 "Fase11" )
)
红色部分不工作。。。
我希望结果是:
setq variables = "11-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000"
有什么建议吗? (setq dict1 (GetOrAddDict (namedobjdict) "MyDictionary1"))
(setq elst (dictsearch dict1 "Fase11")) ; Entity list.
(setq data (cdr (member (assoc 280 elst) elst))) 当使用非您自己的代码时,您应该提供适当的认证。
原始来源:
https://www.theswamp.org/index.php?topic=5003.15 对不起,李,你的右边。
这是我找到并使用的源代码,并对其进行了一些操作。。。
最后一个问题。。。
以下工作:
(AddOrReplaceXrec dict1 "Fase00" '( (1 . "00-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000-0000000")))
现在我想让它看起来像:
(setq testvalue "111-111")
(AddOrReplaceXrec dict1 "Fase00" '( (1 . testvalue)))
但这会返回一个错误:
Error: bad DXF group: (1 . TESTVALUE)
我应该如何替换XRecord的“setq”内容?
我试图用“SUBST”函数来解决它,但我无法让它工作。 对此有什么建议吗? (AddOrReplaceXrec dict1 "Fase00" (list (cons 1 testvalue))) 谢谢Roy,
我又在想难了。:-)
页:
[1]