PLplot  5.10.0
sfstubsf95.f90
Go to the documentation of this file.
00001 !***********************************************************************
00002 !  sfstubsf95.f
00003 !
00004 !  Copyright (C) 2005, 2006  Arjen Markus
00005 !  Copyright (C) 2006-2014 Alan W. Irwin
00006 !
00007 !  This file is part of PLplot.
00008 !
00009 !  PLplot is free software; you can redistribute it and/or modify
00010 !  it under the terms of the GNU Library General Public License as published
00011 !  by the Free Software Foundation; either version 2 of the License, or
00012 !  (at your option) any later version.
00013 !
00014 !  PLplot is distributed in the hope that it will be useful,
00015 !  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 !  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 !  GNU Library General Public License for more details.
00018 !
00019 !  You should have received a copy of the GNU Library General Public License
00020 !  along with PLplot; if not, write to the Free Software
00021 !  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
00022 !
00023 !
00024 !  This file contains the interfaces for Fortran 95:
00025 !  - it includes the actual FORTRAN routines from the FORTRAN 95 bindings
00026 !  - it includes interfaces to the C routines from these bindings
00027 !  - it defines a few Fortran 95 specific items and interfaces
00028 !
00029 !  NB
00030 !  This module is written in fixed form.
00031 !  To enable a redefinition of certain interfaces, we actually have
00032 !  two modules.
00033 !
00034 !  NB
00035 !  The INTENT attribute is not currently used. This is a matter to
00036 !  be looked into.
00037 !
00038 !  NB
00039 !  It is assumed in the current implementation that all arrays are
00040 !  passed with correct dimensions. It would be wiser, perhaps, to
00041 !  use the minimum dimension instead of just the dimension of the
00042 !  first array.
00043 !
00044 !  NOTE:
00045 !  Some of the C routines will have to be renamed (via macros)
00046 !
00047 !***********************************************************************
00048 
00049 !
00050 ! Parameters for identifying the kind of PLplot's real
00051 ! numbers (a configuration parameter)
00052 ! Use whatever name suits you better.
00053 !
00054 module plplot_flt
00055    include 'plflt.inc'
00056 end module
00057 
00058 !
00059 ! Parameters and variables for strings / arrays for
00060 ! string conversion
00061 !
00062 module plplot_str
00063    integer :: maxleni
00064    parameter (maxlen = 320)
00065    parameter (maxleni = 80)
00066    character (len = maxlen) :: string1, string2, string3
00067    character (len = maxlen) :: string4, string5, string6
00068    character (len = maxlen) :: string7, string8, string9
00069    integer, dimension(maxleni) :: s1, s2, s3, s4, s5, s6, s7, s8, s9
00070 
00071    character(len=1), parameter :: PL_END_OF_STRING = achar(0)
00072 end module
00073 
00074 module plplotp
00075     use plplot_flt
00076     use plplot_str
00077     use plplot_strutils
00078     implicit none
00079 
00080     interface plcont
00081         module procedure plcontour_0
00082         module procedure plcontour_1
00083         module procedure plcontour_2
00084         module procedure plcontour_tr
00085         module procedure plcontour_0_all
00086         module procedure plcontour_1_all
00087         module procedure plcontour_2_all
00088         module procedure plcontour_tr_all
00089     end interface
00090     private :: plcontour_0, plcontour_1, plcontour_2, plcontour_tr
00091     private :: plcontour_0_all, plcontour_1_all, plcontour_2_all, plcontour_tr_all
00092 
00093     interface plvect
00094         module procedure plvectors_0
00095         module procedure plvectors_1
00096         module procedure plvectors_2
00097         module procedure plvectors_tr
00098     end interface
00099     private :: plvectors_0, plvectors_1, plvectors_2, plvectors_tr
00100 
00101     interface plshade
00102         module procedure plshade_single_0
00103         module procedure plshade_single_1
00104         module procedure plshade_single_2
00105         module procedure plshade_single_tr
00106     end interface
00107     private :: plshade_single_0, plshade_single_1, plshade_single_2, plshade_single_tr
00108 
00109     interface plshades
00110         module procedure plshades_multiple_0
00111         module procedure plshades_multiple_1
00112         module procedure plshades_multiple_1r
00113         module procedure plshades_multiple_2
00114         module procedure plshades_multiple_2r
00115         module procedure plshades_multiple_tr
00116         module procedure plshades_multiple_trr
00117     end interface
00118     private :: plshades_multiple_0, plshades_multiple_1, plshades_multiple_1r, &
00119                plshades_multiple_2, plshades_multiple_2r, &
00120                plshades_multiple_tr, plshades_multiple_trr
00121 
00122     interface plimagefr
00123         module procedure plimagefr_0
00124         module procedure plimagefr_1
00125         module procedure plimagefr_2
00126         module procedure plimagefr_tr
00127     end interface
00128     private :: plimagefr_0, plimagefr_1, plimagefr_2, plimagefr_tr
00129 
00130 contains
00131     include 'sfstubs.f90'
00132 end module plplotp
00133 
00134 module plplot_types
00135   use plplot_flt
00136   type :: PLGraphicsIn
00137      integer type          ! of event (CURRENTLY UNUSED)
00138      integer state         ! key or button mask
00139      integer keysym        ! key selected
00140      integer button        ! mouse button selected
00141      integer subwindow     ! subwindow (alias subpage, alias subplot) number
00142      character(len=16) string   ! translated string
00143      integer pX, pY        ! absolute device coordinates of pointer
00144      real(kind=plflt) dX, dY    ! relative device coordinates of pointer
00145      real(kind=plflt) wX, wY    ! world coordinates of pointer
00146   end type PLGraphicsIn
00147 end module plplot_types
00148 
00149 module plplot
00150     use plplotp
00151     use plplot_flt
00152     use plplot_types
00153     use plplot_strutils
00154     !
00155     ! To be added: renaming list
00156     !
00157 
00158     implicit none
00159     include 'plplot_parameters.h'
00160 
00161     !
00162     ! To be added: alternative interfaces
00163     !
00164     interface
00165         subroutine pladv( sub )
00166             integer :: sub
00167         end subroutine pladv
00168     end interface
00169 
00170     interface plbin
00171         module procedure plbin
00172     end interface
00173 
00174     interface
00175         subroutine plbop
00176         end subroutine plbop
00177     end interface
00178 
00179     interface
00180         subroutine plcalc_world( rx, ry, wx, wy, window )
00181             use plplot_flt
00182             real(kind=plflt) :: rx, ry, wx, wy
00183             integer          :: window
00184         end subroutine plcalc_world
00185     end interface
00186 
00187     interface
00188         subroutine plclear
00189         end subroutine plclear
00190     end interface
00191 
00192     interface
00193         subroutine plcol0( icol )
00194             integer :: icol
00195         end subroutine plcol0
00196     end interface
00197 
00198     interface
00199         subroutine plcol1( col )
00200             use plplot_flt
00201             real(kind=plflt) :: col
00202         end subroutine plcol1
00203     end interface
00204 
00205     interface plcolorbar
00206         module procedure plcolorbar_1
00207         module procedure plcolorbar_2
00208     end interface
00209 
00210     interface plcpstrm
00211          module procedure plcpstrm
00212     end interface
00213 
00214     interface
00215         subroutine plend
00216         end subroutine plend
00217     end interface
00218 
00219     interface
00220         subroutine plend1
00221         end subroutine plend1
00222     end interface
00223 
00224     interface
00225         subroutine plenv( xmin, xmax, ymin, ymax, just, axis )
00226             use plplot_flt
00227             real(kind=plflt) :: xmin, xmax, ymin, ymax
00228             integer          :: just, axis
00229         end subroutine plenv
00230     end interface
00231 
00232     interface
00233         subroutine pleop
00234         end subroutine pleop
00235     end interface
00236 
00237     interface plerrx
00238         module procedure plerrx
00239     end interface
00240 
00241     interface plerry
00242         module procedure plerry
00243     end interface
00244 
00245     interface plfamadv
00246         subroutine plfamadv
00247         end subroutine plfamadv
00248     end interface
00249 
00250     interface plfill
00251         module procedure plfill
00252     end interface
00253 
00254     interface plfill3
00255         module procedure plfill3
00256     end interface
00257 
00258     interface
00259         subroutine plflush
00260         end subroutine plflush
00261     end interface
00262 
00263     interface
00264         subroutine plfont( font )
00265             integer :: font
00266         end subroutine plfont
00267     end interface
00268 
00269     interface
00270         subroutine plfontld( charset )
00271             integer :: charset
00272         end subroutine plfontld
00273     end interface
00274 
00275     interface
00276         subroutine plgchr( chrdef, chrht )
00277             use plplot_flt
00278             real(kind=plflt) :: chrdef, chrht
00279         end subroutine plgchr
00280     end interface
00281 
00282     interface
00283         subroutine plgcmap1_range( min_color, max_color )
00284             use plplot_flt
00285             real(kind=plflt) :: min_color, max_color
00286         end subroutine plgcmap1_range
00287     end interface
00288 
00289     interface
00290         subroutine plgcol0( icol, r, g, b )
00291             integer :: icol, r, g, b
00292         end subroutine plgcol0
00293     end interface
00294 
00295     interface
00296         subroutine plgcol0a( icol, r, g, b, a )
00297             use plplot_flt
00298             integer :: icol, r, g, b
00299             real(kind=plflt) :: a
00300         end subroutine plgcol0a
00301     end interface
00302 
00303     interface
00304         subroutine plgcolbg( r, g, b )
00305             integer :: r, g, b
00306         end subroutine plgcolbg
00307     end interface
00308 
00309     interface
00310         subroutine plgcolbga( r, g, b, a )
00311             use plplot_flt
00312             integer :: r, g, b
00313             real(kind=plflt) :: a
00314         end subroutine plgcolbga
00315     end interface
00316 
00317     interface
00318         subroutine plgcompression( compression )
00319             integer :: compression
00320         end subroutine plgcompression
00321     end interface
00322 
00323     interface
00324         subroutine plgdidev( mar, aspect, jx, jy )
00325             use plplot_flt
00326             real(kind=plflt) :: mar, aspect, jx, jy
00327         end subroutine plgdidev
00328     end interface
00329 
00330     interface
00331         subroutine plgdiori( rot )
00332             use plplot_flt
00333             real(kind=plflt) :: rot
00334         end subroutine plgdiori
00335     end interface
00336 
00337     interface
00338         subroutine plgdiplt( xmin, xmax, ymin, ymax )
00339             use plplot_flt
00340             real(kind=plflt) :: xmin, xmax, ymin, ymax
00341         end subroutine plgdiplt
00342     end interface
00343 
00344     interface
00345         subroutine plgetcursor( gin )
00346             use plplot_flt
00347             use plplot_types
00348             type(PLGraphicsIn) :: gin
00349         end subroutine plgetcursor
00350     end interface
00351 
00352     interface
00353         subroutine plgfam( fam, num, bmax )
00354             integer :: fam, num, bmax
00355         end subroutine plgfam
00356     end interface
00357 
00358     interface
00359         subroutine plgfci( fci )
00360             use plplot_flt
00361             integer(kind=plunicode) :: fci
00362         end subroutine plgfci
00363     end interface
00364 
00365     interface
00366         subroutine plgfont( family, style, weight )
00367             integer :: family, style, weight
00368         end subroutine plgfont
00369     end interface
00370 
00371     interface
00372         subroutine plglevel( level )
00373             integer :: level
00374         end subroutine plglevel
00375     end interface
00376 
00377     interface
00378         subroutine plgpage( xpmm, ypmm, xwid, ywid, xoff, yoff )
00379             use plplot_flt
00380             real(kind=plflt) :: xpmm, ypmm
00381             integer          :: xwid, ywid, xoff, yoff
00382         end subroutine plgpage
00383     end interface
00384 
00385     interface
00386         subroutine plgra
00387         end subroutine plgra
00388     end interface
00389 
00390     interface plgradient
00391         module procedure plgradient
00392     end interface
00393 
00394     interface plgriddata
00395         module procedure plgriddata
00396     end interface
00397 
00398     interface
00399         subroutine plgspa( xmin, xmax, ymin, ymax )
00400             use plplot_flt
00401             real(kind=plflt) :: xmin, xmax, ymin, ymax
00402         end subroutine plgspa
00403     end interface
00404 
00405     interface
00406         subroutine plgstrm( strm )
00407             integer :: strm
00408         end subroutine plgstrm
00409     end interface
00410 
00411     interface
00412         subroutine plgvpd( xmin, xmax, ymin, ymax )
00413             use plplot_flt
00414             real(kind=plflt) :: xmin, xmax, ymin, ymax
00415         end subroutine plgvpd
00416     end interface
00417 
00418     interface
00419         subroutine plgvpw( xmin, xmax, ymin, ymax )
00420             use plplot_flt
00421             real(kind=plflt) :: xmin, xmax, ymin, ymax
00422         end subroutine plgvpw
00423     end interface
00424 
00425     interface
00426         subroutine plgxax( digmax, digits )
00427             integer :: digmax, digits
00428         end subroutine plgxax
00429     end interface
00430 
00431     interface
00432         subroutine plgyax( digmax, digits )
00433             integer :: digmax, digits
00434         end subroutine plgyax
00435     end interface
00436 
00437     interface
00438         subroutine plgzax( digmax, digits )
00439             integer :: digmax, digits
00440         end subroutine plgzax
00441     end interface
00442 
00443     interface plhist
00444         module procedure plhist
00445     end interface
00446 
00447     interface
00448         subroutine plhls( h, l, s )
00449             use plplot_flt
00450             real(kind=plflt) :: h, l, s
00451         end subroutine plhls
00452     end interface
00453 
00454     interface
00455         subroutine plhlsrgb( h, l, s, r, g, b )
00456             use plplot_flt
00457             real(kind=plflt) :: h, l, s, r, g, b
00458         end subroutine plhlsrgb
00459     end interface
00460 
00461     interface
00462         subroutine plinit
00463         end subroutine plinit
00464     end interface
00465 
00466     interface
00467         subroutine pljoin( x1, y1, x2, y2 )
00468             use plplot_flt
00469             real(kind=plflt) :: x1, y1, x2, y2
00470         end subroutine pljoin
00471     end interface
00472 
00473     interface
00474         subroutine pllightsource( x, y, z )
00475             use plplot_flt
00476             real(kind=plflt) :: x, y, z
00477         end subroutine pllightsource
00478     end interface
00479 
00480     interface pllegend
00481         module procedure pllegend_1
00482         module procedure pllegend_2
00483     end interface
00484 
00485     interface plline
00486         module procedure plline
00487     end interface
00488 
00489     interface plline3
00490         module procedure plline3
00491     end interface
00492 
00493     interface pllsty
00494         subroutine pllsty( lin )
00495             integer :: lin
00496         end subroutine pllsty
00497     end interface
00498 
00499     interface plmap
00500         module procedure plmap1, plmap2
00501     end interface plmap
00502 
00503     interface plmeridians
00504         module procedure plmeridians1, plmeridians2
00505     end interface plmeridians
00506 
00507     interface plmesh
00508         module procedure plmesh
00509     end interface
00510 
00511     interface plmeshc
00512         module procedure plmeshc
00513     end interface
00514 
00515     interface
00516         subroutine plmkstrm( strm )
00517             integer :: strm
00518         end subroutine plmkstrm
00519     end interface
00520 
00521     interface
00522         subroutine plpat( nlin, inc, del )
00523             integer :: nlin, inc, del
00524         end subroutine plpat
00525     end interface
00526 
00527     interface
00528         subroutine plpath( n, x1, y1, x2, y2 )
00529             use plplot_flt
00530             integer :: n
00531             real(kind=plflt) :: x1, y1, x2, y2
00532         end subroutine plpath
00533     end interface
00534 
00535     interface plot3d
00536         module procedure plot3d
00537     end interface
00538 
00539     interface plot3dc
00540         module procedure plot3dc
00541     end interface
00542 
00543     interface plpoin
00544         module procedure plpoin
00545     end interface
00546 
00547     interface plpoin3
00548         module procedure plpoin3
00549     end interface
00550 
00551     interface plpoly3
00552         module procedure plpoly3
00553     end interface
00554 
00555     interface
00556         subroutine plprec( setp, prec )
00557             integer :: setp, prec
00558         end subroutine plprec
00559     end interface
00560 
00561     interface
00562         subroutine plpsty( patt )
00563             integer :: patt
00564         end subroutine plpsty
00565     end interface
00566 
00567     interface
00568         subroutine plreplot
00569         end subroutine plreplot
00570     end interface
00571 
00572     !
00573     ! Note: plrgb and plrgb1 can be merged
00574     !
00575     interface
00576         subroutine plrgb( r, g, b )
00577             use plplot_flt
00578             real(kind=plflt) :: r, g, b
00579         end subroutine plrgb
00580     end interface
00581 
00582     interface
00583         subroutine plrgb1( r, g, b )
00584             integer :: r, g, b
00585         end subroutine plrgb1
00586     end interface
00587 
00588     interface
00589         subroutine plrgbhls( r, g, b, h, l, s )
00590             use plplot_flt
00591             real(kind=plflt) :: r, g, b, h, l, s
00592         end subroutine plrgbhls
00593     end interface
00594 
00595     interface
00596         subroutine plschr( chrdef, chrht )
00597             use plplot_flt
00598             real(kind=plflt) :: chrdef, chrht
00599         end subroutine plschr
00600     end interface
00601 
00602     interface plscmap0
00603         module procedure plscmap0
00604     end interface
00605 
00606     interface plscmap0a
00607         module procedure plscmap0a
00608     end interface
00609 
00610     interface
00611         subroutine plscmap0n( n )
00612             integer :: n
00613         end subroutine plscmap0n
00614     end interface
00615 
00616     interface plscmap1
00617         module procedure plscmap1
00618     end interface
00619 
00620     interface plscmap1a
00621         module procedure plscmap1a
00622     end interface
00623 
00624     interface plscmap1l
00625         module procedure plscmap1l
00626         module procedure plscmap1l2
00627     end interface
00628 
00629     interface plscmap1la
00630         module procedure plscmap1la
00631         module procedure plscmap1la2
00632     end interface
00633 
00634     interface
00635         subroutine plscmap1n( n )
00636             integer :: n
00637         end subroutine plscmap1n
00638     end interface
00639 
00640     interface
00641        subroutine plscmap1_range( min_color, max_color )
00642          use plplot_flt
00643          real(kind=plflt) :: min_color, max_color
00644        end subroutine plscmap1_range
00645     end interface
00646 
00647     interface
00648         subroutine plscol0( icol, r, g, b )
00649             integer :: icol, r, g, b
00650         end subroutine plscol0
00651     end interface
00652 
00653     interface
00654         subroutine plscol0a( icol, r, g, b, a )
00655             use plplot_flt
00656             integer :: icol, r, g, b
00657             real(kind=plflt) :: a
00658         end subroutine plscol0a
00659     end interface
00660 
00661     interface
00662         subroutine plscolbg( r, g, b )
00663             integer :: r, g, b
00664         end subroutine plscolbg
00665     end interface
00666 
00667     interface
00668         subroutine plscolbga( r, g, b, a )
00669             use plplot_flt
00670             integer :: r, g, b
00671             real(kind=plflt) :: a
00672         end subroutine plscolbga
00673     end interface
00674 
00675     interface
00676         subroutine plscolor( color )
00677             integer :: color
00678         end subroutine plscolor
00679     end interface
00680 
00681     interface
00682         subroutine plscompression( compression )
00683             integer :: compression
00684         end subroutine plscompression
00685     end interface
00686 
00687     interface
00688         subroutine plsdidev( mar, aspect, jx, jy )
00689             use plplot_flt
00690             real(kind=plflt) :: mar, aspect, jx, jy
00691         end subroutine plsdidev
00692     end interface
00693 
00694     interface
00695         subroutine plsdimap( dimxmi, dimxmax, diymin, dimymax, dimxpmm, diypmm )
00696             use plplot_flt
00697             real(kind=plflt) :: dimxmi, dimxmax, diymin, dimymax, dimxpmm, diypmm
00698         end subroutine plsdimap
00699     end interface
00700 
00701     interface
00702         subroutine plsdiori( rot )
00703             use plplot_flt
00704             real(kind=plflt) :: rot
00705         end subroutine plsdiori
00706     end interface
00707 
00708     interface
00709         subroutine plsdiplt( xmin, xmax, ymin, ymax )
00710             use plplot_flt
00711             real(kind=plflt) :: xmin, xmax, ymin, ymax
00712         end subroutine plsdiplt
00713     end interface
00714 
00715     interface
00716         subroutine plsdiplz( xmin, xmax, ymin, ymax )
00717             use plplot_flt
00718             real(kind=plflt) :: xmin, xmax, ymin, ymax
00719         end subroutine plsdiplz
00720     end interface
00721 
00722     interface
00723         subroutine plseed( s )
00724            integer :: s
00725         end subroutine plseed
00726     end interface
00727 
00728     ! TODO: character-version
00729     interface
00730         subroutine plsesc( esc )
00731             integer :: esc
00732         end subroutine plsesc
00733     end interface
00734 
00735     !
00736     ! TODO: F95-specific form for these routines
00737     !
00738     interface plsetmapformc
00739         subroutine plsetmapformc( mapform )
00740             use plplot_flt
00741             interface
00742                 subroutine mapform( n, x, y )
00743                     use plplot_flt
00744                     integer                        :: n
00745                     real(kind=plflt), dimension(*) :: x, y
00746                 end subroutine mapform
00747             end interface
00748         end subroutine plsetmapformc
00749     end interface
00750 
00751     interface
00752         subroutine plsfam( fam, num, bmax )
00753             integer :: fam, num, bmax
00754         end subroutine plsfam
00755     end interface
00756 
00757     interface
00758         subroutine plsfci( fci )
00759             use plplot_flt
00760             integer(kind=plunicode) :: fci
00761         end subroutine plsfci
00762     end interface
00763 
00764     interface
00765         subroutine plsfont( family, style, weight )
00766             integer :: family, style, weight
00767         end subroutine plsfont
00768     end interface
00769 
00770     interface plslabelfunc
00771         subroutine plslabelfunc_on( labelfunc )
00772             interface
00773                 subroutine labelfunc(axis, value, label, length)
00774                     use plplot_flt
00775                     implicit none
00776                     integer :: axis, length
00777                     real(kind=plflt) :: value
00778                     character*(length) label
00779                 end subroutine labelfunc
00780             end interface
00781         end subroutine plslabelfunc_on
00782 
00783         subroutine plslabelfunc_off( dummy )
00784             implicit none
00785             integer :: dummy
00786         end subroutine plslabelfunc_off
00787 
00788         subroutine plslabelfunc_none
00789         end subroutine plslabelfunc_none
00790 
00791     end interface
00792 
00793     interface
00794         subroutine plsmaj( def, scale )
00795             use plplot_flt
00796             real(kind=plflt) :: def, scale
00797         end subroutine plsmaj
00798     end interface
00799 
00800     ! plsmem: void * argument tricky - TODO
00801     ! plsmema: void * argument tricky - TODO
00802 
00803     interface
00804         subroutine plsmin( def, scale )
00805             use plplot_flt
00806             real(kind=plflt) :: def, scale
00807         end subroutine plsmin
00808     end interface
00809 
00810     interface
00811         subroutine plsori( rot )
00812             integer :: rot
00813         end subroutine plsori
00814     end interface
00815 
00816     interface
00817         subroutine plspage( xpmm, ypmm, xwid, ywid, xoff, yoff )
00818             use plplot_flt
00819             real(kind=plflt) :: xpmm, ypmm
00820             integer          :: xwid, ywid, xoff, yoff
00821         end subroutine plspage
00822     end interface
00823 
00824     interface plspause
00825         module procedure plspause
00826     end interface
00827 
00828     interface
00829         subroutine plsstrm( strm )
00830             integer :: strm
00831         end subroutine plsstrm
00832     end interface
00833 
00834     interface
00835         subroutine plssub( nx, ny )
00836             integer :: nx, ny
00837         end subroutine plssub
00838     end interface
00839 
00840     interface
00841         subroutine plssym( def, scale )
00842             use plplot_flt
00843             real(kind=plflt) :: def, scale
00844         end subroutine plssym
00845     end interface
00846 
00847     interface
00848         subroutine plstar( nx, ny )
00849             integer :: nx, ny
00850         end subroutine plstar
00851     end interface
00852 
00853     interface plstransform
00854         subroutine plstransform1( transformfunc )
00855             interface
00856                 subroutine transformfunc(x, y, xt, yt)
00857                     use plplot_flt
00858                     implicit none
00859                     real(kind=plflt) :: x, y, xt, yt
00860                 end subroutine transformfunc
00861             end interface
00862         end subroutine plstransform1
00863 
00864         subroutine plstransform2( dummy )
00865             implicit none
00866             integer :: dummy
00867         end subroutine plstransform2
00868 
00869         subroutine plstransform3
00870         end subroutine plstransform3
00871 
00872     end interface
00873 
00874     interface
00875         subroutine plstripa( id, pen, x, y )
00876             use plplot_flt
00877             integer          :: id, pen
00878             real(kind=plflt) :: x, y
00879         end subroutine plstripa
00880     end interface
00881 
00882     interface
00883         subroutine plstripd( id )
00884             integer :: id
00885         end subroutine plstripd
00886     end interface
00887 
00888     interface
00889         subroutine plstyl( n, mark, space )
00890             integer :: n, mark, space
00891         end subroutine plstyl
00892     end interface
00893 
00894     interface plsurf3d
00895         module procedure plsurf3d
00896     end interface
00897 
00898     interface plstripc
00899         module procedure plstripc
00900     end interface
00901 
00902     interface plsvect
00903         module procedure plsvect1
00904 
00905         subroutine plsvect2
00906         end subroutine plsvect2
00907 
00908     end interface
00909 
00910     interface
00911         subroutine plsvpa( xmin, xmax, ymin, ymax )
00912             use plplot_flt
00913             real(kind=plflt) :: xmin, xmax, ymin, ymax
00914         end subroutine plsvpa
00915     end interface
00916 
00917     interface
00918         subroutine plsxax( digmax, digits )
00919             integer :: digmax, digits
00920         end subroutine plsxax
00921     end interface
00922 
00923     interface
00924         subroutine plsyax( digmax, digits )
00925             integer :: digmax, digits
00926         end subroutine plsyax
00927     end interface
00928 
00929     interface plsym
00930         module procedure plsym
00931     end interface
00932 
00933     interface
00934         subroutine plszax( digmax, digits )
00935             integer :: digmax, digits
00936         end subroutine plszax
00937     end interface
00938 
00939     interface
00940         subroutine pltext
00941         end subroutine pltext
00942     end interface
00943 
00944     interface
00945         subroutine plvasp( aspect )
00946             use plplot_flt
00947             real(kind=plflt) :: aspect
00948         end subroutine plvasp
00949     end interface
00950 
00951     interface
00952         subroutine plvpas( xmin, xmax, ymin, ymax, aspect )
00953             use plplot_flt
00954             real(kind=plflt) :: xmin, xmax, ymin, ymax, aspect
00955         end subroutine plvpas
00956     end interface
00957 
00958     interface
00959         subroutine plvpor( xmin, xmax, ymin, ymax )
00960             use plplot_flt
00961             real(kind=plflt) :: xmin, xmax, ymin, ymax
00962         end subroutine plvpor
00963     end interface
00964 
00965     interface
00966         subroutine plvsta
00967         end subroutine plvsta
00968     end interface
00969 
00970     interface
00971         subroutine plw3d( basex, basey, height, xmin, xmax, ymin, ymax, zmin, zmax, alt, az )
00972             use plplot_flt
00973             real(kind=plflt) :: basex, basey, height, xmin, xmax, ymin, ymax, zmin, zmax, alt, az
00974         end subroutine plw3d
00975     end interface
00976 
00977     interface
00978         subroutine plwidth( width )
00979             use plplot_flt
00980             real(kind=plflt) :: width
00981         end subroutine plwidth
00982     end interface
00983 
00984     interface
00985         subroutine plwind( xmin, xmax, ymin, ymax )
00986             use plplot_flt
00987             real(kind=plflt) :: xmin, xmax, ymin, ymax
00988         end subroutine plwind
00989     end interface
00990 
00991     interface plxormod
00992         module procedure plxormod
00993     end interface
00994 
00995 
00996     private :: convert_to_int
00997     private :: convert_to_log
00998 
00999 ! -------------------------------------------------------------------
01000 contains
01001 ! -------------------------------------------------------------------
01002     integer function convert_to_int( logvalue )
01003        logical :: logvalue
01004        if ( logvalue ) then
01005          convert_to_int = 1
01006        else
01007          convert_to_int = 0
01008        endif
01009     end function convert_to_int
01010 
01011     logical function convert_to_log( intvalue )
01012        integer :: intvalue
01013        convert_to_log = intvalue.ne.0
01014     end function convert_to_log
01015 
01016     subroutine plbin( x, y, center )
01017        real(kind=plflt), dimension(:) :: x, y
01018        integer                        :: center
01019 
01020        call plbinf95( size(x), x, y, center )
01021     end subroutine plbin
01022 
01023     subroutine plcolorbar_1( p_colorbar_width, p_colorbar_height, &
01024          opt, position, x, y, &
01025          x_length, y_length, &
01026          bg_color, bb_color, bb_style, &
01027          low_cap_color, high_cap_color, &
01028          cont_color, cont_width, &
01029          n_labels, label_opts, labels, &
01030          n_axes, axis_opts, ticks, sub_ticks, &
01031          n_values, values)
01032       real (kind=plflt) :: p_colorbar_width, p_colorbar_height
01033       integer :: opt, position, bg_color, bb_color, bb_style, cont_color
01034       integer :: n_labels, n_axes
01035       real (kind=plflt) :: x, y, x_length, y_length, low_cap_color, high_cap_color, cont_width
01036       integer, dimension(:) :: label_opts, sub_ticks, n_values
01037       real (kind=plflt), dimension(:) :: ticks
01038       real (kind=plflt), dimension(:,:) :: values
01039       character(len=*), dimension(:) :: labels, axis_opts
01040 
01041       !
01042       ! Convert the text arrays and store the results in a convenient
01043       ! albeit global location. This way we avoid all manner of complications.
01044       ! (Though introducing a potentially nasty one: non-threadsafety)
01045       !
01046       call pllegend07_cnv_text( 3, n_labels, labels )
01047       call pllegend07_cnv_text( 4, n_axes, axis_opts )
01048 
01049       call plcolorbar07(p_colorbar_width, p_colorbar_height, &
01050            opt, position, x, y, &
01051            x_length, y_length, &
01052            bg_color, bb_color, bb_style, &
01053            low_cap_color, high_cap_color, &
01054            cont_color, cont_width, &
01055            n_labels, label_opts, n_axes, ticks, sub_ticks, &
01056            n_values, values)
01057     end subroutine plcolorbar_1
01058 
01059     subroutine plcolorbar_2( p_colorbar_width, p_colorbar_height, &
01060          opt, position, x, y, &
01061          x_length, y_length, &
01062          bg_color, bb_color, bb_style, &
01063          low_cap_color, high_cap_color, &
01064          cont_color, cont_width, &
01065          label_opts, labels, axis_opts, ticks, sub_ticks, &
01066          n_values, values)
01067       real (kind=plflt) :: p_colorbar_width, p_colorbar_height
01068       integer :: opt, position, bg_color, bb_color, bb_style, cont_color
01069       real (kind=plflt) :: x, y, x_length, y_length, low_cap_color, high_cap_color, cont_width
01070       integer, dimension(:) :: label_opts, sub_ticks, n_values
01071       real (kind=plflt), dimension(:) :: ticks
01072       real (kind=plflt), dimension(:,:) :: values
01073       character(len=*), dimension(:) :: labels, axis_opts
01074 
01075       integer :: n_labels, n_axes
01076 
01077       n_labels = size(label_opts,1)
01078       n_axes = size(axis_opts,1)
01079       !
01080       ! Convert the text arrays and store the results in a convenient
01081       ! albeit global location. This way we avoid all manner of complications.
01082       ! (Though introducing a potentially nasty one: non-threadsafety)
01083       !
01084       call pllegend07_cnv_text( 3, n_labels, labels )
01085       call pllegend07_cnv_text( 4, n_axes, axis_opts )
01086 
01087       call plcolorbar07(p_colorbar_width, p_colorbar_height, &
01088            opt, position, x, y, &
01089            x_length, y_length, &
01090            bg_color, bb_color, bb_style, &
01091            low_cap_color, high_cap_color, &
01092            cont_color, cont_width, &
01093            n_labels, label_opts, n_axes, ticks, sub_ticks, &
01094            n_values, values)
01095     end subroutine plcolorbar_2
01096 
01097     subroutine plcpstrm( iplsr, flags )
01098        integer                        :: iplsr
01099        logical                        :: flags
01100 
01101        integer                        :: iflags
01102 
01103        iflags = convert_to_int( flags )
01104        call plcpstrmf95( iplsr, iflags )
01105     end subroutine plcpstrm
01106 
01107     subroutine plerrx( xmin, xmax, y )
01108        real(kind=plflt), dimension(:) :: xmin, xmax, y
01109 
01110        call plerrxf95( size(xmin), xmin, xmax, y )
01111     end subroutine plerrx
01112 
01113     subroutine plerry( x, ymin, ymax )
01114        real(kind=plflt), dimension(:) :: x, ymin, ymax
01115 
01116        call plerryf95( size(x), x, ymin, ymax )
01117     end subroutine plerry
01118 
01119     subroutine plfill( x, y )
01120        real(kind=plflt), dimension(:) :: x, y
01121 
01122        call plfillf95( size(x), x, y )
01123     end subroutine plfill
01124 
01125     subroutine plfill3( x, y, z )
01126        real(kind=plflt), dimension(:) :: x, y, z
01127 
01128        call plfill3f95( size(x), x, y, z )
01129     end subroutine plfill3
01130 
01131     subroutine plgradient( x, y, angle )
01132        real(kind=plflt), dimension(:) :: x, y
01133        real(kind=plflt)               :: angle
01134 
01135        call plgradientf95( size(x), x, y, angle )
01136     end subroutine plgradient
01137 
01138     subroutine plgriddata( x, y, z, xg, yg, zg, type, data )
01139        real(kind=plflt), dimension(:)   :: x, y, z, xg, yg
01140        real(kind=plflt), dimension(:,:) :: zg
01141        real(kind=plflt)                 :: data
01142        integer                          :: type
01143 
01144        call plgriddataf95( x, y, z, size(x), xg, size(xg), yg, size(yg), zg, &
01145           type, data )
01146 
01147        return
01148     end subroutine plgriddata
01149 
01150     subroutine plhist( data, datmin, datmax, nbin, oldwin )
01151        real(kind=plflt), dimension(:) :: data
01152        real(kind=plflt)               :: datmin, datmax
01153        integer                        :: nbin, oldwin
01154 
01155        call plhistf95( size(data), data, datmin, datmax, nbin, oldwin )
01156     end subroutine plhist
01157 
01158 !     subroutine plimagefr( idata, xmin, xmax, ymin, ymax, zmin, zmax, &
01159 !                           dxmin, dxmax, dymin, dymax, valuemin, valuemax )
01160 !        real(kind=plflt), dimension(:,:) :: idata
01161 !        real(kind=plflt)                 :: xmin,  xmax,  ymin,  ymax,  zmin, zmax
01162 !        real(kind=plflt)                 :: dxmin, dxmax, dymin, dymax, &
01163 !                                            valuemin, valuemax
01164 !
01165 !        integer                          :: nx, ny
01166 !
01167 !        nx = size(idata,1)
01168 !        ny = size(idata,2)
01169 !        call plimagefrf95( idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, &
01170 !                           dxmin, dxmax, dymin, dymax, valuemin, valuemax )
01171 !     end subroutine plimagefr
01172 
01173     subroutine plimage( idata, xmin, xmax, ymin, ymax, zmin, zmax, &
01174                         dxmin, dxmax, dymin, dymax )
01175        real(kind=plflt), dimension(:,:) :: idata
01176        real(kind=plflt)                 :: xmin,  xmax,  ymin,  ymax,  zmin, zmax
01177        real(kind=plflt)                 :: dxmin, dxmax, dymin, dymax
01178 
01179        integer                          :: nx, ny
01180 
01181        nx = size(idata,1)
01182        ny = size(idata,2)
01183        call plimagef95( idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, &
01184                         dxmin, dxmax, dymin, dymax )
01185     end subroutine plimage
01186 
01187     subroutine pllegend_1( legend_width, legend_height, &
01188                            opt, position, x, y, &
01189                            plot_width, bg_color, bb_color, bb_style, &
01190                            nrow, ncolumn, nlegend, opt_array, &
01191                            text_offset, text_scale, text_spacing, &
01192                            text_justification, text_colors, text, &
01193                            box_colors, box_patterns, box_scales, &
01194                            box_line_widths, &
01195                            line_colors, line_styles, line_widths, &
01196                            symbol_colors, symbol_scales, &
01197                            symbol_numbers, symbols )
01198 
01199     real(kind=plflt)               :: legend_width, legend_height, plot_width, x, y
01200     real(kind=plflt)               :: text_offset, text_scale, text_spacing, text_justification
01201     integer                        :: position, opt, bg_color, bb_color, bb_style
01202     integer                        :: nrow, ncolumn, nlegend
01203 
01204     character(len=*), dimension(:) :: text, symbols
01205 
01206     integer, dimension(:)          :: opt_array, text_colors, box_colors
01207     integer, dimension(:)          :: box_patterns
01208     real(kind=plflt), dimension(:) :: box_line_widths
01209     integer, dimension(:)          :: line_colors, line_styles
01210     real(kind=plflt), dimension(:) :: line_widths
01211     integer, dimension(:)          :: symbol_colors, symbol_numbers
01212     real(kind=plflt), dimension(:) :: box_scales, symbol_scales
01213 
01214     !
01215     ! Convert the text arrays and store the results in a convenient
01216     ! albeit global location. This way we avoid all manner of complications.
01217     ! (Though introducing a potentially nasty one: non-threadsafety)
01218     !
01219     call pllegend07_cnv_text( 1, nlegend, text )
01220     call pllegend07_cnv_text( 2, nlegend, symbols )
01221 
01222     call pllegend07( legend_width, legend_height, opt, position, x, y, &
01223                      plot_width, bg_color, bb_color, bb_style, &
01224                      nrow, ncolumn, nlegend, opt_array, &
01225                      text_offset, text_scale, text_spacing, &
01226                      text_justification, text_colors, &
01227                      box_colors, box_patterns, box_scales, &
01228                      box_line_widths, &
01229                      line_colors, line_styles, line_widths, &
01230                      symbol_colors, symbol_scales, &
01231                      symbol_numbers )
01232 
01233     end subroutine pllegend_1
01234 
01235     subroutine pllegend_2( legend_width, legend_height, &
01236                            opt, position, x, y, &
01237                            plot_width, bg_color, bb_color, bb_style, &
01238                            nrow, ncolumn, opt_array, &
01239                            text_offset, text_scale, text_spacing, &
01240                            text_justification, text_colors, text, &
01241                            box_colors, box_patterns, box_scales, &
01242                            box_line_widths, &
01243                            line_colors, line_styles, line_widths, &
01244                            symbol_colors, symbol_scales, &
01245                            symbol_numbers, symbols )
01246 
01247     real(kind=plflt)               :: legend_width, legend_height, plot_width, x, y
01248     real(kind=plflt)               :: text_offset, text_scale, text_spacing, text_justification
01249     integer                        :: position, opt, bg_color, bb_color, bb_style
01250     integer                        :: nrow, ncolumn
01251 
01252     character(len=*), dimension(:) :: text, symbols
01253 
01254     integer, dimension(:)          :: opt_array, text_colors, box_colors
01255     integer, dimension(:)          :: box_patterns
01256     real(kind=plflt), dimension(:) :: box_line_widths
01257     integer, dimension(:)          :: line_colors, line_styles
01258     real(kind=plflt), dimension(:) :: line_widths
01259     integer, dimension(:)          :: symbol_colors, symbol_numbers
01260     real(kind=plflt), dimension(:) :: box_scales, symbol_scales
01261 
01262     integer                        :: nlegend
01263 
01264     !
01265     ! Determine number of legend entries
01266     !
01267     nlegend = min( size(opt_array), size(text) )
01268 
01269     call pllegend_1( legend_width, legend_height, &
01270                      opt, position, x, y, &
01271                      plot_width, bg_color, bb_color, bb_style, &
01272                      nrow, ncolumn, nlegend, opt_array, &
01273                      text_offset, text_scale, text_spacing, &
01274                      text_justification, text_colors, text, &
01275                      box_colors, box_patterns, box_scales, &
01276                      box_line_widths, &
01277                      line_colors, line_styles, line_widths, &
01278                      symbol_colors, symbol_scales, &
01279                      symbol_numbers, symbols )
01280 
01281     end subroutine pllegend_2
01282 
01283     subroutine plline( x, y )
01284        real(kind=plflt), dimension(:) :: x, y
01285 
01286        call pllinef95( size(x), x, y )
01287     end subroutine plline
01288 
01289     subroutine plline3( x, y, z )
01290        real(kind=plflt), dimension(:) :: x, y, z
01291 
01292        call plline3f95( size(x), x, y, z )
01293     end subroutine plline3
01294 
01295     subroutine plmap1(mapform,mapname,minx,maxx,miny,maxy)
01296       use plplot_flt
01297       use plplot_str
01298       implicit none
01299       real(kind=plflt) minx, maxx, miny, maxy
01300       character*(*) mapname
01301       external mapform
01302 
01303       call plstrf2c(mapname, string1)
01304 
01305       call plsetmapformc(mapform)
01306       s1 = transfer( string1, s1 )
01307       call plmap7(s1,minx,maxx,miny,maxy)
01308 
01309     end subroutine plmap1
01310 
01311     subroutine plmap2(mapname,minx,maxx,miny,maxy)
01312       use plplot_flt
01313       use plplot_str
01314       implicit none
01315       real(kind=plflt) minx, maxx, miny, maxy
01316       character*(*) mapname
01317 
01318       call plstrf2c(mapname, string1)
01319 
01320       call plclearmapformc()
01321       s1 = transfer( string1, s1 )
01322       call plmap7(s1,minx,maxx,miny,maxy)
01323 
01324     end subroutine plmap2
01325 
01326     subroutine plmeridians1(mapform,dlong,dlat,minlong,maxlong, &
01327                            minlat,maxlat)
01328 
01329     implicit none
01330     real(kind=plflt) dlong, dlat, minlong, maxlong, minlat, maxlat
01331     external mapform
01332 
01333     call plsetmapformc(mapform)
01334     call plmeridians7(dlong,dlat,minlong,maxlong,minlat,maxlat)
01335 
01336     end subroutine plmeridians1
01337 
01338     subroutine plmeridians2(dlong,dlat,minlong,maxlong, &
01339                            minlat,maxlat)
01340 
01341     implicit none
01342     real(kind=plflt) dlong, dlat, minlong, maxlong, minlat, maxlat
01343 
01344     call plclearmapformc
01345     call plmeridians7(dlong,dlat,minlong,maxlong,minlat,maxlat)
01346 
01347     end subroutine plmeridians2
01348 
01349     subroutine plmesh( x, y, z, opt )
01350        integer                          :: opt
01351        real(kind=plflt), dimension(:)   :: x, y
01352        real(kind=plflt), dimension(:,:) :: z
01353 
01354        call plmeshf95( x, y, z, size(x), size(y), opt, size(x))
01355 
01356     end subroutine plmesh
01357 
01358     subroutine plmeshc( x, y, z, opt, clevel )
01359        integer                          :: opt
01360        real(kind=plflt), dimension(:)   :: x, y, clevel
01361        real(kind=plflt), dimension(:,:) :: z
01362 
01363        call plmeshcf95( x, y, z, size(x), size(y), opt, &
01364          clevel, size(clevel), size(x))
01365 
01366     end subroutine plmeshc
01367 
01368     subroutine plot3d( x, y, z, opt, side )
01369        integer                          :: opt
01370        logical                          :: side
01371        real(kind=plflt), dimension(:)   :: x, y
01372        real(kind=plflt), dimension(:,:) :: z
01373        integer                          :: iside
01374 
01375        iside = convert_to_int(side)
01376        call plot3df95( x, y, z, size(x), size(y), opt, iside, size(x))
01377 
01378     end subroutine plot3d
01379 
01380     subroutine plot3dc( x, y, z, opt, clevel )
01381        integer                          :: opt
01382        real(kind=plflt), dimension(:)   :: x, y, clevel
01383        real(kind=plflt), dimension(:,:) :: z
01384 
01385        call plot3dcf95( x, y, z, size(x), size(y), opt, clevel, &
01386          size(clevel), size(x))
01387 
01388     end subroutine plot3dc
01389 
01390     subroutine plspause( lpause )
01391        logical                        :: lpause
01392 
01393        integer                        :: ipause
01394 
01395        ipause = convert_to_int( lpause )
01396        call plspausef95( ipause )
01397     end subroutine plspause
01398 
01399     subroutine plsurf3d( x, y, z, opt, clevel )
01400        integer                        :: opt
01401        real(kind=plflt), dimension(:) :: x, y, clevel
01402        real(kind=plflt), dimension(:,:) :: z
01403 
01404        call plsurf3df95( x, y, z, size(x), size(y), opt, clevel, &
01405          size(clevel), size(x))
01406 
01407     end subroutine plsurf3d
01408 
01409     subroutine plpoin( x, y, code )
01410        integer                        :: code
01411        real(kind=plflt), dimension(:) :: x, y
01412 
01413        call plpoinf95( size(x), x, y, code )
01414     end subroutine plpoin
01415 
01416     subroutine plpoin3( x, y, z, code )
01417        integer                        :: code
01418        real(kind=plflt), dimension(:) :: x, y, z
01419 
01420        call plpoin3f95( size(x), x, y, z, code )
01421     end subroutine plpoin3
01422 
01423     subroutine plpoly3( x, y, z, draw, ifcc )
01424        logical                        :: ifcc
01425        logical, dimension(:)          :: draw
01426        real(kind=plflt), dimension(:) :: x, y, z
01427 
01428        integer, dimension(size(draw))  :: idraw
01429        integer                        :: i
01430        integer                        :: iifcc
01431 
01432        iifcc = convert_to_int( ifcc )
01433        do i = 1,size(draw)
01434           idraw(i) = convert_to_int( draw(i) )
01435        enddo
01436        call plpoly3f95( size(x), x, y, z, idraw, iifcc )
01437     end subroutine plpoly3
01438 
01439     real (kind=plflt) function plrandd()
01440       external plranddf95
01441       real(kind=plflt) :: plranddf95
01442 
01443       plrandd = plranddf95()
01444     end function plrandd
01445 
01446     subroutine plscmap0( r, g, b )
01447        integer, dimension(:) :: r, g, b
01448 
01449        call plscmap0f95( r, g, b, size(r) )
01450     end subroutine plscmap0
01451 
01452     subroutine plscmap0a( r, g, b, a )
01453        integer, dimension(:) :: r, g, b
01454        real(kind=plflt), dimension(:) :: a
01455 
01456        call plscmap0af95( r, g, b, a, size(r) )
01457     end subroutine plscmap0a
01458 
01459     subroutine plscmap1( r, g, b )
01460        integer, dimension(:) :: r, g, b
01461 
01462        call plscmap1f95( r, g, b, size(r) )
01463     end subroutine plscmap1
01464 
01465     subroutine plscmap1a( r, g, b, a )
01466        integer, dimension(:) :: r, g, b
01467        real(kind=plflt), dimension(:) :: a
01468 
01469        call plscmap1af95( r, g, b, a, size(r) )
01470     end subroutine plscmap1a
01471 
01472     subroutine plscmap1l( rgbtype, intensity, coord1, coord2, coord3, alt_hue_path)
01473           logical                        :: rgbtype
01474           real(kind=plflt), dimension(:) :: intensity, coord1, coord2, coord3
01475           logical, dimension(:)          :: alt_hue_path
01476 
01477           integer, dimension(size(alt_hue_path))  :: ialt_hue_path
01478           integer                        :: i
01479           integer                        :: type
01480 
01481        type = convert_to_int( rgbtype )
01482        do i = 1,size(alt_hue_path)
01483           ialt_hue_path(i) = convert_to_int( alt_hue_path(i) )
01484        enddo
01485        call plscmap1lf95( type, size(intensity), intensity, coord1, coord2, coord3, ialt_hue_path )
01486     end subroutine plscmap1l
01487 
01488     subroutine plscmap1l2( rgbtype, intensity, coord1, coord2, coord3)
01489           logical                        :: rgbtype
01490           real(kind=plflt), dimension(:) :: intensity, coord1, coord2, coord3
01491 
01492           integer                        :: type
01493 
01494        type = convert_to_int( rgbtype )
01495        call plscmap1l2f95( type, size(intensity), intensity, coord1, coord2, coord3)
01496     end subroutine plscmap1l2
01497 
01498     subroutine plscmap1la( rgbtype, intensity, coord1, coord2, coord3, a, alt_hue_path)
01499           logical                        :: rgbtype
01500           real(kind=plflt), dimension(:) :: intensity, coord1, coord2, coord3, a
01501           logical, dimension(:)          :: alt_hue_path
01502 
01503           integer, dimension(size(alt_hue_path))  :: ialt_hue_path
01504           integer                        :: i
01505           integer                        :: type
01506 
01507        type = convert_to_int( rgbtype )
01508        do i = 1,size(alt_hue_path)
01509           ialt_hue_path(i) = convert_to_int( alt_hue_path(i) )
01510        enddo
01511        call plscmap1laf95( type, size(intensity), intensity, coord1, coord2, coord3, a, ialt_hue_path )
01512     end subroutine plscmap1la
01513 
01514     subroutine plscmap1la2( rgbtype, intensity, coord1, coord2, coord3, a)
01515           logical                        :: rgbtype
01516           real(kind=plflt), dimension(:) :: intensity, coord1, coord2, coord3, a
01517 
01518           integer                        :: type
01519 
01520        type = convert_to_int( rgbtype )
01521        call plscmap1la2f95( type, size(intensity), intensity, coord1, coord2, coord3, a)
01522     end subroutine plscmap1la2
01523 
01524     subroutine plstripc(id, xspec, yspec, xmin, xmax, xjump, &
01525       ymin, ymax, xlpos, ylpos, y_ascl, acc, &
01526       colbox, collab, colline, styline, legline, &
01527       labx, laby, labtop)
01528 
01529 !    use plplot_str
01530     implicit none
01531     integer id, colbox, collab, colline(4), styline(4)
01532     character*(*) xspec, yspec, legline(4), labx, laby, labtop
01533     real(kind=plflt) xmin, xmax, xjump, ymin, ymax, xlpos, ylpos
01534     logical y_ascl, acc
01535     integer iy_ascl, iacc
01536 
01537 
01538     call plstrf2c(xspec, string1)
01539     call plstrf2c(yspec, string2)
01540     call plstrf2c(legline(1), string3)
01541     call plstrf2c(legline(2), string4)
01542     call plstrf2c(legline(3), string5)
01543     call plstrf2c(legline(4), string6)
01544     call plstrf2c(labx, string7)
01545     call plstrf2c(laby, string8)
01546     call plstrf2c(labtop, string9)
01547 
01548     iy_ascl = convert_to_int( y_ascl )
01549     iacc = convert_to_int( acc )
01550 
01551     s1 = transfer( string1, s1 )
01552     s2 = transfer( string2, s2 )
01553     s3 = transfer( string3, s3 )
01554     s4 = transfer( string4, s4 )
01555     s5 = transfer( string5, s5 )
01556     s6 = transfer( string6, s6 )
01557     s7 = transfer( string7, s7 )
01558     s8 = transfer( string8, s8 )
01559     s9 = transfer( string9, s9 )
01560     call plstripcf95(id, s1, s2, xmin, xmax, xjump, &
01561       ymin, ymax, xlpos, ylpos, iy_ascl, iacc, &
01562       colbox, collab, colline, styline, &
01563       s3, s4, s5, s6, &
01564       s7, s8, s9)
01565 
01566     end subroutine plstripc
01567 
01568     subroutine plsvect1( arrowx, arrowy, fill )
01569          logical                        :: fill
01570          real(kind=plflt), dimension(:) :: arrowx, arrowy
01571          integer ifill
01572          ifill = convert_to_int(fill)
01573 
01574        call plsvect1f95( arrowx, arrowy, size(arrowx), ifill )
01575     end subroutine plsvect1
01576 
01577     subroutine plsym( x, y, code )
01578        integer                        :: code
01579        real(kind=plflt), dimension(:) :: x, y
01580 
01581        call plsymf95( size(x), x, y, code )
01582     end subroutine plsym
01583 
01584     subroutine plxormod( mode, status )
01585        logical :: mode, status
01586        integer :: imode, istatus
01587        imode = convert_to_int(mode)
01588        call plxormodf95( imode, istatus)
01589        status = convert_to_log(istatus)
01590     end subroutine plxormod
01591 end module plplot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines