一、宏录制,修改、回放
1. 工具->宏->启动录制 就会显示出录制的对话框 之前没使用过的话 会出现一个默认的宏库 点击开始
2. 文件->新建->part 新建一个零件文档
3. 选择XY平面 点击 图标进行草图
4.选择 绘制一个圆
单击
退出草图绘制
5. 选择拉伸按钮 再在对话框中选择拉伸的长度
6. 单击停止录制按钮 就生产一个宏录制
程序分析: (同等效果)
Language="VBSCRIPT" ‘用VBScript编写
Sub CATMain() ‘点击开始录制宏就会产生这条语句
Set documents1 = CATIA.Documents ‘新建一个文件
Set partDocument1 = documents1.Add("Part") ‘新建一个PART
Set part1 = partDocument1.Part ‘选择 XY平面 进入草图绘制
Set bodies1 = part1.Bodies
Set body1 = bodies1.Item("零件几何体")
Set sketches1 = body1.Sketches
Set originElements1 = part1.OriginElements
Set reference1 = originElements1.PlaneXY
Set sketch1 = sketches1.Add(reference1) ‘一个名为sketch1的草图 以reference1为参
’考平面
Dim arrayOfVariantOfDouble1(8)
arrayOfVariantOfDouble1(0) = 0.000000
arrayOfVariantOfDouble1(1) = 0.000000
arrayOfVariantOfDouble1(2) = 0.000000
arrayOfVariantOfDouble1(3) = 1.000000
arrayOfVariantOfDouble1(4) = 0.000000
arrayOfVariantOfDouble1(5) = 0.000000
arrayOfVariantOfDouble1(6) = 0.000000
arrayOfVariantOfDouble1(7) = 1.000000
arrayOfVariantOfDouble1(8) = 0.000000
sketch1.SetAbsoluteAxisData arrayOfVariantOfDouble1 ‘定义草图的轴 可以沿支持面的方向转
’动
part1.InWorkObject = sketch1
Set factory2D1 = sketch1.OpenEdition()
‘当草图建立时,系统会自动建立一个中心点 一条水平 一条垂直作为坐标轴
Set geometricElements1 = sketch1.GeometricElements
Set axis2D1 = geometricElements1.Item("绝对轴")
Set line2D1 = axis2D1.GetItem("横向")
line2D1.ReportName = 1
Set line2D2 = axis2D1.GetItem("纵向")
line2D2.ReportName = 2 ‘ReportName 属于系统内部
‘在当前坐标原点绘制一个圆 R为30
Set circle2D1 = factory2D1.CreateClosedCircle(0.000000, 0.000000, 30.000000)
Set point2D1 = axis2D1.GetItem("原点")
circle2D1.CenterPoint = point2D1 ‘这个属性约束在了原点的位置
circle2D1.ReportName = 3
‘退出草图,草图绘制完成
sketch1.CloseEdition
part1.InWorkObject = sketch1
part1.Update
‘为这个草图创建拉伸 长度为20
Set shapeFactory1 = part1.ShapeFactory
Set pad1 = shapeFactory1.AddNewPad(sketch1, 20.000000)
part1.Update
End Sub
可以直接修改程序 (编辑宏)
把这段
Set circle2D1 = factory2D1.CreateClosedCircle(0.000000, 0.000000, 30.000000)
Set point2D1 = axis2D1.GetItem("原点")
circle2D1.CenterPoint = point2D1
circle2D1.ReportName = 3
改为
x = 0
For I = 1 To 5
Set circle2D1 = factory2D1.CreateClosedCircle(x, 0.000000, 30.000000)
x = x + 100
Next
可向X轴方向 创建5个圆
把宏加入工具条:
1. 工具->自定义->命令->宏 添加宏 选择图标就好了
二、脚本运行方式
1. 从宏列表对话框中实现
2. 启动CATIA时 自动运行宏 CNEXT –macro D:\B20\MACRO\宏1.CATScrpit 要完整的路径 这样脚本运行完成后 不会退出CATIA 除非脚本有说明 CATIA.Quit
3. 批处理 CATIA运行一些不需要人工干预的工作 CNEXT –batch-macro D:\B20\MACRO\宏1.CATScrpit 脚本运行完后自动退出
小黑屋|手机版|Archiver|鱼C工作室
( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)
GMT+8, 2025-5-3 10:31
Powered by Discuz! X3.4
© 2001-2023 Discuz! Team.