Previous: hidov Up: ../plot79_h.html Next: hidrv
SUBROUTINE HIDPV (Z1,ZE,Z2, NR,NP, PL2) C$ (Polar View) C$ Produce a perspective drawing of a single-valued function C$ defined in polar coordinates, in such a way as to exhibit C$ the radial and circumferential arcs. The arguments are: C$ C$ (Z1,Z2)........Range of function values. C$ ZE(NR,NP)......Array of function values. ZE(I,J) contains C$ z(r(I),phi(J)), where C$ r(I) = 0.02 + 0.98*(I-1)/(NR-1) C$ and C$ phi(J) = 360.0*(J-1)/(NP-1), C$ such that r steps from 0.02 to 1.0, and phi C$ steps from 0 to 360 degrees. For the figure C$ to join properly, it follows that ZE(*,1) C$ must be identical to ZE(*,NP); it is the C$ user's responsibility to ensure this. C$ NR.............Number of points on one radius. C$ NP.............Number of polar angles. This must be an C$ integer of the form 4*N+1 to ensure that the C$ four quadrants of the figure join properly. C$ PL2............2-D pen movement subroutine, normally PL2CA. C$ C$ The polar view produced is an orthographic C$ (non-perspective) view along a line passing through the C$ points (0,0,0) and (0,-1,0.44), with the z axis projecting C$ onto the vertical screen axis. This is an elevation of C$ about 26.56 degrees above the xy plane. Since the polar C$ angle, phi, is measured about the z axis counterclockwise C$ from the x axis, in the plot, phi = 0 degrees is on the C$ extreme right, phi = 180 degrees is on the extreme left, C$ and phi = 270 degrees is at the front center of the C$ drawing. C$ C$ The actual transformation to Normalized Device Coordinates C$ (u,v,w) is C$ C$ (u,v,w,1) = (x,y,z,1) (1/2 0 0 0) C$ ( 0 1/6 0 0) C$ ( 0 2/3 1 0) C$ (1/2 1/6 0 1) C$ C$ This maps x on the interval -1..1 into u on 0..1 and y on C$ -1..1 into v on (2/3)z..(2/3)z+(1/3). With z on 0..1, v is C$ then on 0..1. The specified function range Z1..Z2 is C$ mapped onto z on 0..1. C$ (15-APR-82)