

____________________________________________________________________________    
        
                         THE ZGRAF C++ GRAPHING TOOLKIT  
                          
           Business/Technical Graphs for MS-Windows and Windows NT
        
____________________________________________________________________________    




   SOFTWARE DEVELOPERS:

      Do you have a need  to  generate  business,  math,  or  scientific 
      graphs in the MS-Windows/Windows NT environment?  If so, the ZGRAF 
      graph  toolkit  may be just what you need to dazzle your customers 
      with a bit of graphics flash!

      If you haven't done so already, take a minute or two to run one of 
      the demo programs, to get an idea of some of the graph styles that 
      can be created.
        
                


   HIGHLIGHTS/FEATURES OF THE ZGRAF GRAPH TOOLKIT 
   ______________________________________________
    
            
   - COMPLETE

      The  ZGRAF  toolkit contains a wide assortment of graph styles for 
      both MS-Windows 3.X and Windows NT.  Basic graph styles  available 
      include  Bar,  Pie,  Area,  Ribbon,  Logarithmic,  Polar, X/Y, 2-D 
      Function, and 3-D Surface graphs.   Using  different  features  of 
      these basic styles, many more graph types are possible...



   - INEXPENSIVE  

      The  ZGRAF graph toolkit sells for $30, for the Personal Developer 
      version, or $45 for the Commercial Developer Version. 
      
      The Personal and Commercial Developer Versions  both  include  the 
      full  toolkit  functionality for development under both MS-Windows 
      3.X and Windows NT.  However,  the  Commercial  Developer  differs 
      from  the  Personal  Version  in  that  it  provides  professional 
      developers  an  UNLIMITED  DISTRIBUTION LICENSE WITH NO ROYALTIES.  
      It also includes a Windows  Dynamic-Link-Library  version  of  the 
      toolkit  [for  use with MS-Windows 3.X only].  The DLL may be used 
      with Visual Basic and other "non C-like" languages to  access  the 
      toolkit functions...
           
      Just for comparison, here's how the ZGRAF C++  Toolkit  stacks  up 
      against  some  other Windows graphics libraries:







____________________________________________________________________________    



                        QUICK PRODUCT COMPARISON
                        ------------------------

      
         Product      Full Assortment     Source Code    List
           Name        of Graphs?          Included?     Price
         ------------------------------------------------------------
      
         ZGRAF C++
         Toolkit         Yes                Yes          $30 (Personal)
                                                         $45 (Commercial
                                                              Developer)
         Pinnacle
         Graphics 
         Server SDK      Yes                No           $299

         Software FX
         Chart FX        Yes                Maybe        $399  

         Chirp
         DIG for
         Windows         Yes                Yes          $149+



      Are  the other products overpriced, or is the ZGRAF Toolkit just a 
      great value?  We'll let you make the call.  To be  fair,  some  of 
      the  packages  listed  above  may  offer  a  few  graph styles and 
      features not found in the Toolkit.  But overall  we  think  you'll 
      agree,  the  ZGRAF C++ Toolkit provides the most bang-for-the-buck 
      for today's Windows developer...

      
            
        
   - FULL SOURCE-CODE INCLUDED
    
      As  a  developer, you know that the availability of source-code is 
      important.
        
      When you order  the  ZGRAF  toolkit,  you  get  the  COMPLETE  C++ 
      source-code  to  all  the  graph  functions.   You  also  get  the 
      source-code to the demo programs featured in this package.
            
      The  toolkit  has  been designed to exploit the power of C++.  All 
      graphs share a basic "look and feel", and inherit common features.  
      Experienced C++ programmers will appreciate the ease in which  new 
      graphs  can  be  created,  by  "inheriting"  the  functionality of 
      existing objects and by extending the graph classes.
                 
      Should you want to modify the source-code to the graph library for 
      any reason, you'll  find  the  code  easy  to  follow,  and  well- 
      documented.    
           








____________________________________________________________________________    



   - SATISFACTION GUARANTEED
    
      If  you  are not 100% satisfied with the ZGRAF graph toolkit, just 
      return it within 30 days for a full refund. 
                                        
        
        
    REQUIREMENTS
    ------------

       A C++ compiler providing  access  to  the  Windows  API  and  GDI 
       functions  is  required.   The ZGRAF Toolkit was tested using the 
       following development environments:
         
          MS-Windows:  Borland C++ version 3.1,
                       Microsoft Visual C++ version 1.5.  
                         
          Windows NT:  Microsoft 32-bit Visual C++ version 1.10.
            
            
      The  code  was  designed with portability in mind.  It should work 
      well with other Windows C++ compilers, and should port  easily  to 
      future versions of Windows and Windows NT.
      
      Some knowledge of basic Windows programming concepts and C/C++  is 
      assumed,  but  the examples are adequate to assist even the novice 
      Windows developer. 



   FEATURES
   --------
   
      - Unlimited Number of Data Points per Graph
      - Up to Ten Separate Groups of Data per Graph
            (User Can Easily Expand This by Modifying a "#define")
      - Solid Color Fills or Hatch Fills on Pie, Bar, Area Graphs
      - Selectable Legend Positioning 
            (Legend at Left, Legend at Bottom, No Legend)
      - Optional Line Connection Between Data Points 
            (Connect Lines/Don't Connect Lines)
      - Optional Display of Symbols at Data Points 
            (Display Symbols/Don't Display Symbols)
      - Optional Display of Graph Grid Axes 
            (Display Grid/Don't Display Grid)
      - Graphs Can be Scaled to Window or to a RECT Within Window
            (Allows Multiple Graphs per Window) 
      - Manual- or Auto-Scaling to Data
      - 2-D and 3-D Styles on Many Graphs
      - Linear or Log Axis Divisions
      - Selectable Number of Axis Divisions
      - Selectable Formats for Numeric Axis Labels
            (Integer, Floating-Pt., Sci. Notation, Fixed) 
      - Selectable Graph Axis, Plot, and Background colors.
      - 64 Predefined Colors, or "Roll Your Own".
      - Full-Res. Graph Printing With Just a Few Simple Function Calls
      - True-Type Font Capability
      - Easy Integration with MFC
            (Sample-Files Included) 
      - Full Win-16 DLL Source-Code Included
      
      
____________________________________________________________________________    
      
         
                            
   SAMPLE ZGRAF TOOLKIT INTERFACE
   ------------------------------

      Even  though  the  Toolkit  is  a  C++  product, the basic toolkit 
      functions integrate easily into the standard  "Petzold"-style  'C' 
      Windows programming model.
                
      Calls  to  the  graph functions are straighforward and simple: you 
      pass a single argument--the address of a structure containing  the 
      graph information to be utilized.
        
      Here's  the  code  to  create an X-Y graph onscreen (typically you 
      would want to process this code fragment as a  "WM_PAINT"  message 
      in your WndProc() function):
      
      
            //
            // WM_PAINT Code Fragment...
            //
            HDC  hdc;
            HWND hWnd;
            PAINTSTRUCT ps;
            .
            .
            .
            
            hdc = BeginPaint(hWnd, &ps);  // Regular Windows BeginPaint()
        
            //
            // Get Window Dimensions
            //
            RECT R;
            GetClientRect(hWnd, &R);                        
            
            //
            // Set the Data to Appear in the Graph
            //
            double x[4], y[4];          
            int        sym[4];
            
            x[0] = y[0] = 1.0,    sym[0] = zTRIANGLE ;
            x[1] = y[1] = 2.0,    sym[1] = zTRIANGLE ;

            x[2] = y[2] = 5.0,    sym[2] = zINVERTED_TRIANGLE ;
            x[3] = y[3] = 6.0,    sym[3] = zINVERTED_TRIANGLE ;

            char *LegendTitles[] = 
            {
               "USA"    ,
               "Canada" ,
               NULL     ,
            };










____________________________________________________________________________    


            //
            // Set Up a "zGraphStructure" Structure for the Graph...
            //
            zGraphStruct zG;                    // Basic Graph Data Structure
            
            zG.hdc          = hdc             ; // Windows HDC
            zG.RWindow      = &R              ; // RECT with Window Dim.
            zG.xdata        = x               ; // Pointer to X-Data Array
            zG.ydata        = y               ; // Pointer to Y-Data Array
            zG.symbols      = sym             ; // Pointer to Symbols Array
            zG.n            = 4               ; // Number of Data Points
            zG.axis_color   = zBRT_WHITE      ; // Graph Axis 
            zG.bkg_color    = zDARK_GREEN     ; //   and Bkg. Color
            zG.H_Title      = "X"             ; // Horizontal Axis Title
            zG.V_Title      = "Y"             ; // Vertical Axis Title
            zG.LegendTitles = LegendTitles    ; // The Legend Titles
            zG.line_connect = ON              ; // Line-Connection On
            zG.symbols_flag = ON              ; // Do Display Symbols
            zG.grid_flag    = ON              ; // Turn Grid Display ON
            zG.auto_scale   = ON              ; // Use Automatic Scaling
            zG.x_axis_style = zLINEAR         ; // Use Linear X- and Y-Axis 
            zG.y_axis_style = zLINEAR         ; //   Scaling Style
            
            //
            // Make the Graph...
            //
            XYGraph(&zG);

            //
            // That's It!
            //
            EndPaint(hWnd, &ps);
            return;
            .
            .
            .
        

____________________________________________________________________________            
                

      ORDERING INFORMATION
      --------------------
                        
        
      To  order  the ZGRAF graph toolkit, send your check or money order 
      for the appropriate amount [U.S. currency please] to  the  address 
      listed below.  
        
        
           ____ $30 US (Personal Developer Version)
           
           ____ $45 US (Commercial Developer Version)
           
           
           ____ Shipping ($2.50 USA / $3.50 overseas)
        
        
        
      ZGRAF Software
      1831 Old Hickory Court
      New Albany, IN 47150
            
            
      Phone      :  (812) 949-9524 
      ZGRAF BBS  :  (812) 949-0416  [9600/2400 baud, 8/1/No Parity]
      Compuserve :  70742,1356


      Regretfully, we are unable to accept Mastercard/VISA at this time, 
      but  hope  to  be able to offer customers this service in the near 
      future.  
      
      If you're in a hurry to get the software,  you  can  download  the 
      complete  ZGRAF C++ toolkit archive via modem.  Call the ZGRAF BBS 
      for details. 
        
      Thank you for taking the time to try our product.
        
