在CorelDraw中绘图有时需要获取所绘曲线的长度和面积,但是CorelDraw中并没有CAD中那样方便的查看属性的工具,既然没有我们就需要制作一个可以计算的模块,下面我们就来看看详细的教程。
1、打开CorelDraw,新建文档绘制一个矩形、三角形、闭合的贝塞尔曲线,为后期测量距离和面积做准备。如下图。
2、按Alt+F11打开VBA编辑器,点击菜单中的“插入”下面的“模块”,在左侧上部的工程管理器中显示“模块1”。双击“模块1”,在右侧代码窗口中输入代码。
3、右侧代码窗口中拷贝如下代码:
Sub Test() On Error Resume Next ActiveDocument.Unit = cdrMillimeter Dim sl As Shape, xSel As ShapeRange, m As Double, n As Double Set xSel = ActiveSelectionRange If ActiveSelectionRange.Count > 1 Or ActiveSelectionRange.Count = 0 Then MsgBox "请先选中1条曲线。" Exit Sub End If m = xSel.Shapes(1).Curve.Length n = xSel.Shapes(1).Curve.Area MsgBox "曲线长度L(mm):" & Format(m, "0.0000") & Chr(13) & "曲线面积S(mm2):" & Format(n, "0.0000") End Sub
4、然后切换到CorelDraw绘图窗口,选中先前换的曲线,然后点击工具栏中的运行宏按钮,如图。弹出窗口中选择“模块1.Test”,然后点击“运行”,出现结果。
5、该函数只能计算曲线的长度和面积,对矩形和三角形等对象无效,下面是测试结果,均显示长度面积为0.如图。
6、那么要计算矩形和三角形和长度面积怎么办呢?需要先选中它们,如选中三角形,然后点击右键,选择“