簡體   English   中英

打開.dwg使用SolidWorks API

[英]Open .dwg Using SolidWorks API

我正在嘗試在SolidWorks 2015中打開一個.dwg文件。我已經可以通過使用打開.slddrw了。

IModelDoc2 doc = swApp.OpenDoc6("C:/Temp/BlankDraw.SLDDRW", (int)swDocumentTypes_e.swDocDRAWING, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, "", 0, 0);

當我用.dwg替換.slddrw部分時,問題就出現了,它返回null。

有沒有辦法以不同的方式來打開.dwg?

SOLIDWORKS API建議使用方法ISldWorks::LoadFile4來加載非本機文件。

這是API文檔說使用LoadFile4 aboot dwg文件的內容。

DXF / DWG文件:

您可以:

讓SOLIDWORKS確定默認值:

計算紙張尺寸和紙張比例以適合輸入數據。

長度單位由輸入DXF / DWG文件的標題確定。

工作表名稱與輸入DXF / DWG文件中的布局名稱相同。

  • 要么 -

使用以下方法設置您自己的值:

ISldWorks :: GetImportFileData獲取IImportDxfDwgData接口。

在加載文件之前,使用以下方法將Sheet參數“”(空字符串)設置為默認值:

IImportDxfDwgData :: GetPaperSize

IImportDxfDwgData ::為getPosition

IImportDxfDwgData :: GetSheetScale

IImportDxfDwgData :: ImportMethod

IImportDxfDwgData :: LengthUnit

IImportDxfDwgData :: SetPaperSize

IImportDxfDwgData :: SETPOSITION

IImportDxfDwgData :: SetSheetScale

IImportDxfDwgData :: SHEETNAME

有關導入DXF / DWG數據的詳細信息,請參閱IImportDxfDwgData。

筆記:

獲取IImportDxfDwgData接口不會從輸入文件中獲取默認值。 您未設置的任何值都將設置為SOLIDWORKS計算的值。

如果DWG / DXF文件有多個工作表,請使用這些方法在Sheet參數中使用有效的布局名稱來設置工作表特定設置,這將覆蓋默認設置。 如果沒有為給定的布局名稱指定任何單個項目,則使用的值來自默認值(布局名稱“”)。 如果未指定默認值,SOLIDWORKS將為該項計算並使用有意義的值。

簡單如下:

    Option Explicit
    Dim swApp As Object

    Dim Part As Object
    Dim boolstatus As Boolean
    Dim longstatus As Long, longwarnings As Long

    Sub main()

    Set swApp = Application.SldWorks

    boolstatus = swApp.LoadFile2("T:\Debug-LstBlock.dwg", "11 0")
    Set Part = swApp.ActiveDoc
    End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM