注意:可以用来找正的元素:平面、圆柱、圆锥。
第二基准:通过直径15mm孔和直径12mm孔的轴线(两孔最佳拟合直线)
可以用来旋转的元素:直线、 圆柱、圆锥等。可简化为线元素或者构造为线元素的线性元素。
可以平移的元素 一般为点元素或者圆等可以简化为点元素的点形元素。
通过输入图纸上的角度进行坐标系旋转。这个角度可以通过正切函数计算。绕Y轴旋转,输入29.25°。
注意:也可以使用高级功能三角函数输入。
在该例子中:输入ATAN(14/25)*3.1415926/180或RTOD(ATAN2(14,25))
$$/* Header
DMISMN/'Created by [爱科腾瑞科技(北京)有限公司-091520-DEMO] on Monday, April 20, 2020', 4.0
UNITS/MM, ANGDEC, MMPS
WKPLAN/XYPLAN
PRCOMP/ON
TECOMP/ON
FLY/1.0000
MODE/MAN
SNSET/APPRCH, 2.0000
SNSET/RETRCT, 2.0000
SNSET/DEPTH, 0.0000
SNSET/SEARCH, 10.0000
SNSET/CLRSRF, 50.0000
RECALL/D(MCS)
SNSLCT/S(L20-D2.0_A90_B90)
GEOALG/BF, LSTSQR
GEOALG/ANGLB, DEFALT
GEOALG/CIRCLE, LSTSQR
GEOALG/ARC, LSTSQR
GEOALG/PLANE, LSTSQR
$$
$$
$$*/
MODE/MAN
F(PLN1)=FEAT/PLANE,CART,14.1458,0.0000,2.5630,0.0000,-1.0000,0.0000
$$ Measurement points are created through actual points
MEAS/PLANE, F(PLN1), 4
PTMEAS/CART, -11.2317, -0.0000, 25.6306, 0.0000, -1.0000, 0.0000
PTMEAS/CART, -22.6703, -0.0000, -25.2883, 0.0000, -1.0000, 0.0000
PTMEAS/CART, 43.7716, -0.0000, -21.2560, 0.0000, -1.0000, 0.0000
PTMEAS/CART, 46.7136, -0.0000, 31.1658, 0.0000, -1.0000, 0.0000
ENDMES
D(CRD1) = DATSET/FA(PLN1), -YDIR
F(CIR1)=FEAT/CIRCLE,INNER,CART,-25.0000,3.3692,-13.0000,-0.0000,-1.0000,0.0000, 15.0000
$$ Measurement points are created through actual points
MEAS/CIRCLE, F(CIR1), 4
PTMEAS/CART, -27.5571, 3.3692, -5.9494, 0.3409, -0.0000, -0.9401
PTMEAS/CART, -17.5025, 3.3692, -13.1924, -0.9997, -0.0000, 0.0257
PTMEAS/CART, -24.0747, 3.3692, -20.4427, -0.1234, -0.0000, 0.9924
PTMEAS/CART, -32.0020, 3.3692, -15.6875, 0.9336, -0.0000, 0.3583
ENDMES
F(CIR2)=FEAT/CIRCLE,INNER,CART,25.0000,3.1703,15.0000,-0.0000,-1.0000,0.0000, 12.0000
$$ Measurement points are created through actual points
MEAS/CIRCLE, F(CIR2), 4
PTMEAS/CART, 23.1277, 3.1703, 20.7004, 0.3120, -0.0000, -0.9501
PTMEAS/CART, 30.9923, 3.1703, 15.3033, -0.9987, -0.0000, -0.0505
PTMEAS/CART, 26.1229, 3.1703, 9.1060, -0.1872, -0.0000, 0.9823
PTMEAS/CART, 20.2503, 3.1703, 11.3339, 0.7916, -0.0000, 0.6110
ENDMES
$$ CREATED BY : External-Array Software, Inc
$$ DATE : Jan 19, 2009
$$ DISLAIMER:
$$ This Macro has been tested internally but not been tested with
$$ other DMIS compatible software. This Macro is provided as sample
$$ and can be modifed for your own use. External-Array doesn't not
$$ guarantee the quality of this Macro.
$$ FUNCION: Create a nominal line using two actual features
$$ DI, DJ, DK are the normal vector of the plane that the line lies on
M(EASI_2PT_TO_LINE) = Macro/'FEAT1', 'FEAT2', 'FEATLINE', DI, DJ, DK
DECL/LOCAL,DOUBLE,DVALUE[6]
DECL/LOCAL,INTGR, INDEX1, INDEX2
CALL/M(EASI_GETX_INDEX), FEAT1, INDEX1
CALL/M(EASI_GETX_INDEX), FEAT2, INDEX2
DVALUE[1] = OBTAIN/FA(@FEAT1),INDEX1
DVALUE[2] = OBTAIN/FA(@FEAT1),INDEX1+1
DVALUE[3] = OBTAIN/FA(@FEAT1),INDEX1+2
DVALUE[4] = OBTAIN/FA(@FEAT2),INDEX2
DVALUE[5] = OBTAIN/FA(@FEAT2),INDEX2+1
DVALUE[6] = OBTAIN/FA(@FEAT2),INDEX2+2
F(@FEATLINE) = FEAT/LINE,BND,CART,DVALUE[1],DVALUE[2],DVALUE[3],$
DVALUE[4],DVALUE[5],DVALUE[6],$
DI, DJ, DK
ENDMAC
CALL/M(EASI_2PT_TO_LINE),(CIR1),(CIR2),(LN_BF1), -0.0000, -1.0000, 0.0000
CONST/LINE,F(LN_BF1),BF,FA(CIR1),FA(CIR2)
D(CRD2) = ROTATE/YAXIS, FA(LN_BF1), XDIR
D(CRD3) = TRANS/XORIG, FA(CIR1), YORIG, FA(PLN1), ZORIG, FA(CIR1)
D(CRD4) = ROTATE/YAXIS, RTOD(ATAN2(14,25))
D(CRD5) = TRANS/XORIG, 25, YORIG, 0, ZORIG, 14