# coyote: CGPOLYGON

- coyote/Graphics
- [Source code]

Description

      Provides a device-independent and color-model-independent way to draw a
      filled or unfilled polygon.
      The program requires the `Coyote Library <http://www.idlcoyote.com/documents/programs.php>`
      to be installed on your machine.

Categories

      Graphics

Params

      x: in, required, type=number
         A vector argument providing the X coordinates of the points to be connected.
         The vector must contain at least three elements. If only one argument is
         specified, X must be an array of either two or three vectors (i.e., (2,*)
         or (3,*)). In this special case, the vector X[0,*] specifies the X values,
         X[1,*] specifies Y, and X[2,*] contain the Z values.
      y: in, required, type=number
         A vector argument providing the Y coordinates of the points to be connected.
         Y must contain at least three elements.
      z: in, optional, type=number
         An optional vector argument providing the Z coordinates of the points to be
         connected. Z must contain at least three elements.

Keywords

      addcmd: in, optional, type=boolean, default=0
         Set this keyword to add the command to an cgWindow. Setting this keyword
         automatically sets the WINDOW keyword, but the command does not erase the
         graphics window as it would normally.
      checkforfinite: in, optional, type=boolean, default=0
         If the input data is not finite (i.e., it contains NaNs), then the drawing of
         the polygons will be affected. This is particularly true if you are drawing polygons
         on map projections using the `Map_Object` keyword. The program could check all input for NaNs, but
         this would be quite slow when a great number of polygons are being drawn. For this reason,
         the program only checks polygon input when this keyword is set. Only polygons containing all
         finite values are drawn when this keyword is set.
      color: in, optional, type=string, default='rose'
         The name of the polygon color. Color names are those used with cgColor.
         This value can also be a long integer or an index into the current color
         table.
      device: in, optional, type=boolean, default=0
         Set to indicate the polygon vertices are in device coordinates.
      fcolor: in, optional, type=string/integer/long
         The name of the polygon fill color. Color names are those used with cgColor.
         This value can also be a long integer or an index into the current color
         table. The default is the same as `Color`.
      fill: in, optional, type=boolean, default=0
         Set this keyword to draw a filled polygon, rather than an open polygon.
      map_object: in, optional, type=object
         If you are drawing on a map projection set up with Map_Proj_Init
         and using projected meter space, rather than lat/lon space, then you can use this
         keyword to provide a cgMap object that will allow you to convert the `x` and `y`
         parameters from longitude and latitude, respectively, to projected meter space
         before drawing. X and Y must both be present.
      normal: in, optional, type=boolean, default=0
         Set to indicate the polygon vertices are in normalized coordinates.
      position: in, optional, type=fltarr(4)
         Set this keyword to a four-element position array of normalized coordinates
         to fill a rectangular area on the graphics display. The normal input parameters
         are ignored if this keyword is set.
      window: in, optional, type=boolean, default=0
         Set this keyword to add the command to the current cgWindow application.
      _ref_extra: in, optional, type=appropriate
         Any other keywords to the IDL POLYFILL command may be used.

Examples

      Used like the IDL Plots or Polyfill commands::
         IDL> cgPolygon, [0.25, 0.25, 0.75, 0.75, 0.25], [0.25, 0.75, 0.75, 0.25, 0.25], $
                   /NORMAL, COLOR='blue'
         IDL> cgPolygon, [0.25, 0.25, 0.75, 0.75, 0.25], [0.25, 0.75, 0.75, 0.25, 0.25], $
                   /NORMAL, COLOR='blue', FCOLOR='rose', /FILL

Author

      FANNING SOFTWARE CONSULTING::
          David W. Fanning
          1645 Sheely Drive
          Fort Collins, CO 80526 USA
          Phone: 970-221-0438
          E-mail: david@idlcoyote.com
          Coyote's Guide to IDL Programming: http://www.idlcoyote.com

History

      Change History::
         Written, 26 March 2012. David Fanning.
         Added Position keyword to allow a fill of a particular portion of the graphics
             window. 20 Apr 2012. DWF.
         Added AddCmd keyword. 25 Oct 2012. DWF.
         Added a MAP_OBJECT keyword to allow polygon filling on maps. 16 Dec 2013. DWF.
         Completely forgot to deconstruct a single parameter into component parts. 11 Jan 2014. DWF.
         Added CheckForFinite keyword to check output for NaN values before display. 22 Jan 2014. DWF.

Copyright

      Copyright (c) 2012-2014, Fanning Software Consulting, Inc.