「Acet-list-remove-duplicate-points」の版間の差分
(ページの作成:「{{AutoLISP}} ; 構文 : (acet-list-remove-duplicates-points ''datalist'' ''fuz'' ) ; 機能 : datalist から許容差 fuz を考慮した同じ値を取り除いたリストを返す。 ; 引数 :* datalist … 評価するリスト :* fuz … 許容誤差 ; 戻り値 : 重複が取り除かれた datalist のリスト。lst が NIL の場合は NIL を返す。 ===MEMO=== * 除去はリスト値の最初から処理されるのでリスト値の順番に…」) |
編集の要約なし |
||
(同じ利用者による、間の1版が非表示) | |||
5行目: | 5行目: | ||
; 機能 | ; 機能 | ||
: datalist から許容差 fuz | : 座標点リスト datalist から許容差 fuz を考慮した重複するエントリーをすべて削除してリストを返す。 | ||
; 引数 | ; 引数 | ||
:* datalist … | :* datalist … 座標点リスト | ||
:* fuz … 許容誤差 | :* fuz … 許容誤差 | ||
; 戻り値 | ; 戻り値 | ||
: 重複が取り除かれた datalist | : 重複が取り除かれた datalist のリスト。datalist が NIL の場合は NIL を返す。 | ||
===MEMO=== | ===MEMO=== | ||
* | * 除去はリスト値の最初から処理されるので fuz 指定時はリスト値の順番により異なる結果になりえる。 | ||
* 2D点と3D点は別物として扱われる。 | |||
; サンプル | ; サンプル | ||
<pre class="brush:autolisp;"> | <pre class="brush:autolisp;"> | ||
(acet-list-remove- | (acet-list-remove-duplicate-points '((0 0) (0 0 0) (10.2 10) (10.2 10) (10.2 10)) 0) | ||
( | ((0 0) (0 0 0) (10.2 10)) | ||
; 2D点と3D点は別物として扱われるので 0,0 と 0,0,0 が残ってる | |||
(acet-list-remove- | (acet-list-remove-duplicate-points nil nil) | ||
nil | |||
( | (acet-list-remove-duplicate-points '((0 0) (0 0.1) (10.0 10.0) (10.0 10.1) (10.1 10.0) (10.1 10.1) (10.2 10.1) (9.8 10.1)) 0.1) | ||
(1.1 1.2 1. | ((0 0) (10.0 10.0) (10.2 10.1) (9.8 10.1)) | ||
; すべての座標点がfuzの範囲内なら除去される | |||
(acet-list-remove-duplicate-points '((0 0) (0 0.1) (10.0 10.1) (10.0 10.0) (10.1 10.0) (10.1 10.1) (10.2 10.1) (9.8 10.1)) 0.1) | |||
((0 0) (10.0 10.1) (10.2 10.1) (9.8 10.1)) | |||
(acet-list-remove- | ; (10.0 10.0) と (10.0 10.1) の順番違いで残る値が変わってる | ||
( | |||
( | |||
; | |||
</pre> | </pre> |
2025年8月10日 (日) 05:28時点における最新版
- 構文
- (acet-list-remove-duplicates-points datalist fuz )
- 機能
- 座標点リスト datalist から許容差 fuz を考慮した重複するエントリーをすべて削除してリストを返す。
- 引数
-
- datalist … 座標点リスト
- fuz … 許容誤差
- 戻り値
- 重複が取り除かれた datalist のリスト。datalist が NIL の場合は NIL を返す。
MEMO
- 除去はリスト値の最初から処理されるので fuz 指定時はリスト値の順番により異なる結果になりえる。
- 2D点と3D点は別物として扱われる。
- サンプル
(acet-list-remove-duplicate-points '((0 0) (0 0 0) (10.2 10) (10.2 10) (10.2 10)) 0) ((0 0) (0 0 0) (10.2 10)) ; 2D点と3D点は別物として扱われるので 0,0 と 0,0,0 が残ってる (acet-list-remove-duplicate-points nil nil) nil (acet-list-remove-duplicate-points '((0 0) (0 0.1) (10.0 10.0) (10.0 10.1) (10.1 10.0) (10.1 10.1) (10.2 10.1) (9.8 10.1)) 0.1) ((0 0) (10.0 10.0) (10.2 10.1) (9.8 10.1)) ; すべての座標点がfuzの範囲内なら除去される (acet-list-remove-duplicate-points '((0 0) (0 0.1) (10.0 10.1) (10.0 10.0) (10.1 10.0) (10.1 10.1) (10.2 10.1) (9.8 10.1)) 0.1) ((0 0) (10.0 10.1) (10.2 10.1) (9.8 10.1)) ; (10.0 10.0) と (10.0 10.1) の順番違いで残る値が変わってる
関連事項