「VLE-関数」の版間の差分
| 136行目: | 136行目: | ||
* [[vle-entget]]  | * [[vle-entget]]  | ||
* [[vle-entmod]]  | * [[vle-entmod]]  | ||
* [[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行目: | 152行目: | ||
* [[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 で追加  | ||
2024年9月27日 (金) 08:01時点における版
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-alert
 - vle-collection->list
 - vle-safearray->list
 - vle-aci2rgb V15で追加
 - vle-rgb2aci V15で追加
 - vle-selectionset->list
 - vle-fastcom
 - vle-optimizer
 - vle-int64to32
 - vle-atoi32
 - vle-itoa32
 - vle-hidepromptmenu
 - vle-showpromptmenu
 - vle-lispinstall
 - vle-lispversion
 - vle-licenselevel V17で追加
 - vle-ping-alive
 - vle-startapp
 - vle-enableserverbusy
 - vle-compile-shape V23.1 で追加
 
ベクトル代数関数
- vle-vector-add
 - vle-vector-angleto
 - vle-vector-angletoref
 - vle-vector-crossproduct
 - vle-vector-dotproduct
 - vle-vector-get
 - vle-vector-getperpvector
 - vle-vector-getucs
 - vle-vector-iscodirectional
 - vle-vector-isequal
 - vle-vector-isparallel
 - vle-vector-isperpendicular
 - vle-vector-isunitlength
 - 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-negate
 - vle-vector-normalise
 - vle-vector-scale
 - vle-vector-sub
 - vle-vector-gettolerance
 - vle-vector-settolerance
 - vl-vector-project-pointToEntity
 
記号+定数関数
エンティティ関数
- vla-converttostaticblock V24.2 で追加
 - vla-converttoanonymousblock V24.2 で追加
 - vle-curve-getperimeter
 - vle-entget
 - vle-entmod
 - 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-file-encoding
 - 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としてプリセットされる