我需要在Catia和Matlab之间建立实时连接,这样我就可以将参数值发送到我在Catia中的参数化设计,并读取一些其他参数和测量结果。
这是我的解决方案:
首先,我创建:
VB NET (*.dll)
Public Class CatiaLinkLibrary
Dim CATIA As Object
Dim rootproduct
Sub StartCatia()
CATIA = CreateObject("CATIA.Application")
End Sub
Sub CloseCatia()
CATIA.Quit(
我想为电源复制创建宏。我从这个中提取了代码和模型,不幸的是它不起作用(我做了一些小的修改)。我在这个中发现了类似的问题,而在他的例子中,它是有效的。
Private Sub CommandButton1_Click()
' Instantiation of a PowerCopy Reference "SurfacicHoles"
' SurfacicHoles is stored in the CATPart "e:\tmp\PowerCopyReference.CATPart"
' It has
' 3 inputs: Fi
我用以下方法锁定了Catia:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim boolCatAlive As Boolean
boolCatAlive = False
Try
Dim myCatia As INFITF.Application
myCatia = Interaction.GetObject(vbNullString, "CATIA.Application&
我已经尝试了一个星期了,但我找不到一个解决办法。问题是,我一直在用Excel在CATIA中自动化过程,现在我想使用Visual 2015。我遇到的唯一问题是Visual中的调试器。当我使用:
Dim CATIA As INFITF.Application = GetObject(, "CATIA.Application");
因此,我有一个{System.__ComObject},点击"Dynamic“(调试器/局部变量),我没有得到对象的任何属性。如果使用的不是CATIA.Application,而是Excel.Application,我可以在“动态视图”中看到对象的
当涉及到CATIA时,我是一个新手,但我在excel中使用VBA有相当多的经验。我正在尝试开发一个excel宏,它遍历catia程序集中的所有部分,通过将文本拼接到我想要的位置来重命名它们,然后对它们进行重新排序(字母数字升序)。我相信我可以写出用于实际拼接、重命名、重排序的算法位。我正在为使用excel操作Catia而苦苦挣扎。互联网上没有太多的信息。我已经勾选了参考资料中以CATIA开头的所有方框。到目前为止,我写了以下内容:
Dim CATIA as object
Set CATIA = Getobject(,"CATIA.Application")
Dim oMyDoc
使用win32com.client.GetActiveObject创建/获取COM对象,然后import pywintypes在每次调用原始COM对象时生成一个AttributeError。
复制代码
import win32com.client
catia_com = win32com.client.GetActiveObject('CATIA.Application')
# then later when needed, do some pywinauto stuff
import pywinauto.application
# back to working dire
我正在尝试创建一个程序,用于在catia中实现自动屏幕捕捉。为此,我必须创建一个平面对齐相机到那个平面,然后将相机重新设置到那个平面上。所以我使用了下面的代码。
Dim selection1 as selection
Set Selection1=partdocument1.selection
selection1.add hybridshapeplanetangent1
Catia.startcommand("Normal View")
catia.refreshdisplay=true
selection1.clear
selection1.add hybrid
如何将LibreOfficeCalcPortable.exe作为对象从Catia VBA进行交互。我在下面写下了从Catia VBA与MS Excel进行交互的方法。如何在CATIA VBA的LibreOfficeCalcPortable.exe中写入单元? 示例Catia到Excel。 Dim Excel As Object
On Error Resume Next
Set Excel = GetObject(, "EXCEL.Application")
If Err.Number <> 0 Then
Err.Clear
Set Excel = CreateO
我已经编写了一个C#程序,它将通过OLE/COM与CATIA5.18进行接口。这将是一种常见的情况,在运行程序的机器上将安装多个版本的Catia。无论是旧的还是新的,都可以按照任何时髦的顺序安装。最后安装的应用程序会将其设置放入注册表中。
我正在尝试设置注册表,以便使用新的句柄仅连接到5.18 CNEXT服务器。我在HKEY_CLASSES_ROOT中找到了Catia.Application条目和CLSID条目。我复制了这些文件,并为CLSID提供了一个新的UUID,并提出了以下注册表导入文件:
Windows Registry Editor Version 5.00
[HKEY_CLASS
我已经创建了一个VB类来操作CATIA项目。VB代码被编译成加载到C#工程中的动态链接库。
Imports ProductStructureTypeLib
Imports INFITF
Imports MECMOD
Public Class MyCATIAClass
Private catia As INFITF.Application
Public Sub New()
catia = GetObject(, "CATIA.Application")
End Sub
Public Sub doStuff()
我希望在退出Catia时能够自动运行批处理文件。因此,当我选择文件退出菜单选项时,批处理文件将运行。类似地,当我单击右上角的Catia close X按钮时。批处理文件也将运行。是否有一个特定子函数在退出Catia时执行?
下面的vbscript启动批处理文件。
Sub CATmain()
Dim shell
Set shell = CreateObject("wscript.shell")
shell.Run "c:\windows\temp\test.bat"
End Sub
任何帮助都非常感谢。
我试图通过更改excel文件中设计表中的维度值来编辑CATIA中的部件尺寸。每次更改值时,都应该手动更新部件模型。我想通过VBA代码自动更新它并保存它。
我试过了
Sub CATMain()
CATIA.DisplayFileAlerts = False
Dim part As PartDocument
Set part = CATIA.ActiveDocument
part.Update
part.SaveAs "D:\E\CSE\.....\Part2.CATPart"
End Sub
而且它不起作用。我们如何更新和保存它?
我正在运行一个批处理文件,该文件获取目录下所有文件和子文件夹的列表。然后,我将过滤掉今天和昨天从这个列表中创建的一些特定文件。我在寻找昨天创建的文件时遇到了一些困难,我想也许%date% - 1可以工作,但它不起作用。有人能帮我吗?谢谢
REM SETUP CREATE TIME
for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%
我想使用CATScript导出CATIA产品的质量。这是我的解决方案:
'Start code
Sub CATMain()
Dim SRT as ProductDocument
Set SRT = CATIA.Documents.Open ("T:\...\SRT_2030.CATProduct")
Set SRT = CATIA.ActiveDocument
Dim oSelection As Selection
Set oSelection = SRT.Selection
Dim oProduct As Selection
Set oProduct = oSe
我正在使用CATIA脚本(宏)学习VBA。我的代码如下所示
Sub CATMain()
Dim oPart1 As Document
Set oPart1 = CATIA.ActiveDocument
Dim currentWindow As Windows 'I am getting an error here
Set currentWindow = CATIA.Windows
Dim openWind As Integer
openWind = currentWindow.Count
End Sub
我在其他集合中也会遇到这样的错误,当我创建一个新的项目库
是否可以将单个CATIA主体导出为STL而不使用它创建单独的部分?
目前,我已经编写了一个脚本,它循环遍历文件夹中的CATParts,获取包含的主体,并创建每个CATPart并导出为stl格式。
Dim output_stl_path_HD As String
Dim output_stl_path_MD As String
Dim output_stl_path_SD As String
Dim output_stl_path_via_points As String
Dim output_transformations_path As String
我是个Python初学者,我正试图用它来实现CATIA ( despite pacakge)的自动化,但是我遇到了一个问题,尽管我已经广泛地搜索了一个解决方案,但一直无法解决这个问题。
我试图模仿这个VBA宏的行为,它是在CATIA的本机编辑器界面中编写的:
Sub CATMain()
Dim drawingDocument1 As DrawingDocument
Set drawingDocument1 = CATIA.ActiveDocument
Dim selection1 As Selection
Set selection1 = drawingDocument1.Selectio