Vla-import

提供:GizmoLabs - だいたい CAD LISP なサイト
2015年11月1日 (日) 17:08時点におけるGizmon (トーク | 投稿記録)による版 (ページの作成:「{{AutoLISP}} ; 構文 * Document : (vla-import ''vla-object'' ''FileName '' ''InsertionPoint '' ''ScaleFactor'' ) * LayerStateManager : (vla-import ''vla-object'' ''Fi...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
  • Document
(vla-import vla-object FileName InsertionPoint ScaleFactor )
  • LayerStateManager
(vla-import vla-object FileName )


機能
ファイルから図面または保存された画層設定のグループを読み込む。


引数

Document

  • vla-object … Document の VLAオブジェクト
  • FileName … 読み込まれるファイルの名前。
  • InsertionPoint … 読み込まれたファイルが配置される現在の図面内の 3D WCS 座標位置。
  • ScaleFactor … 読み込まれたファイルの配置に使用される尺度。

LayerStateManager

  • object … LayerStateManager
  • FileName … 画層設定の読み込み元のファイルの名前。


戻り値
  • Document の場合

WMF ファイルを読み込む場合は、BlockReference オブジェクトが返されます。その他の場合はすべて、戻り値は NULL です。

  • LayerStateManager の場合

nil


サンプル
(vl-load-com)
(defun c:Example_Import()
    ;; 新しい図面を作成して作業内容を保存する。
    ;; この例を実行する前に、新しい図面を開始してください。
    ;; 円を作成します。その後、DXFExport.DXFというファイルに図面をエクスポートし、
    ;; その後に、新しい図面を開いてファイルをインポートするサンプル。
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; 円を作成する
    (setq centerPt (vlax-3d-point 2 2 0))  
    (setq radius 1)
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq circleObj (vla-AddCircle modelSpace centerPt radius))
    (vla-ZoomAll acadObj)
    
    ;; 空の選択セット
    (setq sset (vla-Add (vla-get-SelectionSets doc) "TEST"))
    
    ;; 上記で指定したファイルに現在の図面をエクスポートする。
    (setq exportFile "C:\\temp\\DXFExport")    ;; パスは適用に変更
    (vla-Export doc exportFile "DXF" sset)
    
    ;; Define the import
    (setq insertPoint (vlax-3d-point 0 0 0))  
    (setq importFile "C:\\temp\\DXFExport.dxf"  ;; パスは適用に変更
          scalefactor 2)
    
    ;; ファイルをインポート
    (vla-Import doc importFile insertPoint scalefactor)
    (vla-ZoomAll acadObj)

    (vla-Delete sset)
)


関連事項