「IAcSmDatabase」の版間の差分
(ページの作成:「{{BCAD_LISP}} SheetSet Database のメインインターフェイス。 使用可能なメソッド (setq cad (vlax-get-acad-object)) (setq ssmgr (vla-GetInterfaceObj…」) |
編集の要約なし |
||
127行目: | 127行目: | ||
|- | |- | ||
|} | |} | ||
----- | |||
関連記事 | |||
* [[シートセット関数-BricsCAD]] |
2022年8月8日 (月) 08:05時点における最新版
SheetSet Database のメインインターフェイス。
使用可能なメソッド
(setq cad (vlax-get-acad-object)) (setq ssmgr (vla-GetInterfaceObject cad "BricscadSm.AcSmSheetSetMgr")) (setq smdb (vlax-invoke-method ssmgr 'OpenDatabase dstfile))
項目 | 内容 |
---|---|
LoadFromFile | 指定されたDSTテンプレート・データベースから(再)ロードするか、テンプレートが指定されていない場合("0 "として)割り当てられたDSTデータベース・ファイルから再初期化する。
(setq smdb (vlax-invoke-method ssmgr 'CreateDatabase "")) (setq res (vlax-invoke-method smdb 'LoadFromFile dstfile)) HRESULT LoadFromFile ([in, optional, defaultvalue("0")] BSTR templateDstFile) |
GetFileName | このデータベースが関連付けられている DST ファイルを返す。
(setq name (vlax-invoke-method smdb 'GetFileName)) HRESULT GetFileName ([out, retval] BSTR* pFilename) |
SetFileName | このデータベースが関連する DST ファイルを指定する (一度だけ。新しい IAcSmDatabase が構築された後)。
(setq smdb (vlax-invoke-method ssmgr 'CreateDatabase "")) (vlax-invoke-method smdb 'SetFileName dstFile) HRESULT SetFileName ([in] BSTR filename) |
GetTemplateDstFileName | LoadFromFile で使用したテンプレート DST ファイルを返す。
(setq name (vlax-invoke-method smdb 'GetTemplateDstFileName)) HRESULT GetTemplateDstFileName ([out, retval] BSTR* pFilename) |
GetSheetSet | この IAcSmDatabase が管理する IAcSmSheetSet コンポーネントを返す。
(setq sheetset (vlax-invoke-method smdb 'GetSheetSet)) HRESULT GetSheetSet ([out, retval] IAcSmSheetSet** pSheetSet) |
LockDb | 指定されたオブジェクトの変更を許可するために、この IAcSmDatabase をロックする。
(setq res (vlax-invoke-method smdb 'LockDb smdb)) ;; locks the entire database HRESULT LockDb ([in] IUnknown* pObject) |
UnlockDb | この IAcSmDatabase のロックを解除し (すべての変更が完了した後)、オプション (デフォルト) でディスクファイルにコミットする。
(setq res (vlax-invoke-method smdb 'UnlockDb smdb :vlax-false)) ;; unlocks the entire database, not committed to disk (setq res (vlax-invoke-method smdb 'UnlockDb smdb :vlax-false)) ;; unlocks the entire database, committed to disk HRESULT UnlockDb ([in] IUnknown* pObject, [in, optional, defaultvalue(-1)] VARIANT_BOOL bCommit) |
GetLockStatus | この IAcSmDatabase のロック状態を返す。
(setq res (vlax-invoke-method smdb 'GetLockStatus)) HRESULT GetLockStatus ([out, retval] AcSmLockStatus* pStatus) |
GetLockOwnerInfo | 現在のロックの所有者に関する情報を返す。
(setq res (vlax-invoke-method smdb 'GetLockOwnerInfo 'lockUser 'lockMachine)) HRESULT GetLockOwnerInfo ([out] BSTR* pUserName, [out] BSTR* pMachineName) |
GetNewObjectId | 指定されたオブジェクトハンドルの IAcSmObjectId を返す (必要であれば、それを作成する)。
(setq id (vlax-invoke-method smdb GetNewObjectId handle 'cookie)) HRESULT GetNewObjectId ([in] BSTR hand, [out] long* pCookie, [out, retval] IAcSmObjectId** ppObjectId |
RegisterOwner | オブジェクト階層を作成するために、提供された IAcSmPersist オブジェクトの所有者を定義する。
(vlax-invoke-method smdb RegisterOwner cookie object ownerObject) HRESULT RegisterOwner ([in] long cookie, [in] IAcSmPersist* pObject, [in] IAcSmPersist* pOwner) |
GetEnumerator | この IAcSmDatabase の列挙子 (イテレータ) オブジェクトを返す (含まれる全てのオブジェクトをイテレートする)
(setq iter (vlax-invoke-method smdb 'GetEnumerator)) HRESULT GetEnumerator ([out, retval] IAcSmEnumPersist** ppEnumerator) |
FindObject | 指定された永続オブジェクトハンドルの IAcSmPersist オブジェクトを返す。
(setq handle (vlax-invoke-method sheetset 'GetObjectId)) (setq handle (vlax-invoke-method handle 'GetHandle)) (setq obj (vlax-invoke-method smdb 'FindObject handle)) HRESULT FindObject ([in] BSTR hand, [out, retval] IAcSmPersist** ppObject) |
FindAcDbObjectReferences | 指定された AcDbObject データベースオブジェクトを参照する IAcSmAcDbObjectReference オブジェクトの配列を返す。
(setq blocks (vla-get-Blocks (vla-get-activedocument cad))) (setq block (vla-item blocks "test")) (setq res (vlax-invoke-method smdb 'FindAcDbObjectReferences block)) HRESULT FindAcDbObjectReferences ([in] IAcadObject* pAcDbObject, [out, retval] SAFEARRAY(IUnknown*)* ppObjects) |
UpdateInMemoryDwgHints | この IAcSmDatabase が参照するすべてのオープンな図面中のヒントを更新する。
(setq res (vlax-invoke-method smdb 'UpdateInMemoryDwgHints)) HRESULT UpdateInMemoryDwgHints () |
GetIsTemporary | この IAcSmDatabase が持続的であるかどうかを返す。
(setq res (vlax-invoke-method smdb 'GetIsTemporary)) HRESULT GetIsTemporary ([out, retval] VARIANT_BOOL* isTemporary) |
SetIsTemporary | この IAcSmDatabase が永続的でないと定義する。
(setq res (vlax-invoke-method smdb 'SetIsTemporary)) HRESULT SetIsTemporary () |
GetDbVersion | IAcSmDatabase バージョンを返す。
(setq res (vlax-invoke-method smdb 'GetDbVersion)) HRESULT GetDbVersion ([out, retval] BSTR* pVersionString) |
関連記事