客户对于产品形状及位置的管控越来越严格,随之轮廓度的标注变得越来越普遍。线轮廓和面轮廓管控的是整条线和整个面的形状及位置,对于客户要求输出各点位偏差来管控线或面的局部偏差情况,我们除了使用Smart Fitting PRO 专业轮廓比对软件出图形报告来完成,是否可以在我们Smart pro 测量软件里直接实现呢?
下面我将为大家讲解Smart pro 测量软件里如何解决定点点位置偏差的测量。使用过我们软件的都知道我们程序界面有强大的自定义函数功能,现在大家就和我一起看如何用自定义函数来实现定点位置偏差的测量。语句如下:
DimNX() As Double ={-15.25,-15.24,-14.75,-13.6,-9.17,-3.4} '按量测顺序输入X坐标理论值
DimNY() As Double ={0.25,3.35,5.86,10.2,12,13.6} '按量测顺序输入Y坐标理论值
DimNZ() As Double ={0,0,0,0,0,0} ' 按量测顺序输入z坐标理论值
DimNangle() As Double ={197,168,170,124,110,111} ' 按量测顺序输入角度值(寻线箭头与X方向夹角)
'****************************************************
ProfileDEV(Nx:=NX,Ny:=NY,Nz:=NZ,Nangle:=Nangle) '调用测量偏差函数
EndSub
'****************************************************
PublicSub ProfileDEV(Nx() As Double, Ny() As Double, Nz() As Double, Nangle() AsDouble)
Dim mCount As Integer = ubound(Nx)
Dim ReX(mCount) As Double
Dim ReY(mCount) As Double
Dim Dev(mCount) As Double
Dim i As Integer
For i = 0 To mCount Step 1
Measure(ID:="PF"&i+1,Type:=MPoint,X:=nx(i),Y:=ny(i),Z:=nz(i))
TPoint(X:=nx(i),Y:=ny(i),A:=nangle(i),L:=80,D:=Random,F:=40,G:=74) '选中此行按F9可修改寻线箭头长度,阀值,过滤范围等属性(不可修改X,Y,A值)
EndMea()
Next
'************************下面为计算偏差程序****************************
For j As Integer =0 To mCount
ReX(j)=Item("pf"&j+1).X
ReY(j)=Item("pf"&j+1).Y
Dev(j)=Sqrt(math.pow(x:=(Rex(J)-NX(J)),y:=2)+math.pow(x:=Rey(j)-Ny(j),y:=2))
Dimix As Double
ix=Dev(j).ToString("0.0000")'各点偏差的计算
OutPut(T:=X,D:="Dev"&j+1,L1:="PF"&j+1,N:="0",U:="0.1000",L:="0",a:=ix) '输出各点偏差
Next
Dim im As Double
im= (max(Dev))*2.ToString("0.0000")'轮廓度的计算,此处算法为最大偏差乘2
OutPut(T:=X,D:="MaxDev",L1:="PF1",N:="0",U:="0.1000",L:="0",a:=im)'输出轮廓度值
是不是觉得很复杂,大家无需担心,复杂的函数已经为大家写好,大家按量测顺序输入X,Y,Z坐标理论值即可。下图为测量结果: