    	SUBROUTINE IFOBLI( XOP, YOP, RAD1, RAD2, RAD3, ANGLE )
C
C  PROGRAMMER: R.S. ZHOU		MARCH-1986
C
C	THIS ROUTINE DRAWS AN OBLIQUE.
C
C	XOP ------- X-COORDINATE OF THE CENTER IN INCHES.
C	YOP ------- Y-COORDINATE OF THE CENTER IN INCHES.
C	RAD1 ------ DIAMETER OF OBLIQUE IN X-AXIS IN INCHES.
C	RAD2 ------ DIAMETER OF OBLIQUE IN Y-AXIS IN INCHES.
C	RAD3 ------ BORDER WIDTH (INWARD) IN INCHES.
C	ANGLE ----- ROTATION ANGLE OF OBJECT IN DEGREES FROM X-AXIS.
C
     	INCLUDE 'TEKLIB.CBS'

     	IF( ABS(RAD1).LT.0.05 .OR. ABS(RAD2).LT.0.05 ) RETURN
     	IWD = IDW
     	IF( ITM.EQ.1 ) GOTO 888
C
C  INITIALIZE...
C
     	IDW = 0
     	XPS = XOP
     	YPS = YOP
     	RD1 = 0.5*ABS(RAD1)
     	RD2 = 0.5*ABS(RAD2)
     	WID = ABS(RAD3)
     	IF( WID.GE.RD1 .OR. WID.GE.RD2 ) WID = 0.0
     	ANG = AMOD( ANGLE, 360.0 )
C
C  MOVE ORIGIN TO (XPS,YPS) ...
C
     	CALL IFPLOT( XPS, YPS, -9 )
C
C  SET ROTATION IF AT ALL...
C
     	IF( ANG.NE.0.0 ) THEN
     	    ANGX = XANG
     	    ANGY = YANG
     	    CALL IFROTA( ANG+XANG, ANG+YANG )
     	ENDIF
C
C  START THE DRAWING...
C
111	CALL IFPLOT( RD1, 0.0, 3 )
     	CALL IFPLOT( 0.0, RD2, 2 )
     	CALL IFPLOT(-RD1, 0.0, 2 )
     	CALL IFPLOT( 0.0,-RD2, 2 )
     	CALL IFPLOT( RD1, 0.0, 2 )
     	IF( WID.EQ.0.0 ) GOTO 222
     	RDD = WID*SQRT(RD1*RD1+RD2*RD2)
     	WID = RD1 - RDD/RD2
     	RD2 = RD2 - RDD/RD1
     	RD1 = WID
     	WID = 0.0
     	GOTO 111
C
C  RESTORE...
C
222	IF( ANG.NE.0.0 ) CALL IFROTA( ANGX, ANGY )
     	CALL IFPLOT( -XOP, -YOP, -9 )

888	IF( IWD.NE.0 ) THEN
     	    IF( NPPS.GT.0 ) CALL IFPLOT_DUMP
     	    WRITE(IDF,1000) RAD1,RAD2,RAD3, XOP,YOP, ANGLE
     	ENDIF
1000	FORMAT('OBLI:',6F8.3)
     	IDW = IWD

999	RETURN
    	END
