!! Copyright (C) Stichting Deltares, 2005-2014. !! !! This file is part of iMOD. !! !! This program is free software: you can redistribute it and/or modify !! it under the terms of the GNU General Public License as published by !! the Free Software Foundation, either version 3 of the License, or !! (at your option) any later version. !! !! This program 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 General Public License for more details. !! !! You should have received a copy of the GNU General Public License !! along with this program. If not, see . !! !! Contact: imod.support@deltares.nl !! Stichting Deltares !! P.O. Box 177 !! 2600 MH Delft, The Netherlands. MODULE MODPLOT USE MOD_IDF_PAR, ONLY : IDFOBJ INTEGER,PARAMETER :: MXCLR =255 !STRETCHED INTEGER,PARAMETER :: MXCGRAD =7 !max. color for gradient INTEGER,PARAMETER :: MXCLASS =50 !CLASSED INTEGER,PARAMETER :: MXMPLOT =1000 !500 !## maximum plots in mp and mdf objects TYPE LEGENDOBJ INTEGER,DIMENSION(MXCLR) :: RGB REAL,DIMENSION(0:MXCLR) :: CLASS INTEGER,DIMENSION(MXCGRAD) :: CGRAD !selected color for gradient CHARACTER(LEN=50),DIMENSION(MXCLR) :: LEGTXT CHARACTER(LEN=150) :: HEDTXT INTEGER :: NCLR INTEGER :: LEGSIZE END TYPE LEGENDOBJ TYPE MPLOTOBJ LOGICAL :: IACT !plot active LOGICAL :: ISEL !plot selected INTEGER :: IPLOT !plot type,1=idf,2=ipf,3=iff,4=isg,5=mdf,6=gen TYPE(IDFOBJ) :: IDF !idf-structure INTEGER :: NLIDF !## number of listed idf to be plotted INTEGER,DIMENSION(10) :: IAXES !## which axes to be used for each column in the associated files INTEGER :: XCOL INTEGER :: YCOL INTEGER :: ZCOL INTEGER :: Z2COL INTEGER :: HCOL !high-light INTEGER :: SYMBOL !line/point symbol INTEGER :: FADEOUT !fade out depth INTEGER :: THICKNESS !line/point symbol INTEGER :: IDFI !plot idfi INTEGER :: IEQ !grid type - misbruikt voor ipf's (label plotting) INTEGER :: IDFKIND !plot idfkind (0=GRID,1=CONTOUR,2=VECTOR) REAL :: UMIN,UMAX !user given statistics - voor iff's/ipf's/gen's REAL :: DMIN,DMAX !date given statistics - voor ipf's/ipf's/gen's INTEGER :: UNITS !1=default,2=mm/day,3=m/day REAL :: XMIN,YMIN,XMAX,YMAX !coordinates within mplot-box (m) - for ipf's INTEGER :: ILEG !use legend, for ipf/iff/gen INTEGER :: IATTRIB !use legend, for ipf/iff/gen selected attribute INTEGER :: SCOLOR !color number for serie-plotting INTEGER :: PRFTYPE !prof.type line(0)/filled(1) INTEGER :: ISCREEN !## usage of screen (graph and/or 2d plot?) INTEGER :: ASSCOL1 !## columns to express those to be used for plotting the associated files. INTEGER :: ASSCOL2 !## columns to express those to be used for plotting the associated files. INTEGER,DIMENSION(2) :: ASSFILES !## plot associated files for selected row in IPF (assfiles>0, or all assfiles<0) TYPE(LEGENDOBJ) :: LEG CHARACTER(LEN=256) :: IDFNAME !name of idf/ipf-file CHARACTER(LEN=50) :: ALIAS INTEGER :: TSIZE !text size (1 t/m 10 * 0.02) END TYPE MPLOTOBJ TYPE MPWINOBJ INTEGER :: IBITMAP !number of bitmap stores entire window INTEGER :: NACT !number of active idf's INTEGER :: DIX,DIY !size of bitmap (pixels) INTEGER :: IWIN !child window handle INTEGER :: IX,IY !current view-point (pixels) INTEGER :: DXP,DYP !size of paper (cm) REAL :: XMIN,XMAX,YMIN,YMAX !coordinates current bitmap (m) END TYPE MPWINOBJ TYPE(MPLOTOBJ),DIMENSION(MXMPLOT) :: MP TYPE(MPWINOBJ) :: MPW INTEGER,DIMENSION(MXMPLOT) :: ACTLIST !##which idf is selected INTEGER,DIMENSION(MXMPLOT) :: DRWLIST !##which idf is drawn truly INTEGER :: CNCLR !COPY purposes INTEGER,DIMENSION(MXCLR) :: CRGB !COPY purposes REAL,DIMENSION(0:MXCLR) :: CCLASS !COPY purposes CHARACTER(LEN=50),DIMENSION(MXCLR) :: CLEGTXT !COPY purposes CHARACTER(LEN=150) :: CHEDTXT !COPY purposes INTEGER,DIMENSION(MXCGRAD) :: CCGRAD !selected color for gradient INTEGER,DIMENSION(MXCGRAD) :: CLRGIVEN !given color in mxclr mode CHARACTER(LEN=256) :: PLOTNAME !##configuration name TYPE CONTOBJ REAL :: ALAB,VLAB,XLAB,YLAB END TYPE CONTOBJ TYPE(CONTOBJ),POINTER,DIMENSION(:) :: CONT,CONT_BU INTEGER :: NLAB REAL :: LABDIST END MODULE