Element 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.
Defined in: polygon.js.
Extends JXG.Polygon.
Constructor Attributes | Constructor Name and Description |
---|---|
Field Attributes | Field Name and Description |
---|---|
Attributes for the polygon border lines.
|
|
If true, moving the mouse over inner points triggers hasPoint.
|
|
By default, the strokewidths of the borders of a polygon are not changed during highlighting (only strokeColor and strokeOpacity are changed
to highlightStrokeColor, and highlightStrokeOpacity).
|
|
Attributes for the polygon label.
|
|
Attributes for the polygon vertices.
|
|
Is the polygon bordered by lines?
|
- Methods borrowed from class JXG.Polygon:
- addPoints, Area, boundingBox, findPoint, getTextAnchor, hasPoint, hideElement, insertPoints, intersect, L, Perimeter, pnpoly, remove, removePoints, setPositionDirectly, showElement, sutherlandHodgman, updateRenderer
- Methods borrowed from class JXG.GeometryElement:
- _set, addChild, addDescendants, addParents, addParentsFromJCFunctions, addRotation, addTicks, addTransform, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, formatNumberLocale, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getSnapSizes, getType, handleSnapToGrid, hide, noHighlight, normalize, prepareUpdate, removeAllTicks, removeChild, removeDescendants, removeTicks, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setProperty, show, snapToPoints, update, updateVisibility, useLocale
- Events borrowed from class JXG.GeometryElement:
- attribute, attribute:key, down, drag, keydrag, mousedown, mousedrag, mousemove, mouseout, mouseover, mouseup, move, out, over, pendown, pendrag, penup, touchdown, touchdrag, touchup, up
Element Detail
Polygon
-
This element has no direct constructor. To create an instance of this element you have to call JXG.Board#create
with type "polygon".
- Possible parent array combinations are:
-
{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. Here, two points match if they have the same 'id' attribute. Additionally, a polygon can be created by providing a polygon and a transformation (or an array of transformations). The result is a polygon which is the transformation of the supplied polygon.
- 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]); board.update();
var t = board.create('transform', [2, 1.5], {type: 'scale'}); var a = board.create('point', [-3,-2], {name: 'a'}); var b = board.create('point', [-1,-4], {name: 'b'}); var c = board.create('point', [-2,-0.5], {name: 'c'}); var pol1 = board.create('polygon', [a,b,c], {vertices: {withLabel: false}}); var pol2 = board.create('polygon', [pol1, t], {vertices: {withLabel: true}});
Attribute Detail
{Line}
borders
Attributes for the polygon border lines.
Defined in: options.js.
Defined in: options.js.
{Boolean}
hasInnerPoints
If true, moving the mouse over inner points triggers hasPoint.
Defined in: options.js.
Defined in: options.js.
- Default Value:
- false
{Boolean}
highlightByStrokeWidth
By default, the strokewidths of the borders of a polygon are not changed during highlighting (only strokeColor and strokeOpacity are changed
to highlightStrokeColor, and highlightStrokeOpacity).
However, strokewidth is changed to highlightStrokewidth if an individual border gets the focus.
With this attribute set to true, also the borders change strokeWidth if the polygon itself gets the focus.
Defined in: options.js.
- Default Value:
- false
{Label}
label
Attributes for the polygon label.
Defined in: options.js.
Defined in: options.js.
{Point}
vertices
Attributes for the polygon vertices.
Defined in: options.js.
Defined in: options.js.
{Boolean}
withLines
Is the polygon bordered by lines?
Defined in: options.js.
Defined in: options.js.
- Default Value:
- true
Attributes borrowed from other Elements
- Attributes borrowed from class JXG.GeometryElement:
- dash, dashScale, draft, dragToTopOfLayer, fillColor, fillOpacity, fixed, frozen, gradient, gradientAngle, gradientCX, gradientCY, gradientEndOffset, gradientFR, gradientFX, gradientFY, gradientR, gradientSecondColor, gradientSecondOpacity, gradientStartOffset, highlight, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, isLabel, layer, lineCap, needsRegularUpdate, nonnegativeOnly, precision, priv, rotatable, scalable, shadow, snapToGrid, strokeColor, strokeOpacity, strokeWidth, tabindex, trace, traceAttributes, transitionDuration, transitionProperties, viewport, visible, withLabel
Fields borrowed from other Elements
- Fields borrowed from class JXG.GeometryElement:
- _org_type, _pos, ancestors, baseElement, board, childElements, descendants, dump, elementClass, elType, hasLabel, highlighted, id, inherits, isDraggable, isReal, lastDragTime, methodMap, mouseover, name, needsUpdate, notExistingParents, numTraces, parents, quadraticform, rendNode, stdform, subs, symbolic, traces, transformations, type, visProp, visPropCalc
Methods borrowed from other Elements
- Methods borrowed from class JXG.Polygon:
- addPoints, Area, boundingBox, findPoint, getTextAnchor, hasPoint, hideElement, insertPoints, intersect, L, Perimeter, pnpoly, remove, removePoints, setPositionDirectly, showElement, sutherlandHodgman, updateRenderer
- Methods borrowed from class JXG.GeometryElement:
- _set, addChild, addDescendants, addParents, addParentsFromJCFunctions, addRotation, addTicks, addTransform, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, formatNumberLocale, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getSnapSizes, getType, handleSnapToGrid, hide, noHighlight, normalize, prepareUpdate, removeAllTicks, removeChild, removeDescendants, removeTicks, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setProperty, show, snapToPoints, update, updateVisibility, useLocale
Events borrowed from other Elements