「VLE-関数」の版間の差分
| (同じ利用者による、間の10版が非表示) | |||
| 64行目: | 64行目: | ||
==== ユーティリティ関数====  | ==== ユーティリティ関数====  | ||
<div class="mcol3">  | <div class="mcol3">  | ||
* [[vle-aci2rgb]] V15で追加  | |||
* [[vle-alert]]  | * [[vle-alert]]  | ||
* [[vle-atoi32]]  | |||
* [[vle-collection-list|vle-collection->list]]  | * [[vle-collection-list|vle-collection->list]]  | ||
* [[vle-  | * [[vle-compile-shape]] V23.1 で追加  | ||
* [[vle-enableserverbusy]]  | |||
* [[vle-  | |||
* [[vle-fastcom]]  | * [[vle-fastcom]]  | ||
* [[vle-  | * [[vle-hidepromptmenu]]  | ||
* [[vle-int64to32]]  | * [[vle-int64to32]]  | ||
* [[vle-itoa32]]  | * [[vle-itoa32]]  | ||
* [[vle-lispinstall]]  | * [[vle-lispinstall]]  | ||
* [[vle-lispversion]]  | * [[vle-lispversion]]  | ||
* [[vle-licenselevel]] V17で追加  | * [[vle-licenselevel]] V17で追加  | ||
* [[vle-optimizer]]  | |||
* [[vle-ping-alive]]  | * [[vle-ping-alive]]  | ||
* [[vle-rgb2aci]] V15で追加  | |||
* [[vle-ucs-current]] * 実装予定  | |||
* [[vle-ucs-isworld]] * 実装予定  | |||
* [[vle-safearray-list|vle-safearray->list]]  | |||
* [[vle-selectionset-list|vle-selectionset->list]]  | |||
* [[vle-showpromptmenu]]  | |||
* [[vle-startapp]]  | * [[vle-startapp]]  | ||
</div>  | </div>  | ||
-----  | -----  | ||
====ベクトル代数関数====  | ====ベクトル代数関数====  | ||
<div class="mcol3">  | <div class="mcol3">  | ||
* [[vle-vector-add]]  | * [[vle-vector-add]]  | ||
* [[vle-vector-angleonplane]] * 実装予定  | |||
* [[vle-vector-angleto]]  | * [[vle-vector-angleto]]  | ||
* [[vle-vector-angletoref]]  | * [[vle-vector-angletoref]]  | ||
| 96行目: | 100行目: | ||
* [[vle-vector-get]]  | * [[vle-vector-get]]  | ||
* [[vle-vector-getperpvector]]  | * [[vle-vector-getperpvector]]  | ||
* [[vle-vector-gettolerance]]  | |||
* [[vle-vector-getucs]]  | * [[vle-vector-getucs]]  | ||
* [[vle-vector-intersectlinewithplane]] * 実装予定  | |||
* [[vle-vector-intersectplanewithplane]] * 実装予定  | |||
* [[vle-vector-iscodirectional]]  | * [[vle-vector-iscodirectional]]  | ||
* [[vle-vector-isequal]]  | * [[vle-vector-isequal]]  | ||
* [[vle-vector-isparallel]]  | * [[vle-vector-isparallel]]  | ||
* [[vle-vector-isperpendicular]]  | * [[vle-vector-isperpendicular]]  | ||
* [[vle-vector-ispointonline]] * 実装予定  | |||
* [[vle-vector-ispointonplane]] * 実装予定  | |||
* [[vle-vector-isunitlength]]  | * [[vle-vector-isunitlength]]  | ||
* [[vle-vector-isvectoronplane]] * 実装予定  | |||
* [[vle-vector-isxaxis]]  | * [[vle-vector-isxaxis]]  | ||
* [[vle-vector-isyaxis]]  | * [[vle-vector-isyaxis]]  | ||
| 111行目: | 121行目: | ||
* [[vle-vector-length2dyz]]  | * [[vle-vector-length2dyz]]  | ||
* [[vle-vector-midpoint]]  | * [[vle-vector-midpoint]]  | ||
* [[vle-vector-mirrorpointatplane]] * 実装予定  | |||
* [[vle-vector-mirrorvectoratplane]] * 実装予定  | |||
* [[vle-vector-negate]]  | * [[vle-vector-negate]]  | ||
* [[vle-vector-normalise]]  | * [[vle-vector-normalise]]  | ||
* [[vle-vector-orthoprojectpointonplane]] * 実装予定  | |||
* [[vle-vector-orthoprojectpointonline]] * 実装予定  | |||
* [[vle-vector-orthoprojectlinetoplane]] * 実装予定  | |||
* [[vle-vector-projectpointonplane]] * 実装予定  | |||
* [[vle-vector-projectpointonline]] * 実装予定  | |||
* [[vle-vector-projectlinetoplane]] * 実装予定  | |||
* [[vle-vector-rotatepoint]] * 実装予定  | |||
* [[vle-vector-rotatevector]] * 実装予定  | |||
* [[vle-vector-scale]]  | * [[vle-vector-scale]]  | ||
* [[vle-vector-sub]]  | * [[vle-vector-sub]]  | ||
* [[vle-vector-settolerance]]  | * [[vle-vector-settolerance]]  | ||
* [[  | * [[vle-vector-to3d]] * V25.1で追加  | ||
* [[vle-vector-to2d]] * V25.1で追加  | |||
* [[vle-pointp]]  | |||
</div>  | </div>  | ||
-----  | -----  | ||
====記号+定数関数====  | ====記号+定数関数====  | ||
<div class="mcol3">  | <div class="mcol3">  | ||
| 136行目: | 158行目: | ||
* [[vle-entget]]  | * [[vle-entget]]  | ||
* [[vle-entmod]]  | * [[vle-entmod]]  | ||
* [[vle-get-samplepoints]] * 実装予定  | |||
* [[vle-get-samplepointsbydistance]] * 実装予定  | |||
* [[vla-get-xeffectivescalefactor]] V23.2 で追加  | |||
* [[vla-get-yeffectivescalefactor]] V23.2 で追加  | |||
* [[vla-get-zeffectivescalefactor]] V23.2 で追加  | |||
* [[vla-getblockattributevalue]] V24.2 で追加  | * [[vla-getblockattributevalue]] V24.2 で追加  | ||
* [[vla-getblockattributevalue32]] V24.2 で追加  | * [[vla-getblockattributevalue32]] V24.2 で追加  | ||
| 149行目: | 176行目: | ||
* [[vle-dictobjname]]  | * [[vle-dictobjname]]  | ||
* [[vle-is-curve]] V23.1 で追加  | * [[vle-is-curve]] V23.1 で追加  | ||
* [[vla-put-xeffectivescalefactor]] V23.2 で追加  | |||
* [[vla-put-yeffectivescalefactor]] V23.2 で追加  | |||
* [[vla-put-zeffectivescalefactor]] V23.2 で追加  | |||
* [[vla-setblockattributevalue]] V24.2 で追加  | * [[vla-setblockattributevalue]] V24.2 で追加  | ||
* [[vla-setblockattributevalue32]] V24.2 で追加  | * [[vla-setblockattributevalue32]] V24.2 で追加  | ||
| 163行目: | 193行目: | ||
====ファイル関数====  | ====ファイル関数====  | ||
<div class="mcol3">  | <div class="mcol3">  | ||
* [[vle-file-encoding]]  | * [[vle-compile-shape]] * V23.1 で追加  | ||
* [[vle-file-encoding]] * V22.1 で追加  | |||
* [[vle-file-list|vle-file->list]]  | * [[vle-file-list|vle-file->list]]  | ||
*バイナリファイル読み込み関数  | *バイナリファイル読み込み関数  | ||
| 217行目: | 248行目: | ||
-----  | -----  | ||
==== データタイプ関数====  | ==== データタイプ関数====  | ||
<div class="mcol3">  | <div class="mcol3">  | ||
2025年3月22日 (土) 05:55時点における最新版
VLE-関数は、BricsCAD の LISP に搭載されている拡張関数群。(BricsCAD V12.2 から搭載されバージョンを追う毎に拡充されてきている。)
AutoCAD の AutoLISP が R2000 から古いベースのままでパフォーマンスなどがほぼ改良されていないに等しい状態なのに対して、BricsCAD は LISP も他の開発言語と同様な機能やパフォーマンスを提供すべく AutoLISP の関数に極力悪い影響を与えない形で改良されている。VLE-関数は、その一環として追加されているといえる。
事実、BricsCAD の LISP 処理速度は、AutoCAD や他の互換 CAD に比べて控えめに言って爆速といえるパフォーマンスになっている。(V23.2でC++ベースのAPIと大差ないレベルになってる。)
vle-extension.lsp は純粋な AutoLISPコードのみを使用しているため、Windowsだけでなく、LinuxやMacintosh OSが動作している環境でも動作する。
MEMO:
うちで作ってる、GZ-Lib と同じような発想の部分もある。
VLE 関数ライブラリのカテゴリと関数
リスト系関数
- vle-append
 - vle-cadrassoc V20で追加
 - vle-cdrassoc
 - vle-list-intersect
 - vle-list-massoc V16で追加
 - vle-list-split
 - vle-list-subtract
 - vle-list-union
 - vle-list-diff
 - vle-member
 - vle-nth<x>
- vle-nth0,vle-nth1,vle-nth2,vle-nth3,vle-nth4,vle-nth5,vle-nth6,vle-nth7,vle-nth8,vle-nth9,
 
 - vle-put-nth
 - vle-remove-all
 - vle-remove-first
 - vle-remove-last
 - vle-remove-nth
 - vle-search
 - vle-sublist
 - vle-subst-nth
 
文字列関数
- vle-string-replace V17で追加
 - vle-string-split
 - vle-edittextinplace V21.1で追加
 
数学+幾何関数
ユーティリティ関数
- vle-aci2rgb V15で追加
 - vle-alert
 - vle-atoi32
 - vle-collection->list
 - vle-compile-shape V23.1 で追加
 - vle-enableserverbusy
 - vle-fastcom
 - vle-hidepromptmenu
 - vle-int64to32
 - vle-itoa32
 - vle-lispinstall
 - vle-lispversion
 - vle-licenselevel V17で追加
 - vle-optimizer
 - vle-ping-alive
 - vle-rgb2aci V15で追加
 - vle-ucs-current * 実装予定
 - vle-ucs-isworld * 実装予定
 - vle-safearray->list
 - vle-selectionset->list
 - vle-showpromptmenu
 - vle-startapp
 
ベクトル代数関数
- vle-vector-add
 - vle-vector-angleonplane * 実装予定
 - vle-vector-angleto
 - vle-vector-angletoref
 - vle-vector-crossproduct
 - vle-vector-dotproduct
 - vle-vector-get
 - vle-vector-getperpvector
 - vle-vector-gettolerance
 - vle-vector-getucs
 - vle-vector-intersectlinewithplane * 実装予定
 - vle-vector-intersectplanewithplane * 実装予定
 - vle-vector-iscodirectional
 - vle-vector-isequal
 - vle-vector-isparallel
 - vle-vector-isperpendicular
 - vle-vector-ispointonline * 実装予定
 - vle-vector-ispointonplane * 実装予定
 - vle-vector-isunitlength
 - vle-vector-isvectoronplane * 実装予定
 - vle-vector-isxaxis
 - vle-vector-isyaxis
 - vle-vector-iszaxis
 - vle-vector-iszerolength
 - vle-vector-length
 - vle-vector-length2d
 - vle-vector-length2dxz
 - vle-vector-length2dyz
 - vle-vector-midpoint
 - vle-vector-mirrorpointatplane * 実装予定
 - vle-vector-mirrorvectoratplane * 実装予定
 - vle-vector-negate
 - vle-vector-normalise
 - vle-vector-orthoprojectpointonplane * 実装予定
 - vle-vector-orthoprojectpointonline * 実装予定
 - vle-vector-orthoprojectlinetoplane * 実装予定
 - vle-vector-projectpointonplane * 実装予定
 - vle-vector-projectpointonline * 実装予定
 - vle-vector-projectlinetoplane * 実装予定
 - vle-vector-rotatepoint * 実装予定
 - vle-vector-rotatevector * 実装予定
 - vle-vector-scale
 - vle-vector-sub
 - vle-vector-settolerance
 - vle-vector-to3d * V25.1で追加
 - vle-vector-to2d * V25.1で追加
 - vle-pointp
 
記号+定数関数
エンティティ関数
- vla-converttostaticblock V24.2 で追加
 - vla-converttoanonymousblock V24.2 で追加
 - vle-curve-getperimeter
 - vle-entget
 - vle-entmod
 - vle-get-samplepoints * 実装予定
 - vle-get-samplepointsbydistance * 実装予定
 - vla-get-xeffectivescalefactor V23.2 で追加
 - vla-get-yeffectivescalefactor V23.2 で追加
 - vla-get-zeffectivescalefactor V23.2 で追加
 - vla-getblockattributevalue V24.2 で追加
 - vla-getblockattributevalue32 V24.2 で追加
 - vla-getblockattributevalue2 V24.2 で追加
 - vla-getblockattributevalue232 V24.2 で追加
 - vle-getgeomextents
 - vle-dictsearch
 - vle-dictionary-list
 - vle-ename-valid
 - vle-entget-m
 - vle-entget-massoc V16で追加
 - vle-entmod-m
 - vle-dictobjname
 - vle-is-curve V23.1 で追加
 - vla-put-xeffectivescalefactor V23.2 で追加
 - vla-put-yeffectivescalefactor V23.2 で追加
 - vla-put-zeffectivescalefactor V23.2 で追加
 - vla-setblockattributevalue V24.2 で追加
 - vla-setblockattributevalue32 V24.2 で追加
 - vla-setblockattributevalue2 V24.2 で追加
 - vla-setblockattributevalue232 V24.2 で追加
 - vle-sunid V23.1 で追加
 - vle-table-list
 - vle-tblsearch
 
ファイル関数
- vle-compile-shape * V23.1 で追加
 - vle-file-encoding * V22.1 で追加
 - vle-file->list
 - バイナリファイル読み込み関数
- リトルエンディアン
 - vle-read-int8
 - vle-read-int16
 - vle-read-int32
 - vle-read-int64
 - vle-read-uint8
 - vle-read-uint16
 - vle-read-uint32
 - vle-read-uint64
 - vle-read-float
 - vle-read-double
 - vle-read-string
 - ビッグエンディアン
 - vle-read-int8-be
 - vle-read-int16-be
 - vle-read-int32-be
 - vle-read-int64-be
 - vle-read-uint8-be
 - vle-read-uint16-be
 - vle-read-uint32-be
 - vle-read-uint64-be
 - vle-read-float-be
 - vle-read-double-be
 
 - バイナリファイル書き込み関数
- リトルエンディアン
 - vle-write-int8
 - vle-write-int16
 - vle-write-int32
 - vle-write-int64
 - vle-write-uint8
 - vle-write-uint16
 - vle-write-uint32
 - vle-write-uint64
 - vle-write-float
 - vle-write-double
 - vle-write-string
 - ビッグエンディアン
 - vle-write-int8-be
 - vle-write-int16-be
 - vle-write-int32-be
 - vle-write-int64-be
 - vle-write-uint8-be
 - vle-write-uint16-be
 - vle-write-uint32-be
 - vle-write-uint64-be
 - vle-write-float-be
 - vle-write-double-be
 
 
データタイプ関数
トランザクション+表示関数
VLEの記号と定数
- vle-extensions-active : VLEライブラリの有無を示す : VLE機能が利用可能な場合はT、そうでない場合はNIL
 - vle_g_vecTol : (vle-vector-xxx)関数の幾何公差のプリセット、1e-10としてプリセットされる