Dear NCAR users,
I have been working with NCAR (version 3.2) sometime now and I would
like to ask for advice on a particular case.
I would like to make a 3d graph in which the NCAR routines
"srface", "frst3" and "vect3", will be combined.
To be precise I enclose a FORTRAN program which demonstrates
the problem.
In the program I plot the plane z=f(i,j)=1.0, i=1,it, j=1,jt with
"srface" and the perimeter of this surface with "vect3".
I expect the drawn perimeter to coincide with the perimeter of the
drawn surface but it does not.
It seems that routine "srface" follows a 3d->2d conversion different
than "set3".
I would be obliged if you could find a solution.
======================================================================
Alexander Venetsanos
NCSR "Demokritos",
Institute of Nuclear Technology & Radiation Protection,
Environmental Research Lab.,
15310 Aghia Paraskevi,
Athens, Greece
Tel: +30 1 6525004
Fax: +30 1 6525004
e-mail: venets@avra.nrcps.ariadne-t.gr
======================================================================
c
c Test Program
c
implicit none
c
integer it, jt, kt
parameter (it=20, jt=20, kt=20)
c
integer i, j
real height(it, jt)
real x(it), y(jt)
real rwrk(10*it*jt)
c
real dim, R, eye(6), ang1, ang2,
* PI, rit, rjt, rkt, stereo, angd1, angd2
c
rit=real(it)
rjt=real(jt)
rkt=real(kt)
c
do i=1, it
x(i)=real(i)
enddo
c
do j=1, jt
y(j)=real(j)
enddo
c
do j=1, jt
do i=1, it
height(i,j)= 1.0
enddo
enddo
c
call gopks(6,0)
call gopwk(1,2,8)
call gacwk(1)
c
10 continue
c
write(*,*) "Enter angle1 (degrees):"
read(*,*) angd1
write(*,*) "Enter angle2 (degrees):"
read(*,*) angd2
c
PI=3.14159
ang1 = angd1 * PI/180.0
ang2 = angd2 * PI/180.0
dim=(rit-1)*(rit-1)+(rjt-1)*(rjt-1)+(rkt-1)*(rkt-1)
dim=0.5*sqrt(dim)
R=4.0*dim
eye(4)=0.5*(rit+1.0)
eye(5)=0.5*(rjt+1.0)
eye(6)=0.5*(rkt+1.0)
eye(1) = eye(4) + R * cos (ang1) * cos (ang2)
eye(2) = eye(5) + R * sin (ang1) * cos (ang2)
eye(3) = eye(6) + R * sin (ang2)
c
call set3 (0.0, 1.0, 0.0, 1.0, 1.0, rit, 1.0, rjt, 1.0, rkt, eye)
c
call gsclip (0)
c
call frst3 (1.0, 1.0, 1.0)
call vect3 (rit, 1.0, 1.0)
call vect3 (rit, rjt, 1.0)
call vect3 (1.0, rjt, 1.0)
call vect3 (1.0, 1.0, 1.0)
c
stereo=0.0
call srface (x, y, height, rwrk, it, it, jt, eye, stereo)
c
call sflush
c
go to 10
c
end
c
This archive was generated by hypermail 2b29 : Wed Jun 28 2000 - 09:45:37 MDT