RationalDMIS数据升序(降序)排序

网友投稿 273 2022-11-07

RationalDMIS数据升序(降序)排序

提示:           对一组数据,进行大小排列!可以对点轮廓大小以及圆直径,X,Y,Z坐标值大小进行顺序排列!

示例一:自动测量五个不同圆孔,圆的直径大小进行排列 !

DMISMN/'Created by [山涧果子] on 星期日, 十月 08, 2017', 4.0

UNITS/MM, ANGDEC

WKPLAN/XYPLAN

PRCOMP/ON

TECOMP/ON

FLY/1.000000

MODE/PROG, MAN

SNSET/APPRCH, 2.00

SNSET/RETRCT, 2.00

SNSET/DEPTH, 2.00

SNSET/SEARCH, 10.00

SNSET/CLRSRF, 30.00

RECALL/D(MCS)

SNSLCT/S(LENOVO)

GEOALG/CIRCLE, LSTSQR

GEOALG/ARC, LSTSQR

GEOALG/PLANE, LSTSQR

$$

$$

MODE/PROG,MAN

F(CIR1) = FEAT/CIRCLE,INNER,CART, 24.000000, 27.287187, 35.000000,$

-0.000000, 0.000000, 1.000000, 10.000000

$$ Measurement points are created through nominal points

MEAS/CIRCLE, F(CIR1), 4

PTMEAS/CART,  20.697847, 23.532751, 33.000000, 0.660431, 0.750887, 0.000000

PTMEAS/CART,  27.754436, 23.985034, 33.000000, -0.750887, 0.660431, -0.000000

PTMEAS/CART,  27.302153, 31.041623, 33.000000, -0.660431, -0.750887, -0.000000

PTMEAS/CART,  20.245564, 30.589340, 33.000000, 0.750887, -0.660431, 0.000000

ENDMES

F(CIR2) = FEAT/CIRCLE,INNER,CART, 25.000000, 7.908118, 27.928932, -0.000000,$

-0.707107, 0.707107, 15.000000

$$ Measurement points are created through nominal points

MEAS/CIRCLE, F(CIR2), 4

PTMEAS/CART,  19.732704, 5.547044, 22.739431, 0.702306, 0.503372, 0.503372

GOTO/CART,  23.306094, 6.374393, 23.566780

GOTO/CART,  25.030448, 6.140424, 23.332811

GOTO/CART,  26.750166, 6.390872, 23.583259

PTMEAS/CART,  30.339063, 5.597791, 22.790178, -0.711875, 0.496605, 0.496605

GOTO/CART,  29.169014, 8.124559, 25.316946

GOTO/CART,  29.499897, 9.343861, 26.536248

GOTO/CART,  29.145711, 10.559886, 27.752273

PTMEAS/CART,  30.267296, 13.097619, 30.290006, -0.702306, -0.503372, -0.503372

GOTO/CART,  26.693906, 12.270270, 29.462657

GOTO/CART,  24.969552, 12.504239, 29.696626

GOTO/CART,  23.249834, 12.253792, 29.446179

PTMEAS/CART,  19.660937, 13.046873, 30.239260, 0.711875, -0.496605, -0.496605

ENDMES

F(CIR3) = FEAT/CIRCLE,INNER,CART, 40.000000, 55.000000, 35.000000, 0.000000,$

0.000000, 1.000000, 45.000000

$$ Measurement points are created through nominal points

MEAS/CIRCLE, F(CIR3), 4

PTMEAS/CART,  26.766137, 36.803438, 33.000000, 0.588172, 0.808736, -0.000000

GOTO/CART,  35.438757, 36.040964, 33.000000

GOTO/CART,  43.041270, 35.738622, 33.000000

GOTO/CART,  50.180777, 38.368651, 33.000000

PTMEAS/CART,  58.196562, 41.766137, 33.000000, -0.808736, 0.588172, -0.000000

GOTO/CART,  58.959036, 50.438757, 33.000000

GOTO/CART,  59.261378, 58.041270, 33.000000

GOTO/CART,  56.631349, 65.180777, 33.000000

PTMEAS/CART,  53.233863, 73.196562, 33.000000, -0.588172, -0.808736, 0.000000

GOTO/CART,  44.561243, 73.959036, 33.000000

GOTO/CART,  36.958730, 74.261378, 33.000000

GOTO/CART,  29.819223, 71.631349, 33.000000

PTMEAS/CART,  21.803438, 68.233863, 33.000000, 0.808736, -0.588172, 0.000000

ENDMES

F(CIR4) = FEAT/CIRCLE,INNER,CART, 40.000000, 55.000000, 30.000000, 0.000000,$

0.000000, 1.000000, 20.000000

$$ Measurement points are created through nominal points

MEAS/CIRCLE, F(CIR4), 4

PTMEAS/CART,  34.118283, 46.912639, 28.000000, 0.588172, 0.808736, 0.000000

GOTO/CART,  38.362631, 48.194192, 28.000000

GOTO/CART,  41.091738, 48.085660, 28.000000

GOTO/CART,  43.654638, 49.029772, 28.000000

PTMEAS/CART,  48.087361, 49.118283, 28.000000, -0.808736, 0.588172, 0.000000

GOTO/CART,  46.805808, 53.362631, 28.000000

GOTO/CART,  46.914340, 56.091738, 28.000000

GOTO/CART,  45.970228, 58.654638, 28.000000

PTMEAS/CART,  45.881717, 63.087361, 28.000000, -0.588172, -0.808736, 0.000000

GOTO/CART,  41.637369, 61.805808, 28.000000

GOTO/CART,  38.908262, 61.914340, 28.000000

GOTO/CART,  36.345362, 60.970228, 28.000000

PTMEAS/CART,  31.912639, 60.881717, 28.000000, 0.808736, -0.588172, 0.000000

ENDMES

F(CIR5) = FEAT/CIRCLE,OUTER,CART, 40.000000, 55.000000, 30.000000, 0.000000,$

0.000000, 1.000000, 30.000000

$$ Measurement points are created through nominal points

MEAS/CIRCLE, F(CIR5), 4

PTMEAS/CART,  31.177425, 42.868959, 28.000000, -0.588172, -0.808736, 0.000000

GOTO/CART,  35.789622, 37.499351, 28.000000

GOTO/CART,  42.807326, 37.220266, 28.000000

GOTO/CART,  49.397641, 39.647985, 28.000000

PTMEAS/CART,  52.131041, 46.177425, 28.000000, 0.808736, -0.588172, 0.000000

GOTO/CART,  57.500649, 50.789622, 28.000000

GOTO/CART,  57.779734, 57.807326, 28.000000

GOTO/CART,  55.352015, 64.397641, 28.000000

PTMEAS/CART,  48.822575, 67.131041, 28.000000, 0.588172, 0.808736, 0.000000

GOTO/CART,  44.210378, 72.500649, 28.000000

GOTO/CART,  37.192674, 72.779734, 28.000000

GOTO/CART,  30.602359, 70.352015, 28.000000

PTMEAS/CART,  27.868959, 63.822575, 28.000000, -0.808736, 0.588172, 0.000000

ENDMES

DECL/COMMON,INTGR,I

DECL/COMMON,INTGR,J

DECL/COMMON,DOUBLE,D_NUM[5],V1,V2

D_NUM[1] = OBTAIN/FA(CIR1),10

D_NUM[2] = OBTAIN/FA(CIR2),10

D_NUM[3] = OBTAIN/FA(CIR3),10

D_NUM[4] = OBTAIN/FA(CIR4),10

D_NUM[5] = OBTAIN/FA(CIR5),10

DO/I,1,5,1

J = ASSIGN/I+1

DO/J,1,5,1

IF/(D_NUM[I].GT.D_NUM[J])

V1 = ASSIGN/D_NUM[I]

V2 = ASSIGN/D_NUM[J]

D_NUM[J] = ASSIGN/V1

D_NUM[I] = ASSIGN/V2

ENDIF

ENDDO

ENDDO

TEXT/OUTFIL, 'RationalDMIS递减排序为:'

WRITE/DID(DEFAULTSCREEN),D_NUM[1],',',D_NUM[2],',',D_NUM[3],',',D_NUM[4],',',D_NUM[5]

示例二:

DMISMN/'Created by [山涧果子] on 星期一, 十月 09, 2017', 4.0

UNITS/MM, ANGDEC

WKPLAN/XYPLAN

PRCOMP/ON

TECOMP/ON

FLY/1.000

MODE/PROG, MAN

SNSET/APPRCH, 2.000

SNSET/RETRCT, 2.000

SNSET/DEPTH, 2.000

SNSET/SEARCH, 10.000

SNSET/CLRSRF, 30.000

RECALL/D(MCS)

SNSLCT/S(LENOVO)

GEOALG/CIRCLE, LSTSQR

GEOALG/ARC, LSTSQR

GEOALG/PLANE, LSTSQR

$$

$$

MODE/PROG,MAN

DECL/COMMON,INTGR,I

DECL/COMMON,INTGR,J

DECL/COMMON,DOUBLE,V[10]

DECL/COMMON,DOUBLE,L1

DECL/COMMON,DOUBLE,L2

V[1] = ASSIGN/20

V[2] = ASSIGN/5

V[3] = ASSIGN/15

V[4] = ASSIGN/2

V[5] = ASSIGN/8

V[6] = ASSIGN/12

V[7] = ASSIGN/24

V[8] = ASSIGN/35

V[9] = ASSIGN/17

V[10] = ASSIGN/45

$$

$$  RationalDMIS 递减排序

DO/I,1,10,1

J = ASSIGN/I+1

DO/J,1,10,1

IF/( V[I].GT.V[J])

L1 = ASSIGN/V[I]

L2 = ASSIGN/V[J]

V[J] = ASSIGN/L1

V[I] = ASSIGN/L2

ENDIF

ENDDO

ENDDO

TEXT/OUTFIL, ' RationalDMIS 递减排序:'

WRITE/DID(DEFAULTSCREEN),V[1],',',V[2],',',V[3],',',V[4],',',V[5],',',V[6],',',V[7],',',V[8],',',V[9],',',V[10]

RESUME/STOP

$$  RationalDMIS 递增排序

DO/I,1,10,1

J = ASSIGN/I+1

DO/J,1,10,1

IF/( V[I].LT.V[J])

L1 = ASSIGN/V[I]

L2 = ASSIGN/V[J]

V[J] = ASSIGN/L1

V[I] = ASSIGN/L2

ENDIF

ENDDO

ENDDO

TEXT/OUTFIL, ' RationalDMIS 递增排序:'

WRITE/DID(DEFAULTSCREEN),V[1],',',V[2],',',V[3],',',V[4],',',V[5],',',V[6],',',V[7],',',V[8],',',V[9],',',V[10]

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring Kafka中如何通过参数配置解决超时问题详解
下一篇:混合云时代该怎样利用云计算来达到
相关文章

 发表评论

暂时没有评论,来抢沙发吧~