APP下载

基于SolidWorks 精确绘制曲线的方法

2021-09-14惠忠文

凿岩机械气动工具 2021年3期
关键词:渐开线直角坐标二次开发

惠忠文

(1.中国煤炭科工集团太原研究院有限公司,山西 太原030006;2.山西天地煤机装备有限公司,山西 太原030006)

0 引言

SolidWorks是一种完全基于Windows 操作系统的三维设计软件。 它具有强大的零件建模、零部件装配、工程图输出、有限元分析功能,同时支持0LE(对象链接与嵌入)技术与COM(组件对象模型)技术,因此设计者能够根据自身需要对其进行二次开发。 其优异的性能、易用性和创新性,极大地提高了机械设计工程师的设计效率。曲线在SolidWorks 中具有非常重要的作用。在复杂曲面机械零件的建模过程中,如渐开线齿轮建模,常常需要使用曲线来生成实体特征、曲面特征。本文论述了基于SolidWorks 精确绘制曲线的三种方法,解决在SolidWorks 中精确绘制渐开线等复杂轮廓曲线的问题。

1 基于SolidWorks API 二次开发绘制曲线

在工程设计工作中,常常需要对SolidWorks进行二次开发, 生成个性化应用程序或插件,以提高三维实体建模效率。 SolidWorks 提供的API(应用编程接口), 可使用户通过开发工具对OLE对象及其方法和属性的操作, 实现曲线精确绘制。 任何支持0LE 技术的高级语言如Delphi,C,C++,Visual C++,VBA,Visual Basic 等都可作为开发工具。

SolidWorks API 对象是一个自上而下的多层次的树形网络。 如图1 所示,SolidWorks 是根目录对象, 位于应用程序的底层, 是访问SolidWorks API 所有对象的入口程序。 接口对SolidWorks API 的调用实行逐级寻访, 先调用能实现所需功能对象的父对象,然后调用与父对象相关的子对象,如果子对象所封装的属性和方法不能实现所需要的功能,则继续调用该子对象的下级子对象,如此逐级遍历,直到结束。

图1 SolidWorks API 的对象模型关系部分层次图

例如,在开发标准直齿圆柱渐开线齿轮建模插件时,可以调用SolidWorks API 中的函数进行渐开线曲线的精确绘制, 实现渐开线齿轮的建模。因为在SolidWorks 中,使用直角坐标系,所以必须把渐开线极坐标方程转化为直角坐标方程式。标准直齿圆柱齿轮齿廓渐开线的直角坐标方程为:

式中 rb——基圆半径

θ——基圆与发生线起点、 终点之间所对应的圆心角

齿廓曲线中的齿顶圆弧、过渡曲线、齿根圆弧等曲线方程在此处不做详细叙述。

现以模数m=3,齿数Z=20,压力角α=20°的标准直齿圆柱齿轮建模为例, 使用Visual Basic开发工具对SolidWorks 进行二次开发,精确绘制渐开线。

渐开线绘制部分程序如下:

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

'建立与SolidWorks 的连接

Set Part=swApp.ActiveDoc

'获得当前活动草图

Dim myModelView As Object

Set myModelView=Part.ActiveView

myModelView.FrameState=swWindowState_e.swWindowMaximized

boolstatus=Part.Extension.SelectByID2("前视基准面","PLANE",0,0,0,False,0,Nothing,0)

Part.SketchManager.InsertSketch True

Part.ClearSelection2 True

Dim equationDriveCurve As Object

Set equationDriveCurve=Part.SketchManager.CreateEquationSpline2("28.19*(cos(t)+t*sin(t))", "28.19*(sin(t)-t*cos(t))","","0","0.78539",False,0,0,0,True,True)

'根据给定曲线方程绘制曲线

End Sub

在标准渐开线齿轮的分度圆上,齿厚等于齿槽宽,可以用分度圆上齿槽中心角的角分线来镜像渐开线,利用两条渐开线及齿轮顶圆、齿根圆的封闭曲线形成齿槽,使用圆周阵列功能,形成齿轮的轮廓线,然后进行齿根倒圆角,再拉伸切除材料,得到标准直齿圆柱齿轮三维模型,如图2 所示。

图2 标准直齿圆柱齿轮三维模型

2 通过坐标点绘制曲线

在SolidWorks 中,提供了利用坐标点绘制曲线的功能。 可以通过手工输入坐标点,也可以将已知坐标点保存为文本文件 (*.txt), 如图3 所示,批量导入坐标点,实现曲线绘制。通过文本文件批量导入坐标点时,要注意文本文件中的坐标点数据格式, 三列坐标值以制表符或空格分隔,其间不要包含任何字符。利用文本文件批量导入坐标点绘制曲线的操作步骤如下: 打开SolidWorks--新建零件--选择曲线文件--在对话框中点击浏览--查找到文本文件--选择打开--在SolidWorks 中根据文本文件中的坐标点自动绘制出曲线。

图3 渐开线坐标点及利用坐标点绘制的渐开线

3 使用方程式驱动的曲线功能绘制曲线

自SolidWorks 2007 版开始, 草图绘制工具中添加了“方程式驱动的曲线”功能,用户可以通过定义“笛卡尔直角坐标系”下的方程式来生成所需要的连续曲线。这种方法可以帮助用户绘制所需要的精确曲线。下面以等距三边形轮廓曲线的绘制为例进行详细叙述。等距三边形轮廓曲线如图4 所示,它的直角坐标系方程为:

图4 等距三边形轮廓曲线

式中 Dm/2——平均半径

e——偏心量

α——角度参数

取Dm=55 mm,e=2 mm,α=0 ~360°。 打 开SolidWorks--新建零件--选择前视基准面--点击绘制草图--选择方程式驱动的曲线--方程类型选择参数式--输入等距三边形轮廓曲线方程及参数,即可绘制出所需的曲线,如图5 所示。

图5 方程式驱动绘制的等距三边形轮廓曲线

4 结语

本文介绍了SolidWorks 中绘制曲线的三种方法。利用SolidWorks API 函数通过Visual Basic开发工具编程实现了在SolidWorks 中进行函数曲线的绘制,提高了复杂曲面零件三维实体建模的效率,为复杂曲面零件三维实体建模的二次开发提供了参考。 使用方程式驱动的曲线功能,也可以轻松实现笛卡尔直角坐标系下函数曲线的绘制。 通过坐标点绘制曲线的方法,适用于函数和非函数曲线的绘制,方法简单、灵活,是另两种曲线绘制方法的有效补充。

猜你喜欢

渐开线直角坐标二次开发
从平面直角坐标系到解析几何
深入学习“平面直角坐标系”
深刻理解平面直角坐标系
基于NURBS理论的渐开线齿轮齿面修复
基于Pro/E的渐开线内花键安装盘参数化设计
浅谈基于Revit平台的二次开发
用修正渐开线投影法螺旋铣球面宏程序的编制
浅谈Mastercam后处理器的二次开发
认识“平面直角坐标系”
西门子Easy Screen对倒棱机床界面二次开发