Python Solidworks API ExportToDWG2
我正在尝试将我们的一位工程师编写的脚本从VBA转换为Python。它会更改Solidworks图形中的某些值,然后导出某些dwg文件。这是一个更大项目的一部分,我们将在其中生成许多文件。除了能够导出为DWG文件外,其他一切都正常工作 当ExportToDWG2函数在VBA中运行时,它会很好地生成文件Python Solidworks API ExportToDWG2,python,vba,api,com,solidworks,Python,Vba,Api,Com,Solidworks,我正在尝试将我们的一位工程师编写的脚本从VBA转换为Python。它会更改Solidworks图形中的某些值,然后导出某些dwg文件。这是一个更大项目的一部分,我们将在其中生成许多文件。除了能够导出为DWG文件外,其他一切都正常工作 当ExportToDWG2函数在VBA中运行时,它会很好地生成文件 Dim varAlignment As Variant Dim dataAlignment(11) As Double Dim varViews As Variant Dim dataViews(0
Dim varAlignment As Variant
Dim dataAlignment(11) As Double
Dim varViews As Variant
Dim dataViews(0) As String
dataAlignment(0) = 0#
dataAlignment(1) = 0#
dataAlignment(2) = 0#
dataAlignment(3) = 1#
dataAlignment(4) = 0#
dataAlignment(5) = 0#
dataAlignment(6) = 0#
dataAlignment(7) = 0#
dataAlignment(8) = 0#
dataAlignment(9) = 0#
dataAlignment(10) = 0#
dataAlignment(11) = 1#
varAlignment = dataAlignment
dataViews(0) = "*Top"
varViews = dataViews
sModelName = swModel.GetPathName
sPathName = "c:\projects\1234.dxf"
swModel.ExportToDWG2 sPathName, sModelName, swExportToDWG_ExportAnnotationViews, True, varAlignment, False, False, 0, varViews
ExportToDWG2函数在Python中运行时返回False,但不会导致参数类型错误
# Save the DFX
da = [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]
data_align = win32.VARIANT(pythoncom.VT_VARIANT, da)
varViews = win32.VARIANT(pythoncom.VT_VARIANT, ["*Top"])
sPathName = "c:\projects\1234.dxf"
swExportToDWG_ExportAnnotationViews = 3
stat = swModel.ExportToDWG2(
sPathName, swModel.GetPathName,
swExportToDWG_ExportAnnotationViews, True,
data_align, False, False, 0, varViews
)
print(sPathName, stat)
如何让ExportToDWG2像在VBA中一样在Python中工作,或者如何调试可能发生的事情?名称
GetPathName
表明它可能是一个方法(可调用),而不是一个普通属性。在VBA中,似乎调用不带参数的方法时不需要后跟括号,因此VBA代码在这方面是不明确的。但是,它听起来很像一个方法名,所以我会尝试在Python代码中使用swModel.GetPathName()
调用它。名称GetPathName
表明它可能是一个方法(可调用),而不是一个普通属性。在VBA中,似乎调用不带参数的方法时不需要后跟括号,因此VBA代码在这方面是不明确的。但是,它听起来很像一个方法名,所以我会尝试在Python代码中使用swModel.GetPathName()
调用它。