# JSXGraph Reference

## JavaScript must be enabled in order for you to use JSXGraph and JSXGraph reference. However, it seems JavaScript is either disabled or not supported by your browser.

Class Index | File Index

## Elements

## Classes

- _global_
- Angle
- Arc
- Arrow
- Arrowparallel
- Axis
- Bisector
- Bisectorlines
- Button
- Checkbox
- Circle
- Circumcenter
- Circumcircle
- CircumcircleArc
- CircumcircleSector
- Conic
- Curve
- Ellipse
- Functiongraph
- Glider
- Grid
- Group
- Hatch
- Hyperbola
- Image
- Incenter
- Incircle
- Inequality
- Input
- Integral
- Intersection
- JXG
- JXG.AbstractRenderer
- JXG.Board
- JXG.C
- JXG.CA
- JXG.CanvasRenderer
- JXG.Circle
- JXG.Complex
- JXG.Composition
- JXG.Coords
- JXG.CoordsElement
- JXG.Curve
- JXG.Dump
- JXG.EventEmitter
- JXG.GeometryElement
- JXG.GeonextParser
- JXG.Group
- JXG.Image
- JXG.JessieCode
- JXG.JSXGraph
- JXG.Line
- JXG.Math
- JXG.Math.Geometry
- JXG.Math.Numerics
- JXG.Math.Poly
- JXG.Math.Poly.Monomial
- JXG.Math.Poly.Polynomial
- JXG.Math.Poly.Ring
- JXG.Math.Statistics
- JXG.Math.Symbolic
- JXG.NoRenderer
- JXG.Options
- JXG.Point
- JXG.Polygon
- JXG.Server
- JXG.Server.modules
- JXG.SVGRenderer
- JXG.Text
- JXG.Ticks
- JXG.Transformation
- JXG.Turtle
- JXG.Util
- JXG.Util.Base64
- JXG.Util.Unzip
- JXG.Util.UTF8
- JXG.VMLRenderer
- JXG.XML
- Label
- Line
- Locus
- MajorArc
- MajorSector
- Midpoint
- MinorArc
- MinorSector
- Mirrorpoint
- NonReflexAngle
- Normal
- Orthogonalprojection
- OtherIntersection
- Parabola
- Parallel
- Parallelpoint
- Perpendicular
- PerpendicularPoint
- PerpendicularSegment
- Point
- PolarLine
- PolePoint
- Polygon
- Quadtree
- RadicalAxis
- Reflection
- ReflexAngle
- RegularPolygon
- Riemannsum
- Sector
- Segment
- Semicircle
- Slider
- Slopetriangle
- Spline
- Stepfunction
- Tangent
- Tapemeasure
- Text
- Ticks
- Tracecurve
- Transformation
- Turtle

# Class Polygon

JXG.GeometryElement
↳ JXG.Polygon
↳ Polygon

A polygon is an area enclosed by a set of border lines which are determined by

- a list of points or
- a list of coordinate arrays or
- a function returning a list of coordinate arrays.

Each two consecutive points of the list define a line.
Defined in: polygon.js.
Extends JXG.Polygon.

Class Summary
Constructor Attributes | Constructor Name and Description
--- | ---
| Polygon(vertices)

Fields borrowed from class JXG.GeometryElement:
  _org_type, _pos, ancestors, baseElement, board, childElements, dash, descendants, draft, dump, elementClass, elType, fillColor, fillOpacity, fixed, frozen, hasLabel, highlight, highlighted, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, id, inherits, isDraggable, isReal, lastDragTime, methodMap, mouseover, name, needsRegularUpdate, needsUpdate, notExistingParents, numTraces, parents, quadraticform, rendNode, scalable, shadow, snapToGrid, stdform, strokeColor, strokeOpacity, strokeWidth, subs, symbolic, trace, traceAttributes, traces, transformations, transitionDuration, type, visible, visProp, visPropCalc, withLabel

Field Summary
Field Attributes | Field Name and Description
--- | ---
| borders Attributes for the polygon border lines.
| hasInnerPoints If `true`, moving the mouse over inner points triggers hasPoint.
| label Attributes for the polygon label.
| vertices Attributes for the polygon vertices.
| withLines Is the polygon bordered by lines?

Fields borrowed from class JXG.GeometryElement:
  _org_type, _pos, ancestors, baseElement, board, childElements, dash, descendants, draft, dump, elementClass, elType, fillColor, fillOpacity, fixed, frozen, hasLabel, highlight, highlighted, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, id, inherits, isDraggable, isReal, lastDragTime, methodMap, mouseover, name, needsRegularUpdate, needsUpdate, notExistingParents, numTraces, parents, quadraticform, rendNode, scalable, shadow, snapToGrid, stdform, strokeColor, strokeOpacity, strokeWidth, subs, symbolic, trace, traceAttributes, traces, transformations, transitionDuration, type, visible, visProp, visPropCalc, withLabel

Methods borrowed from class JXG.Polygon:
  addPoints, Area, boundingBox, findPoint, getTextAnchor, hasPoint, hideElement, insertPoints, intersect, Perimeter, remove, removePoints, setPositionDirectly, showElement, sutherlandHodgman, updateRenderer
Methods borrowed from class JXG.GeometryElement:
  _set, addChild, addDescendants, addParents, addRotation, addTransform, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getType, handleSnapToGrid, labelColor, noHighlight, normalize, prepareUpdate, removeChild, removeDescendants, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setProperty, snapToPoints, update, updateVisibility

Events borrowed from class JXG.GeometryElement:
  attribute, attribute:<attribute><attribute>, down, drag, mousedown, mousedrag, mousemove, mouseout, mouseover, mouseup, move, out, over, touchdown, touchdrag, touchup, up

Class Detail
Polygon(vertices)

Parameters:
{Array} vertices
  The polygon's vertices. If the first and the last vertex don't match the first one will be added to the array by the creator.

Throws:
{Exception}
  If the element cannot be constructed with the given parent objects an exception is thrown.

Examples:

    var p1 = board.create('point', [0.0, 2.0]);
    var p2 = board.create('point', [2.0, 1.0]);
    var p3 = board.create('point', [4.0, 6.0]);
    var p4 = board.create('point', [1.0, 4.0]);

    var pol = board.create('polygon', [p1, p2, p3, p4]);

    var p = [[0.0, 2.0], [2.0, 1.0], [4.0, 6.0], [1.0, 3.0]];

    var pol = board.create('polygon', p, {hasInnerPoints: true});

      var f1 = function() { return [0.0, 2.0]; },
          f2 = function() { return [2.0, 1.0]; },
          f3 = function() { return [4.0, 6.0]; },
          f4 = function() { return [1.0, 4.0]; },
          cc1 = board.create('polygon', [f1, f2, f3, f4]);

Field Detail
{Line} borders
Attributes for the polygon border lines.
Defined in: options.js.

{Boolean} hasInnerPoints
If `true`, moving the mouse over inner points triggers hasPoint.
Defined in: options.js.

See:
  JXG.GeometryElement#hasPoint

Default Value:
  false

{Label} label
Attributes for the polygon label.
Defined in: options.js.

{Point} vertices
Attributes for the polygon vertices.
Defined in: options.js.

{Boolean} withLines
Is the polygon bordered by lines?
Defined in: options.js.

Default Value:
  true

Documentation generated by JsDoc Toolkit 2.4.0 on Wed Aug 23 2017 17:12:48 GMT-0000 (UTC)