「Gz:massocd」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
編集の要約なし
 
(同じ利用者による、間の1版が非表示)
5行目: 5行目:


; 機能
; 機能
: [[assocd]] の複数版。連想配列リスト中にある key の項目すべての値(cdr値)をリストで返す。
: [[gz:assocd]] の複数版。連想配列リスト中にある key の項目すべての値(cdr値)をリストで返す。




46行目: 46行目:
(gz:massocd 'size al)
(gz:massocd 'size al)
(4.7263 "XL")
(4.7263 "XL")
; entlast がポリラインだったとして頂点リストをつくる
(GZ:Massocd '10 (entget (entlast)))
((58.0 211.0) (103.414094804354 238.323250046455) (138.633035388167 213.652898931121) (109.946580602894 172.700642438316) (75.294583321763 167.777321970532))


</pre>
</pre>
52行目: 56行目:
関連事項
関連事項
* [[assoc]] 関数
* [[assoc]] 関数
* [[gz:assocd]] 関数
* [[gz:massoc]] 関数
* [[gz:massoc]] 関数
* [[gz:massocd]] 関数
* [[gz:massocd]] 関数

2022年11月29日 (火) 08:26時点における最新版

構文
(gz:massocd key lst)


機能
gz:assocd の複数版。連想配列リスト中にある key の項目すべての値(cdr値)をリストで返す。


引数
  • key : 要素のキー
  • lst : 検索対象の連想リスト。


戻り値
key が lst の中で見つかった場合は項目を連想リストで返し、見つからなかった場合は、nil を返す。


サンプル
(setq lst '((1040 . 1) (10 . 1) (108 . 1) (1040 . "a")))
(GZ:Massoc '1040 lst) 
((1040 . 1) (1040 . "a"))

(GZ:Massocd '1040 lst) 
(1 "a")

(GZ:Massocd '1040 '((1040 . 1) (10 . 1) (108 . 1) (1040 . "a") (1040 "c" 1 2 3)))
(1 "a" ("c" 1 2 3))


(GZ:Massocd '1060 lst) 
nil

(setq al '((name "box") (width 3) (size 4.7263) (depth 5) (size "XL")))
(assoc 'size al)
(SIZE 4.7263)

(gz:massoc 'size al)
((SIZE 4.7263) (SIZE "XL"))

(gz:massocd 'size al)
((4.7263) ("XL"))

(setq al '((name . "box") (width . 3) (size . 4.7263) (depth . 5) (size . "XL")))
(gz:massocd 'size al)
(4.7263 "XL")

; entlast がポリラインだったとして頂点リストをつくる
(GZ:Massocd '10 (entget (entlast)))
((58.0 211.0) (103.414094804354 238.323250046455) (138.633035388167 213.652898931121) (109.946580602894 172.700642438316) (75.294583321763 167.777321970532))


関連事項