From: <and...@us...> - 2008-08-14 14:23:23
|
Revision: 8651 http://plplot.svn.sourceforge.net/plplot/?rev=8651&view=rev Author: andrewross Date: 2008-08-14 14:23:28 +0000 (Thu, 14 Aug 2008) Log Message: ----------- Add f95 versions of examples 24, 25, 26 and 27. Results are consistent with the C versions. Modified Paths: -------------- trunk/examples/f95/CMakeLists.txt trunk/examples/f95/Makefile.examples.in trunk/plplot_test/test_f95.sh.in Added Paths: ----------- trunk/examples/f95/x24f.f90 trunk/examples/f95/x25f.f90 trunk/examples/f95/x26f.f90 trunk/examples/f95/x27f.f90 Modified: trunk/examples/f95/CMakeLists.txt =================================================================== --- trunk/examples/f95/CMakeLists.txt 2008-08-14 13:45:08 UTC (rev 8650) +++ trunk/examples/f95/CMakeLists.txt 2008-08-14 14:23:28 UTC (rev 8651) @@ -45,6 +45,10 @@ "21" "22" "23" +"24" +"25" +"26" +"27" "28" "29" "30" Modified: trunk/examples/f95/Makefile.examples.in =================================================================== --- trunk/examples/f95/Makefile.examples.in 2008-08-14 13:45:08 UTC (rev 8650) +++ trunk/examples/f95/Makefile.examples.in 2008-08-14 14:23:28 UTC (rev 8651) @@ -52,6 +52,10 @@ x20f$(EXEEXT) \ x22f$(EXEEXT) \ x23f$(EXEEXT) \ + x24f$(EXEEXT) \ + x25f$(EXEEXT) \ + x26f$(EXEEXT) \ + x27f$(EXEEXT) \ x28f$(EXEEXT) \ x29f$(EXEEXT) \ x30f$(EXEEXT) Added: trunk/examples/f95/x24f.f90 =================================================================== --- trunk/examples/f95/x24f.f90 (rev 0) +++ trunk/examples/f95/x24f.f90 2008-08-14 14:23:28 UTC (rev 8651) @@ -0,0 +1,168 @@ +! $Id:$ +! +! Unicode Pace Flag +! +! Copyright (C) 2005 Rafael Laboissiere +! Copyright (2) 2008 Andrew Ross +! +! This file is part of PLplot. +! +! PLplot is free software; you can redistribute it and/or modify +! it under the terms of the GNU General Library Public License as published +! by the Free Software Foundation; either version 2 of the License, or +! (at your option) any later version. +! +! PLplot is distributed in the hope that it will be useful, +! but WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +! GNU Library General Public License for more details. +! +! You should have received a copy of the GNU Library General Public License +! along with PLplot; if not, write to the Free Software +! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +! +! +! In Debian, run like this: +! +! ( TTFDIR=/usr/share/fonts/truetype ; \ +! PLPLOT_FREETYPE_SANS_FONT=$TTFDIR/arphic/bkai00mp.ttf \ +! PLPLOT_FREETYPE_SERIF_FONT=$TTFDIR/freefont/FreeSerif.ttf \ +! PLPLOT_FREETYPE_MONO_FONT=$TTFDIR/ttf-devanagari-fonts/lohit_hi.ttf \ +! PLPLOT_FREETYPE_SCRIPT_FONT=$TTFDIR/unfonts/UnBatang.ttf \ +! PLPLOT_FREETYPE_SYMBOL_FONT=$TTFDIR/ttf-bengali-fonts/JamrulNormal.ttf \ +! ./x24c -dev png -drvopt smooth=0 -o x24c.png ) +! +! Packages needed: +! +! ttf-arphic-bkai00mp +! ttf-freefont +! ttf-devanagari-fonts +! ttf-unfonts +! ttf-bengali-fonts +! + +program x24f + use plplot + implicit none + + integer i, j + integer red(7) + integer green(7) + integer blue(7) + + real(kind=plflt) px(4) + real(kind=plflt) py(4) + real(kind=plflt) sx(12) + real(kind=plflt) sy(12) + + character*30 peace(12) + + data (red(i) ,i=1,7) / 240, 204, 204, 204, 0, 39, 125 / + data (green(i) ,i=1,7) / 240, 0, 125, 204, 204, 80, 0 / + data (blue(i) ,i=1,7) / 240, 0, 0, 0, 0, 204, 125 / + + data (px(i) ,i=1,4) / 0.0d0, 0.0d0, 1.0d0, 1.0d0 / + data (py(i) ,i=1,4) / 0.0d0, 0.25d0, 0.25d0, 0.0d0 / + + data (sx(i) ,i=1,12) / & + 0.16374, & + 0.15844, & + 0.15255, & + 0.17332, & + 0.50436, & + 0.51721, & + 0.49520, & + 0.48713, & + 0.83976, & + 0.81688, & + 0.82231, & + 0.82647/ + + + data (sy(i) ,i=1,12) / & + 0.125, & + 0.375, & + 0.625, & + 0.875, & + 0.125, & + 0.375, & + 0.625, & + 0.875, & + 0.125, & + 0.375, & + 0.625, & + 0.875/ + + + ! Taken from http://www.columbia.edu/~fdc/pace/ + + ! Mandarin + peace(1) = '#<0x00>和平' + + ! Hindi + peace(2) = '#<0x20>शांति' + + ! English + peace(3) = '#<0x10>Peace' + + ! Hebrew + peace(4) = '#<0x10>שלום' + + ! Russian + peace(5) = '#<0x10>Мир' + + ! German + peace(6) = '#<0x10>Friede' + + ! Korean + peace(7) = '#<0x30>평화' + + ! French + peace(8) = '#<0x10>Paix' + + ! Spanish + peace(9) = '#<0x10>Paz' + + ! Arabic + peace(10) = '#<0x10>ﺳﻼم' + + ! Turkish + peace(11) = '#<0x10>Barış' + + ! Kurdish + peace(12) = '#<0x10>Hasîtî' + + call plparseopts(PL_PARSE_FULL) + + call plinit() + + call pladv(0) + call plvpor (0.0_plflt, 1.0_plflt, 0.0_plflt, 1.0_plflt) + call plwind (0.0_plflt, 1.0_plflt, 0.0_plflt, 1.0_plflt) + call plcol0 (0) + call plbox ('', 1.0_plflt, 0, '', 1.0_plflt, 0) + + call plscmap0n (7) + call plscmap0 (red, green, blue) + + call plschr (0.0_plflt, 4.0_plflt) + call plfont (1) + + do i = 1,4 + + call plcol0 (i); + call plfill (px, py) + + do j = 1,4 + py (j) = py (j) + 1.0_plflt / 4.0_plflt + enddo + enddo + + call plcol0 (0) + do i = 1,12 + call plptex (sx (i), sy (i), 1.0_plflt, 0.0_plflt, 0.5_plflt, peace (i)) + enddo + + call plend() + +end program x24f Property changes on: trunk/examples/f95/x24f.f90 ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/examples/f95/x25f.f90 =================================================================== --- trunk/examples/f95/x25f.f90 (rev 0) +++ trunk/examples/f95/x25f.f90 2008-08-14 14:23:28 UTC (rev 8651) @@ -0,0 +1,162 @@ +! $Id:$ +! +! Filling and clipping polygons. +! +! Copyright (C) 2005 Arjen Markus +! Copyright (C) 2008 Andrew Ross +! +! This file is part of PLplot. +! +! PLplot is free software; you can redistribute it and/or modify +! it under the terms of the GNU General Library Public License as published +! by the Free Software Foundation; either version 2 of the License, or +! (at your option) any later version. +! +! PLplot is distributed in the hope that it will be useful, +! but WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +! GNU Library General Public License for more details. +! +! You should have received a copy of the GNU Library General Public License +! along with PLplot; if not, write to the Free Software +! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +! +! +! -------------------------------------------------------------------------- +! main +! +! Test program for filling polygons and proper clipping +! -------------------------------------------------------------------------- + +program x25f + + use plplot + implicit none + + integer i + integer j + integer npts + real(kind=plflt) xextreme(2,10) + real(kind=plflt) yextreme(2,10) + real(kind=plflt) x0(10) + real(kind=plflt) y0(10) + + data ( xextreme(1,i), xextreme(2,i), yextreme(1,i), yextreme(2,i), & + i=1,9) / & + -120.0_plflt, 120.0_plflt, -120.0_plflt, 120.0_plflt, & + -120.0_plflt, 120.0_plflt, 20.0_plflt, 120.0_plflt, & + -120.0_plflt, 120.0_plflt, -20.0_plflt, 120.0_plflt, & + -80.0_plflt, 80.0_plflt, -20.0_plflt, 120.0_plflt, & + -220.0_plflt, -120.0_plflt, -120.0_plflt, 120.0_plflt, & + -20.0_plflt, 20.0_plflt, -120.0_plflt, 120.0_plflt, & + -20.0_plflt, 20.0_plflt, -20.0_plflt, 20.0_plflt, & + -80.0_plflt, 80.0_plflt, -80.0_plflt, 80.0_plflt, & + 20.0_plflt, 120.0_plflt, -120.0_plflt, 120.0_plflt/ + + npts = 0 + + ! Parse and process command line arguments + + call plparseopts(PL_PARSE_FULL) + + ! Initialize plplot + + call plssub(3,3) + call plinit() + + do j = 1,4 + + if ( j .eq. 1 ) then + ! Polygon 1: a diamond + x0(1) = 0.0_plflt + y0(1) = -100.0_plflt + x0(2) = -100.0_plflt + y0(2) = 0.0_plflt + x0(3) = 0.0_plflt + y0(3) = 100.0_plflt + x0(4) = 100.0_plflt + y0(4) = 0.0_plflt + npts = 4 + endif + if ( j .eq. 2 ) then + ! Polygon 1: a diamond - reverse direction + x0(4) = 0.0_plflt + y0(4) = -100.0_plflt + x0(3) = -100.0_plflt + y0(3) = 0.0_plflt + x0(2) = 0.0_plflt + y0(2) = 100.0_plflt + x0(1) = 100.0_plflt + y0(1) = 0.0_plflt + npts = 4 + endif + if ( j .eq. 3 ) then + ! Polygon 2: a square with punctures + x0(1) = -100.0_plflt + y0(1) = -100.0_plflt + x0(2) = -100.0_plflt + y0(2) = -80.0_plflt + x0(3) = 80.0_plflt + y0(3) = 0.0_plflt + x0(4) = -100.0_plflt + y0(4) = 80.0_plflt + x0(5) = -100.0_plflt + y0(5) = 100.0_plflt + x0(6) = -80.0_plflt + y0(6) = 100.0_plflt + x0(7) = 0.0_plflt + y0(7) = 80.0_plflt + x0(8) = 80.0_plflt + y0(8) = 100.0_plflt + x0(9) = 100.0_plflt + y0(9) = 100.0_plflt + x0(10) = 100.0_plflt + y0(10) = -100.0_plflt + npts = 10 + endif + if ( j .eq. 4 ) then + ! Polygon 2: a square with punctures - reversed direction + x0(10) = -100.0_plflt + y0(10) = -100.0_plflt + x0(9) = -100.0_plflt + y0(9) = -80.0_plflt + x0(8) = 80.0_plflt + y0(8) = 0.0_plflt + x0(7) = -100.0_plflt + y0(7) = 80.0_plflt + x0(6) = -100.0_plflt + y0(6) = 100.0_plflt + x0(5) = -80.0_plflt + y0(5) = 100.0_plflt + x0(4) = 0.0_plflt + y0(4) = 80.0_plflt + x0(3) = 80.0_plflt + y0(3) = 100.0_plflt + x0(2) = 100.0_plflt + y0(2) = 100.0_plflt + x0(1) = 100.0_plflt + y0(1) = -100.0_plflt + npts = 10 + endif + + do i = 1,9 + call pladv(0) + call plvsta() + call plwind(xextreme(1,i), xextreme(2,i), & + yextreme(1,i), yextreme(2,i)) + + call plcol0(2) + call plbox('bc', 1.0d0, 0, 'bcnv', 10.0d0, 0) + call plcol0(1) + call plpsty(0) + call plfill(x0(1:npts),y0(1:npts)) + call plcol0(2) + call pllsty(1) + call plline(x0(1:npts),y0(1:npts)) + end do + end do + ! Don't forget to call plend() to finish off! + + call plend() + +end program x25f Property changes on: trunk/examples/f95/x25f.f90 ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/examples/f95/x26f.f90 =================================================================== --- trunk/examples/f95/x26f.f90 (rev 0) +++ trunk/examples/f95/x26f.f90 2008-08-14 14:23:28 UTC (rev 8651) @@ -0,0 +1,196 @@ +! -*- coding: utf-8; -*- +! +! $Id:$ +! +! Multi-lingual version of the first page of example 4. +! +! Copyright (C) 2006 Alan Irwin +! Copyright (C) 2006,2008 Andrew Ross +! +! Thanks to the following for providing translated strings for this example: +! Valery Pipin (Russian) +! +! This file is part of PLplot. +! +! PLplot is free software; you can redistribute it and/or modify +! it under the terms of the GNU General Library Public License as published +! by the Free Software Foundation; either version 2 of the License, or +! (at your option) any later version. +! +! PLplot is distributed in the hope that it will be useful, +! but WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +! GNU Library General Public License for more details. +! +! You should have received a copy of the GNU Library General Public License +! along with PLplot; if not, write to the Free Software +! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +! +! + +! +! This example designed just for devices (e.g., psttfc and the +! cairo-related devices) that utilise the pango and fontconfig libraries. The +! best choice of glyph is selected by fontconfig and automatically rendered +! by pango in way that is sensitive to complex text layout (CTL) language +! issues for each unicode character in this example. Of course, you must +! have the appropriate TrueType fonts installed to have access to all the +! required glyphs. +! +! Translation instructions: The strings to be translated are given by +! x_label, y_label, alty_label, title_label, and line_label below. The +! encoding used must be UTF-8. +! +! The following strings to be translated involve some scientific/mathematical +! jargon which is now discussed further to help translators. +! +! (1) dB is a decibel unit, see http://en.wikipedia.org/wiki/Decibel . +! (2) degrees is an angular measure, see +! http://en.wikipedia.org/wiki/Degree_(angle) . +! (3) low-pass filter is one that transmits (passes) low frequencies. +! (4) pole is in the mathematical sense, see +! http://en.wikipedia.org/wiki/Pole_(complex_analysis) . "Single Pole" +! means a particular mathematical transformation of the filter function has +! a single pole, see +! http://ccrma.stanford.edu/~jos/filters/Pole_Zero_Analysis_I.html . +! Furthermore, a single-pole filter must have an inverse square decline +! (or -20 db/decade). Since the filter plotted here does have that +! characteristic, it must by definition be a single-pole filter, see also +! http://www-k.ext.ti.com/SRVS/Data/ti/KnowledgeBases/analog/document/faqs/1p.htm +! (5) decade represents a factor of 10, see +! http://en.wikipedia.org/wiki/Decade_(log_scale) . +! +! +! + +! -------------------------------------------------------------------------- +! main +! +! Illustration of logarithmic axes, and redefinition of window. +! -------------------------------------------------------------------------- + +program x26f + + use plplot, PI => PL_PI + implicit none + + integer nolangs + parameter ( nolangs = 2 ) + + character*80 x_label(nolangs) + character*80 y_label(nolangs) + character*80 alty_label(nolangs) + character*80 title_label(nolangs) + character*80 line_label(nolangs) + + integer i + + data (x_label(i) ,i=1,nolangs) / & + 'Frequency', & + 'Частота'/ + + data (y_label(i) ,i=1,nolangs) / & + 'Amplitude (dB)', & + 'Амплитуда (dB)'/ + + data (alty_label(i) ,i=1,nolangs) / & + 'Phase shift (degrees)', & + 'Фазовый сдвиг (градусы)'/ + + data (title_label(i) ,i=1,nolangs) / & + 'Single Pole Low-Pass Filter', & + 'Однополюсный Низко-Частотный Фильтр'/ + + data (line_label(i) ,i=1,nolangs) / & + '-20 dB/decade', & + '-20 dB/десяток'/ + + ! Parse and process command line arguments + + call plparseopts(PL_PARSE_FULL) + + ! Initialize plplot + + call plinit() + call plfont(2) + + ! Make log plots using two different styles. + + do i = 1,nolangs + call plot1(0, x_label(i), y_label(i), alty_label(i), & + title_label(i), line_label(i)) + end do + call plend() + +end program x26f + + ! -------------------------------------------------------------------------- + ! plot1 + ! + ! Log-linear plot. + ! -------------------------------------------------------------------------- + + subroutine plot1( type, x_label, y_label, alty_label, & + title_label, line_label ) + + use plplot, PI => PL_PI + implicit none + + integer type + character(*) x_label, y_label, alty_label, title_label, line_label + + integer i + real(kind=plflt) freql(101), ampl(101), phase(101) + real(kind=plflt) f0, freq + + call pladv(0) + + ! Set up data for log plot + + f0 = 1.0 + do i = 1,101 + freql(i) = -2.0_plflt + (i-1) / 20.0_plflt + freq = 10.0_plflt ** freql(i) + ampl(i) = 20.0_plflt * log10(1.0_plflt / sqrt(1.0_plflt + (freq/f0)**2)) + phase(i) = -(180.0_plflt / PI) * atan(freq / f0) + end do + call plvpor(0.15_plflt, 0.85_plflt, 0.1_plflt, 0.9_plflt) + call plwind(-2.0_plflt, 3.0_plflt, -80.0_plflt, 0.0_plflt) + + ! Try different axis and labelling styles. + + call plcol0(1) + if ( type .eq. 0 ) then + call plbox("bclnst", 0.0_plflt, 0, "bnstv", 0.0_plflt, 0) + endif + if ( type .eq. 1 ) then + call plbox("bcfghlnst", 0.0_plflt, 0, "bcghnstv", 0.0_plflt, 0) + endif + + ! Plot ampl vs freq + + call plcol0(2) + call plline(freql, ampl) + call plcol0(1) + call plptex(1.6_plflt, -30.0_plflt, 1.0_plflt, -20.0_plflt, 0.5_plflt, line_label) + + ! Put labels on + + call plcol0(1) + call plmtex("b", 3.2_plflt, 0.5_plflt, 0.5_plflt, x_label) + call plmtex("t", 2.0_plflt, 0.5_plflt, 0.5_plflt, title_label) + call plcol0(2) + call plmtex("l", 5.0_plflt, 0.5_plflt, 0.5_plflt, y_label) + + ! For the gridless case, put phase vs freq on same plot + + if (type .eq. 0) then + call plcol0(1) + call plwind(-2.0_plflt, 3.0_plflt, -100.0_plflt, 0.0_plflt) + call plbox("", 0.0_plflt, 0, "cmstv", 30.0_plflt, 3) + call plcol0(3) + call plline(freql, phase) + call plcol0(3) + call plmtex("r", 5.0_plflt, 0.5_plflt, 0.5_plflt, alty_label) + endif + end subroutine plot1 Property changes on: trunk/examples/f95/x26f.f90 ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/examples/f95/x27f.f90 =================================================================== --- trunk/examples/f95/x27f.f90 (rev 0) +++ trunk/examples/f95/x27f.f90 2008-08-14 14:23:28 UTC (rev 8651) @@ -0,0 +1,169 @@ +! $Id:$ +! +! Drawing "spirograph" curves - epitrochoids, cycolids, roulettes +! +! Copyright (C) 2007 Arjen Markus +! Copyright (C) 2008 Andrew Ross +! +! This file is part of PLplot. +! +! PLplot is free software; you can redistribute it and/or modify +! it under the terms of the GNU General Library Public License as published +! by the Free Software Foundation; either version 2 of the License, or +! (at your option) any later version. +! +! PLplot is distributed in the hope that it will be useful, +! but WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +! GNU Library General Public License for more details. +! +! You should have received a copy of the GNU Library General Public License +! along with PLplot; if not, write to the Free Software +! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +! +! + +! -------------------------------------------------------------------------- +! main +! +! Generates two kinds of plots: +! - construction of a cycloid (animated) +! - series of epitrochoids and hypotrochoids +! -------------------------------------------------------------------------- + +program x27f + + use plplot + implicit none + + ! R, r, p, N + + real(kind=plflt) params(4,9) + + integer i, j + + data ( ( params(i,j) ,i=1,4) ,j=1,9 ) / & + 21.0_plflt, 7.0_plflt, 7.0_plflt, 3.0_plflt, & + 21.0_plflt, 7.0_plflt, 10.0_plflt, 3.0_plflt, & + 21.0_plflt, -7.0_plflt, 10.0_plflt, 3.0_plflt, & + 20.0_plflt, 3.0_plflt, 7.0_plflt, 20.0_plflt, & + 20.0_plflt, 3.0_plflt, 10.0_plflt, 20.0_plflt, & + 20.0_plflt, -3.0_plflt, 10.0_plflt, 20.0_plflt, & + 20.0_plflt, 13.0_plflt, 7.0_plflt, 20.0_plflt, & + 20.0_plflt, 13.0_plflt, 20.0_plflt, 20.0_plflt, & + 20.0_plflt,-13.0_plflt, 20.0_plflt, 20.0_plflt/ + + ! plplot initialization + + ! Parse and process command line arguments + + call plparseopts(PL_PARSE_FULL) + + ! Initialize plplot + + call plinit() + + ! Illustrate the construction of a cycloid + + call cycloid() + + ! Loop over the various curves + ! First an overview, then all curves one by one + + call plssub(3, 3) + + do i = 1,9 + call pladv(0) + call plvpor( 0.0_plflt, 1.0_plflt, 0.0_plflt, 1.0_plflt ) + call spiro( params(1,i) ) + end do + call pladv(0) + call plssub(1, 1) + + do i = 1,9 + call pladv(0) + call plvpor( 0.0_plflt, 1.0_plflt, 0.0_plflt, 1.0_plflt ) + call spiro( params(1,i) ) + end do + ! Don't forget to call plend() to finish off! + + call plend() + +end program x27f + +! =============================================================== + +subroutine cycloid + + ! TODO + +end subroutine cycloid + +! =============================================================== + +subroutine spiro( params ) + + use plplot + implicit none + + real(kind=plflt) params(*) + integer NPNT + parameter ( NPNT = 20000 ) + integer n + real(kind=plflt) xcoord(NPNT+1) + real(kind=plflt) ycoord(NPNT+1) + + integer windings + integer steps + integer i + real(kind=plflt) phi + real(kind=plflt) phiw + real(kind=plflt) dphi + real(kind=plflt) xmin + real(kind=plflt) xmax + real(kind=plflt) ymin + real(kind=plflt) ymax + real(kind=plflt) scale + + ! Fill the coordinates + + windings = int(params(4)) + steps = NPNT/windings + dphi = 8.0_plflt*acos(-1.0_plflt)/dble(steps) + + ! This initialisation is safe! + xmin = 0.0_plflt + xmax = 0.0_plflt + ymin = 0.0_plflt + ymax = 0.0_plflt + + n = windings*steps+1 + + do i = 1,n + phi = dble(i-1) * dphi + phiw = (params(1)-params(2))/params(2)*phi + xcoord(i) = (params(1)-params(2))*cos(phi)+params(3)*cos(phiw) + ycoord(i) = (params(1)-params(2))*sin(phi)-params(3)*sin(phiw) + + if ( xmin > xcoord(i) ) xmin = xcoord(i) + if ( xmax < xcoord(i) ) xmax = xcoord(i) + if ( ymin > ycoord(i) ) ymin = ycoord(i) + if ( ymax < ycoord(i) ) ymax = ycoord(i) + end do + + if ( xmax-xmin > ymax-ymin ) then + scale = xmax - xmin + else + scale = ymax - ymin + endif + xmin = - 0.65_plflt * scale + xmax = 0.65_plflt * scale + ymin = - 0.65_plflt * scale + ymax = 0.65_plflt * scale + + call plwind( xmin, xmax, ymin, ymax ) + + call plcol0(1) + call plline(xcoord(1:n), ycoord(1:n) ) + +end subroutine spiro Property changes on: trunk/examples/f95/x27f.f90 ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/plplot_test/test_f95.sh.in =================================================================== --- trunk/plplot_test/test_f95.sh.in 2008-08-14 13:45:08 UTC (rev 8650) +++ trunk/plplot_test/test_f95.sh.in 2008-08-14 14:23:28 UTC (rev 8651) @@ -53,7 +53,7 @@ # Do the standard non-interactive examples. # skip 14 and 17 because they are interactive. - for index in 01 02 03 04 05 06 07 08 09 10 11 12 13 15 16 18 19 20 21 22 23 28 29 30; do + for index in 01 02 03 04 05 06 07 08 09 10 11 12 13 15 16 18 19 20 21 22 23 24 25 26 27 28 29 30; do if [ "$verbose_test" ]; then echo "x${index}f" fi @@ -98,7 +98,7 @@ # Do the standard non-interactive examples. # skip 14 and 17 because they are interactive. - for index in 01 02 03 04 05 06 07 08 09 10 11 12 13 15 16 18 19 20 21 22 23 28 29 30; do + for index in 01 02 03 04 05 06 07 08 09 10 11 12 13 15 16 18 19 20 21 22 23 24 25 26 27 28 29 30; do if [ "$verbose_test" ]; then echo "x${index}f" fi This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |