SUBROUTINE OBJA(EX,EY,EZ,IDS,IDL,DIST) LOGICAL B1,B2,B3,B4,B5,B6,B7,B8,B9 DIMENSION LIST(3) COMMON/EYCEP/EYE(3),CEN(3),UP(3) COMMON/BULK/I3STRT,I3END,OBJ(6,30) COMMON/PAINT/I2STRT,I2END,PIC(4,30) COMMON/OIL/IVECT(200) COMMON/LIMITS/XMIN,XMAX,YMIN,YMAX DATA OBJFOR,D1,D2/5H(1X,1,5H9H EX,5H EY/ DATA D3,D4,D5/5H EZ,5H DIS,2HT)/ DATA FORM, F2/5H(1X,4,5HF5.1)/ CALL BUTTON(1) 10 B1=.FALSE. B2=.FALSE. B3=.FALSE. B4=.FALSE. B5=.FALSE. B6=.FALSE. B7=.FALSE. B8=.FALSE. B9=.FALSE. CALL BUTTON(3,B1,B2,B3,B4,B5,B6,B7,B8,B9) 11 DX=0 DY=0 DZ=0 DD=0 CALL TEXT(0,0,0,0,0) CALL TEXT(100,300,7,1,OBJFOR) CALL TEXT(100,250,7,1,FORM,EX,EY,EZ,DIST) 2 CALL BUTTON(2,B1,B2,B3,B4,B5,B6,B7,B8,B9) IF(B1.AND.B6) GO TO 12 IF(B2.AND.B7) GO TO 13 IF(B3.AND.B8) GO TO 38 IF(B1) GO TO 21 IF(B2) GO TO 22 IF(B3) GO TO 23 IF(B4) GO TO 24 IF(B5) GO TO 10 IF(B6) GO TO 26 IF(B7) GO TO 27 IF(B8) GO TO 28 IF(B9) GO TO 29 GO TO 2 38 CALL INPUT(3,36,LIST,.FALSE.,.TRUE.) DX=(LIST(1)-1020)/1000 DY=(LIST(2)-1040)/1000 GO TO 20 21 DX=0.1 GO TO 20 22 DY=0.1 GO TO 20 23 DZ=0.1 GO TO 20 24 DD=0.1 GO TO 20 26 DX=-0.1 GO TO 20 27 DY=-0.1 GO TO 20 28 DZ=-0.1 GO TO 20 29 DD=-0.1 GO TO 20 20 EX=EX+DX EY=EY+DY EZ=EZ+DZ DO 19 J=1,5 OBJ(1,J)=OBJ(1,J)+DX OBJ(2,J)=OBJ(2,J)+DY OBJ(3,J)=OBJ(3,J)+DZ OBJ(4,J)=OBJ(4,J)+DX OBJ(5,J)=OBJ(5,J)+DY OBJ(6,J)=OBJ(6,J)+DZ 19 CONTINUE DIST=DIST+DD CALL ROTER CALL MAPPER(DIST) CALL VECTOR(1,PIC,I2STRT,I2END,IVECT,1,LAST,7,0,0) CALL DISPLY(6,IDS,IVECT,1,LAST) CALL DISPLY(3,IDL) IH=IDS IDS=IDL IDL=IH GO TO 11 12 DO 18 J=1,5 OBJ(1,J)=OBJ(1,J)-EX OBJ(2,J)=OBJ(2,J)-EY OBJ(3,J)=OBJ(3,J)-EZ OBJ(4,J)=OBJ(4,J)-EX OBJ(5,J)=OBJ(5,J)-EY OBJ(6,J)=OBJ(6,J)-EZ 18 CONTINUE EX=0 EY=0 EZ=0 DIST=8.0 CALL ROTER CALL MAPPER(DIST) CALL VECTOR(1,PIC,I2STRT,I2END,IVECT,1,LAST,7,0,0) CALL DISPLY(6,IDS,IVECT,1,LAST) CALL DISPLY(3,IDL) IH=IDS IDS=IDL IDL=IH GO TO 10 13 RETURN END