NCAR Graphicsâ for MS Windows 98


Trademarks: NCAR Graphics is a registered trademark of the University Corporation for Atmospheric Research


This site describes the installation and usage of the NCAR Graphics ported with minor modifications onto MS Windows environment by using  Compaq Visual Fortran 6.x compilers.



NCAR Graphics example ccpcica (postscript converted to EMF)






·   I contact NCAR Graphics installation consulting(Mary Haley) who gave me permission to put NCAR Graphics library on this site

·   Accessing, downloading, and/or using NCAR Graphics Software implies acceptance of the GNU General Public License.

·   This port of NCAR Graphics is not supported by NCAR


Hardware requirements

Software requirements


Difference from the original NCAR Graphics

Folder structure overview



Reporting Bugs


Hardware requirements


This port of the NCAR Graphics library was tested on:


·   PC Pentium II 450 MHz 128 MB RAM running MS Windows 98



Software requirements


The use of this port of the NCAR Graphics library is restricted to QuickWin application programs built by   Compaq VF 6.x in MS Windows95/98 environment.




The following documentation  is available:


·   User documentation from NCAR Graphics site

·   PostScript versions of all the major NCAR Graphics documents are available via the URL:

·   FQA from NCAR Graphics site


Difference from the original NCAR Graphics


There are some differences between this port and the original NCAR Graphics library:


·    This port use STARLNIK GKS  and not original NCAR GKS, so workstation numbers are changed. (Workstation type 1 is MS Window in the present port and not CGM output as in the original.)

·   There is no CGM output or input workstation so user must use EMF, PS or EPS output. Note that Cell Array is not supported for EMF workstation. So if user need EMF with Cell Array PS file must be converted to EMF via some graphics translator (for example CorelDraw).

·   Some font numbers (-1,-2,-3,-19,-20) are not available.

·   Fill area hatch numbers are –1 to –10 and not 1 to 6.

·   There is no  escape function supported, so some examples would not work.

·   FRAME function use mouse click to continue and not key stroke as the original.

·   There is no shell scripts for various utilities, anyway emulation of ncargex is added in a form of executable file.



Folder structure overview


The following UNIX-like folder-tree  is  used for NCAR Graphics instalation:


                ROOT --- usr --- bin   {ncargex.exe}                 

                                       --- etc   { gksemf.bdf, gksdbs.bdf, gkswdt.bdf }

                                       --- include  { }

                                       --- lib  { gksqw.lib, ncarg.lib, ngmath.lib }

                                       --- src  ------ gks--- {GKS }  

                                                   -----  ncarg --- db {contains data files created by ezmap.mak and plotchar.mak}

                                                                     --- fontcaps  {contains font files created by fontcap.mak}

                                                                     --- ncarg-4.2.0 {ncarg source code. You need only files in ncar2d/src and ngmath/src folders}

                                                                     --- tmp { temporary files used by ncargex}

                                                                     --- winng  {install.bat, ncarg.mak}

                                                                                     --- bin       ---  ezmap {ezmap.mak}

                                                                                                      --- fontcap {fontcap.mak}

                                                                                                      --- plotchar {plotchar.mak}

                                                                                     --- project  {project.dsp, project.mak}

                                                                                                      --- ncargex {ncargex.mak, ncargex.dep, ncargex.mak}

                                                                                                      --- ngmath     {ngmath.mak, ngmath.dep, ngmath.dsp}

                                                                                                      --- test {test.dsp, test.dep, test.mak}

                                                                                     --- src        --- examples {contains modified examples }

                                                                                                       --- fontcap  {cfaamn.f}

                                                                                                       --- libncarg

                                                                                                       --- libncarg_c

                                                                                                       --- ncargex   {ncargex.f90}       


where ROOT is C, D or E drive. No environment variables are required.




1. Download file (4342KB). This file contains the precompiled GKS library gksqw.lib and data, precompiled NCAR Graphis library ncarg.lib and ngmath.lib (only FORTRAN part !!!) , ncargex program and also installation batch files and VC6.1 project


2. Extract files from into root folder i.e. C:\, D:\ or E:\ folder. 


Optional steps (if you want to run examples using ncargex or to build libraries by your self)


3. Download NCAR Graphics  source code


4. Extract NCAR Graphics to /usr/src/ncarg folder.


5. Rename ncarg-4.2.x (where x is 1,2,..) folder to ncarg-4.2.0. This is essential because make files and project files use this name.


6. Run /usr/src/ncarg/winng/install.bat to build library and corresponding data bases. At /usr/src/ncarg/winng/project folder there is the project.mak file which build ncarg.lib and project.dsw file which allow it to build NCAR Graphics  Library library from Visual Fortran. Note that libraries are created with /compile_only /libdir:noauto /nologo /warn:nofilopt /fast options.


You must have access to a line compiler and nmake tool to successfully run install.bat file. If you haven’t add the following lines at the end of your autoexec.bat file:







The  GKS stuff can be obtained from this  site.




To build a program that use NCAR Graphics library in the Developer Studio:


1.     select File, New,Projects, enter a new name, select Fortran QuickWin  Application and click on OK;


2.     select Project, Settings, and Settings for All Configurations and then select the Link tab. Add user32.lib gdi32.lib to the end of the Object/Library Modules if they are not already there;


3.     Insert the NCAR library and GKS library into the Workspace by clicking on Project, Add, Files and selecting /usr/lib/ncarg.lib /usr/lib/gksqw.lib;


4.     Insert a file into the Workspace by clicking on Project, Add, Files and build an application.




You can run examples  by using  \usr\bin\ncargex.exe. This emulation of ncargex command copies, compiles, and runs NCAR Graphics Low Level Utility (LLU) examples in your local directory. Note that there are some differences between this  ncargex  and the original  ncargex but command are essentially the same (see man page).

For example, if you want to run fgke02 example type (in console i.e. DOS windows)


c:\usr\bin ncargex fgke02


To obtain postscript file type


c:\usr\bin ncargex fgke02 –w 2700


To obtain EMF file type


c:\usr\bin ncargex fgke02 –w 2


The files will be created in \usr\bin folder.


Tested examples with MS window workstation (1):  Appendix D: Pictorial index to ncargex


·   Areas (10):  OK

·   Autograph (25): OK. Files agex13.f to read data from file, fagilclr.f and fagovrvw.f was modified because AGCHIL subroutine was in conflict with NCARG library routine AGCHIL.

·   Bivar (2): OK

·   Colconv (6): OK

·   Conpack(81): OK.  The following examples was modified to read data from file and not from console: ccpt2d, ccptitle, ccpils, ccpilt, ccpmpxy, ccplbdr. Routines that calls GETDAT (DFPORT routine !)are modified to call GETDAT1. These are: ccprect, ccpila, ccpncls, ccpcfx, ccpback.

·   Dashline (8): OK WARRNING : do not use EMF workstation for these examples !!!!

·   Dashpack (1): OK

·   Ezmap (41): OK except,mpex11,mpex12, tezmpb, tezmap. Tezmap report  Matherror  ASIN - domain error !!. These examples was modified: mpexfi., mpex08.

·   Field flow (16): OK. These examples was modified: fcover, ffex02, ffex03, ffex05, stex03 (VVINIT,VVECTR has to many arguments).

·   Gflash (1): OK

·   GKS (40): OK except  pgks19-23, pgkex27 (metafile examples). Pgks03 was modified (ANOTAT has wrang argument types)

·   Gridall (1): OK

·   Histogram(2): OK

·   Isosurface (4): OK

·   Labelbar (5): OK

·   Ngmisc (2): OK except that there are no weather symbols in the table !!! (see GKS fonts)

·   Plotchar(5):  OK

·   Polypack (2):  OK

·   Scrolled title (4): OK

·   Softfill (5):  OK. Tsoftf report NCARG error.

·   SPPS (9):  OK

·   Streamlines (9): 

·   OK Surface (6): OK. Srex01 was modified to read data from file and not from console.

·   Threed (7):  OK

·   Vectors (9): OK

·   Wmap (14): OK but there are no weather symbols (see GKS) !!!


Additional tests


·   Ngmath – examples which do not use C-routines works well 

·   Tdpack – OK (tdex04 is very slow so be patient)





NCAR Graphics example ccppole (EMF picture)


NCAR Graphics example mpex05 (EMF picture)

NCAR Graphics example cssex01 from Ngmath (EMF picture)


Reporting Bugs


Please send email to to report bugs or problems with this port of NCAR Graphics. I will try to fix bugs but I make no promises to do that quickly or even at all because most of the code is written by NCAR.


Friday, 22 September 2000



Milan Batista


University of Ljubljana

Faculty of Maritime Studies and Transport