00001
00002 c
00003 c Copyright (c) 1986,1987,1988,1989,1990,1991,1992,1993,
00004 c by Steve McMillan, Drexel University, Philadelphia, PA.
00005 c
00006 c All rights reserved.
00007 c
00008 c Redistribution and use in source and binary forms are permitted
00009 c provided that the above copyright notice and this paragraph are
00010 c duplicated in all such forms and that any documentation,
00011 c advertising materials, and other materials related to such
00012 c distribution and use acknowledge that the software was developed
00013 c by the author named above.
00014 c
00015 c THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
00016 c IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
00017 c WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00018 c
00019
00020 subroutine dline(xarray,yarray,n,jth,jsymbl,htsym)
00021 save
00022 c
00023 c Like mline, but draws a dashed line.
00024 c
00025 c ***** This appears to have been absorbed into mline!
00026 c
00027 dimension xarray(1),yarray(1)
00028 character sim*3
00029 common/scales/ xminim,xmax,dxinch,yminim,ymax,dyinch,rlen,slen
00030 common/dash/dpatrn(10),dpat,npatrn,ipat,lpen
00031 common/fr bnds/mode
00032 c
00033 common /ngon stars/ istar
00034 c
00035 cinch(x,x0,dxi)=(x-x0)*dxi
00036 c
00037 call routine id('dline')
00038 c
00039 if(jth.eq.0) go to 2
00040 hite=abs(htsym)
00041 if(jsymbl.lt.0)then
00042 iascii=-jsymbl
00043 if(iascii.le.127)then
00044 nsym=-1
00045 sim=char(iascii)
00046 else if(iascii.le.223)then
00047 nsym=-2
00048 sim='@'
00049 else
00050 nsym=-2
00051 sim='%'
00052 end if
00053 if(htsym.lt.0.)nsym=-nsym
00054 end if
00055 c
00056 c *** plot symbols ***
00057 c
00058 int=abs(jth)
00059 do i=1,n,int
00060 x1=cinch(xarray(i),xminim,dxinch)
00061 y1=cinch(yarray(i),yminim,dyinch)
00062 if(mode.ne.0.and.
00063 + (x1.lt.0..or.x1.gt.rlen.or.y1.lt.0..or.y1.gt.slen))go to 1
00064 if(jsymbl.ge.0)then
00065 if(istar.eq.0)then
00066 call ngon(x1,y1,.5*htsym,jsymbl,0.)
00067 else
00068 call ngon(x1,y1,.5*htsym,-jsymbl,0.)
00069 end if
00070 else
00071 if (iascii.le.1) then
00072 c
00073 c Encode the number of the point in sim.
00074 c
00075 ii = i
00076 do while (ii.gt.61)
00077 ii = ii - 61
00078 end do
00079 if (ii.le.9) then
00080 sim = char(48+ii)
00081 else if (ii.le.35) then
00082 sim = char(87+ii)
00083 else
00084 sim = char(55+ii)
00085 end if
00086 end if
00087 call simbol(x1,y1,hite,sim,0.,nsym)
00088 end if
00089 end do
00090 if(jth.lt.0) return
00091 c
00092 c *** plot line ***
00093 c
00094 2 x1=cinch(xarray(1),xminim,dxinch)
00095 y1=cinch(yarray(1),yminim,dyinch)
00096 if(mode.eq.0)then
00097 call plot(x1,y1,3)
00098 else
00099 call plotin(x1,y1,3)
00100 end if
00101 do i=2,n
00102 x1=cinch(xarray(i),xminim,dxinch)
00103 y1=cinch(yarray(i),yminim,dyinch)
00104 if(mode.eq.0)then
00105 call dplot(x1,y1,2)
00106 else
00107 call dplotin(x1,y1,2)
00108 end if
00109 end do
00110 c
00111 end