1*----------------------------------------------------------------------- 2* UMSTVZ : SET VIEW PORT AND T-WINDOW 3*----------------------------------------------------------------------- 4* Copyright (C) 2000-2004 GFD Dennou Club. All rights reserved. 5*----------------------------------------------------------------------- 6 SUBROUTINE UMSTVZ 7 8 LOGICAL LPRJ 9 10 COMMON /UMWK1/ITR, RUNDEF, IUNDEF, PI, CPR, CPD, CP 11 12 13 CALL SGQVPT(VXMIN, VXMAX, VYMIN, VYMAX) 14 CALL SGLGET('L2TO3',LPRJ) 15 16 IF (LPRJ) THEN 17 RXMIN = 0. 18 RXMAX = 1. 19 RYMIN = 0. 20 RYMAX = 1. 21 ELSE 22 CALL STQWTR(RXMIN, RXMAX, RYMIN, RYMAX, 23 + WXMIN, WXMAX, WYMIN, WYMAX, IWTRF) 24 END IF 25 26 IF (VXMIN .EQ. RUNDEF) VXMIN = RXMIN 27 IF (VXMAX .EQ. RUNDEF) VXMAX = RXMAX 28 IF (VYMIN .EQ. RUNDEF) VYMIN = RYMIN 29 IF (VYMAX .EQ. RUNDEF) VYMAX = RYMAX 30 31 CALL SGSVPT(VXMIN, VXMAX, VYMIN, VYMAX) 32 33*------------------------------- T-WINDOW ------------------------------ 34 35 CALL SGQTXY(TXMIN, TXMAX, TYMIN, TYMAX) 36 37 IF (TXMIN .EQ. RUNDEF) TXMIN = -CPD*180 38 IF (TXMAX .EQ. RUNDEF) TXMAX = CPD*180 39 IF (TYMAX .EQ. RUNDEF) TYMAX = CPD*90 40 IF (TYMIN .EQ. RUNDEF) THEN 41 IF (ITR.EQ.30) THEN 42 CALL SGRGET('RSAT',RSAT) 43 IF (RSAT.EQ.0.) THEN 44 TYMIN = CPD*0. 45 ELSE 46 TYMIN = CPR*ASIN(1./RSAT) 47 END IF 48 ELSE 49 TYMIN = -CPD*90 50 END IF 51 END IF 52 53 CALL SGSTXY(TXMIN, TXMAX, TYMIN, TYMAX) 54 55 END 56