This directory contains a variety of VAX BASIC program examples that use graphics statements. They are provided to show possible uses of VAX BASIC graphics statements. The contents of this directory should not be considered a supported part of the product, and may change from release to release. The following is a summary of what you will find in this directory: 1. BASIC_EXAMPLES.COM - A command procedure to run the examples in this directory. 2. BASIC$GRAPHICS.TLB - A text library containing the sources to a variety of subprograms and picture routines. You may use this library directly via the %INCLUDE %FROM %LIBRARY directive or you may link with the compiled forms of these routines in the supplied object library. 3. BASIC$GRAPHICS.OLB - An object library containing the object code for the routines in BASIC$GRAPHICS.TLB. The following routines are included in both the text and object library: o ASK_REALIZED_DEVICE_VIEWPORT - This SUB can be called in place of the ASK DEVICE VIEWPORT statement to maintain compatibility with VAX GKS V2.0. If your program's device viewport boundaries are not proportional to the device window boundaries, VAX GKS adjusts the device viewport boundaries to maintain a 1:1 aspect ratio. These adjusted or "realized" device viewport boundaries may be different from those specified in a SET DEVICE VIEWPORT statement. When using VAX GKS V2.0, the ASK DEVICE VIEWPORT statement returns "realized" device viewport boundaries. When using VAX GKS V3.0 or later, the ASK DEVICE VIEWPORT statement returns the currently set device viewport boundaries. You can obtain the "realized" device viewport boundaries by calling ASK_REALIZED_DEVICE_VIEWPORT. This routine accepts the same arguments as the ASK DEVICE VIEWPORT statement. o CIRCLE - When invoked with a DRAW statement, this PICTURE subroutine will draw a circle at the X,Y point indicated by the first two parameters, with the radius specified in Y coordinates by the third parameter. This PICTURE will account for any transformations that may be in affect at the time the PICTURE is invoked. This PICTURE calls ASK_REALIZED_DEVICE_VIEWPORT. o ENTIRE_SCREEN - By default, GKS graphics output uses a square portion of the output device. This SUB can be CALLed to modify the transformations so that any further graphic output will use the entire graphic output device. Beware that the VIEWPORT, DEVICE WINDOW, and DEVICE VIEWPORT are modified during this operation. o PIE - This SUB will plot a pie chart from a set of values and labels. The program PIE_DRIVER is provided as an example of the use of PIE and allows the user to input a set of labels and values to plot in pie chart form. Page 2 o PLOT - This SUB will accept arrays of X,Y points and plot a graph of the values in the arrays. PLOT_DRIVER.BAS is provided to show an example of the use of PLOT, and allows the user to either plot a pre-determined set of X,Y pairs or enter a group of X,Y pairs to plot. o SQUARE - This PICTURE routine will plot a square of a specified color and size. o HISTOGRAM - This is a PICTURE routine that draws histograms. 4. CLOCK.BAS displays a running analog clock. 5. DRAW_HISTOGRAM.BAS demonstrates the use of the HISTOGRAM subroutine. 6. FONT_DEMO.BAS demonstrates the available text fonts. 7. ELLIPSE.BAS, ROTATED_SQUARES.BAS, CREATE_SWAN_SWIM.BAS, PARTY.BAS - These routines are general output examples, many which can be found in the V3.0 documentation. There are many examples which invoke PICTURE subprograms with various transformations within these programs. 8. SINE.BAS produces a simple SINE curve.