# JSXGraph 1.7.0 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
- Boxplot
- Button
- Cardinalspline
- Chart
- Checkbox
- Circle
- Circumcenter
- Circumcircle
- CircumcircleArc
- CircumcircleSector
- Comb
- Conic
- Curve
- Curve3D
- CurveDifference
- CurveIntersection
- CurveUnion
- Derivative
- Ellipse
- ForeignObject
- Functiongraph
- Functiongraph3D
- Glider
- Grid
- Group
- Hatch
- Hyperbola
- Image
- ImplicitCurve
- Incenter
- Incircle
- Inequality
- Input
- Integral
- Intersection
- JXG
- JXG.AbstractRenderer
- JXG.Board
- JXG.Board.infobox
- JXG.C
- JXG.CA
- JXG.CanvasRenderer
- JXG.Chart
- JXG.Circle
- JXG.Complex
- JXG.Composition
- JXG.Coords
- JXG.CoordsElement
- JXG.Curve
- JXG.Curve3D
- JXG.Dump
- JXG.EventEmitter
- JXG.Expect
- JXG.ForeignObject
- JXG.GeometryElement
- JXG.GeometryElement3D
- JXG.GeonextParser
- JXG.Group
- JXG.Image
- JXG.JessieCode
- JXG.JSXGraph
- JXG.Legend
- JXG.Line
- JXG.Line3D
- JXG.Math
- JXG.Math.BoxQuadtree
- JXG.Math.Clip
- JXG.Math.Extrapolate
- JXG.Math.Geometry
- JXG.Math.ImplicitPlot
- JXG.Math.IntervalArithmetic
- JXG.Math.Metapost
- JXG.Math.Nlp
- JXG.Math.Numerics
- JXG.Math.Plot
- JXG.Math.Poly
- JXG.Math.Poly.Monomial
- JXG.Math.Poly.Polynomial
- JXG.Math.Poly.Ring
- JXG.Math.ProbFuncs
- JXG.Math.Quadtree
- JXG.Math.Statistics
- JXG.Math.Symbolic
- JXG.NoRenderer
- JXG.Options
- JXG.Plane3D
- JXG.Point
- JXG.Point3D
- JXG.Polygon
- JXG.PrefixParser
- JXG.Server
- JXG.Server.modules
- JXG.Surface3D
- JXG.SVGRenderer
- JXG.Text
- JXG.Ticks
- JXG.Transformation
- JXG.Turtle
- JXG.Util
- JXG.Util.Base64
- JXG.Util.Unzip
- JXG.Util.UTF8
- JXG.View3D
- JXG.VMLRenderer
- JXG.XML
- Label
- Legend
- Line
- Line3D
- Locus
- MajorArc
- MajorSector
- Measurement
- Metapostspline
- Midpoint
- MinorArc
- MinorSector
- mirrorelement
- Mirrorpoint
- NonReflexAngle
- Normal
- Orthogonalprojection
- OtherIntersection
- Parabola
- Parallel
- Parallelogram
- Parallelpoint
- ParametricSurface3D
- Perpendicular
- PerpendicularPoint
- PerpendicularSegment
- Point
- Point3D
- PolarLine
- PolePoint
- Polygon
- PolygonalChain
- RadicalAxis
- Reflection
- ReflexAngle
- RegularPolygon
- Riemannsum
- Sector
- Segment
- Semicircle
- Slider
- Slopefield
- Slopetriangle
- Smartlabel
- Spline
- Stepfunction
- Tangent
- Tapemeasure
- Text
- Ticks
- Tracecurve
- Transformation
- Turtle
- Vectorfield
- Vectorfield3D
- View3D

# Class Arc

JXG.GeometryElement
↳ JXG.Curve
↳ Curve
↳ Arc

An arc is a segment of the circumference of a circle. It is defined by a center, one point that defines the radius, and a third point that defines the angle of the arc.
Defined in: arc.js.
Extends Curve.

Class Summary
Constructor Attributes | Constructor Name and Description
--- | ---
| Arc(p1,p2,p3)

Fields borrowed from class Curve:
  curveType, doAdvancedPlot, doAdvancedPlotOld, firstArrow, handDrawing, label, lastArrow, numberPointsHigh, numberPointsLow, plotVersion, recursionDepthHigh, recursionDepthLow
Fields borrowed from class JXG.Curve:
  dataX, dataY, lineCap, numberPoints, qdt, ticks
Fields borrowed from class JXG.GeometryElement:
  _org_type, _pos, ancestors, baseElement, board, childElements, dash, dashScale, descendants, draft, dragToTopOfLayer, dump, elementClass, elType, fillColor, fillOpacity, fixed, frozen, gradient, gradientAngle, gradientCX, gradientCY, gradientEndOffset, gradientFR, gradientFX, gradientFY, gradientR, gradientSecondColor, gradientSecondOpacity, gradientStartOffset, hasLabel, highlight, highlighted, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, id, inherits, isDraggable, isLabel, isReal, lastDragTime, layer, methodMap, mouseover, name, needsRegularUpdate, needsUpdate, notExistingParents, numTraces, parents, precision, priv, quadraticform, rendNode, rotatable, scalable, shadow, snapToGrid, stdform, strokeColor, strokeOpacity, strokeWidth, subs, symbolic, tabindex, trace, traceAttributes, traces, transformations, transitionDuration, transitionProperties, type, viewport, visible, visProp, visPropCalc, withLabel

Field Summary
Field Attributes | Field Name and Description
--- | ---
| anglePoint Attributes for angle point.
| anglepoint The point defining the arc's angle.
| center Attributes for center point.
| hasInnerPoints If `true`, moving the mouse over inner points triggers hasPoint.
| L Arc length.
| radiusPoint Attributes for radius point.
| radiuspoint Point defining the arc's radius.
| selection Type of arc.

Fields borrowed from class Curve:
  curveType, doAdvancedPlot, doAdvancedPlotOld, firstArrow, handDrawing, label, lastArrow, numberPointsHigh, numberPointsLow, plotVersion, recursionDepthHigh, recursionDepthLow
Fields borrowed from class JXG.Curve:
  dataX, dataY, lineCap, numberPoints, qdt, ticks
Fields borrowed from class JXG.GeometryElement:
  _org_type, _pos, ancestors, baseElement, board, childElements, dash, dashScale, descendants, draft, dragToTopOfLayer, dump, elementClass, elType, fillColor, fillOpacity, fixed, frozen, gradient, gradientAngle, gradientCX, gradientCY, gradientEndOffset, gradientFR, gradientFX, gradientFY, gradientR, gradientSecondColor, gradientSecondOpacity, gradientStartOffset, hasLabel, highlight, highlighted, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, id, inherits, isDraggable, isLabel, isReal, lastDragTime, layer, methodMap, mouseover, name, needsRegularUpdate, needsUpdate, notExistingParents, numTraces, parents, precision, priv, quadraticform, rendNode, rotatable, scalable, shadow, snapToGrid, stdform, strokeColor, strokeOpacity, strokeWidth, subs, symbolic, tabindex, trace, traceAttributes, traces, transformations, transitionDuration, transitionProperties, type, viewport, visible, visProp, visPropCalc, withLabel

Method Summary
Method Attributes | Method Name and Description
--- | ---
<deprecated> | getRadius()
| hasPointSector(x, y) Checks whether (x,y) is within the sector defined by the arc.
| Radius() Determines the arc's current radius.
| Value(unit, rad) Returns the length of the arc or the value of the angle spanned by the arc.

Methods borrowed from class JXG.Curve:
  addTransform, allocatePoints, generateTerm, getTransformationSource, hasPoint, interpolationFunctionFromArray, maxX, minX, moveTo, notifyParents, update, updateCurve, updateDataArray, updateRenderer, updateTransform, X, Y, Z
Methods borrowed from class JXG.GeometryElement:
  _set, addChild, addDescendants, addParents, addParentsFromJCFunctions, addRotation, addTicks, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, formatNumberLocale, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getSnapSizes, getTextAnchor, getType, handleSnapToGrid, hide, hideElement, noHighlight, normalize, prepareUpdate, remove, removeAllTicks, removeChild, removeDescendants, removeTicks, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setPositionDirectly, setProperty, show, showElement, snapToPoints, 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

Class Detail
Arc(p1,p2,p3)

Parameters:
{JXG.Point_JXG.Point_JXG.Point} p1,p2,p3
  The result will be an arc of a circle around p1 through p2. The arc is drawn counter-clockwise from p2 to p3.

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

Examples:

    // Create an arc out of three free points
    var p1 = board.create('point', [2.0, 2.0]);
    var p2 = board.create('point', [1.0, 0.5]);
    var p3 = board.create('point', [3.5, 1.0]);

    var a = board.create('arc', [p1, p2, p3]);
    board.create('text',[1,6,function(){return 'arclength: '+Math.round(a.Value()*100)/100}])

    var t = board.create('transform', [2, 1.5], {type: 'scale'});
    var a1 = board.create('arc', [[1, 1], [0, 1], [1, 0]], {strokeColor: 'red'});
    var a2 = board.create('curve', [a1, t], {strokeColor: 'red'});

Field Detail
{Point} anglePoint
Attributes for angle point.
Defined in: options.js.

{JXG.Point} anglepoint
The point defining the arc's angle.

{Point} center
Attributes for center point.
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

{Number} L
Arc length.

See:
  Arc#Value

{Point} radiusPoint
Attributes for radius point.
Defined in: options.js.

{JXG.Point} radiuspoint
Point defining the arc's radius.

{String} selection
Type of arc. Possible values are 'minor', 'major', and 'auto'.
Defined in: options.js.

Default Value:
  'auto'

Method Detail
{Number} getRadius()

Deprecated:
Use Arc#Radius

Returns:
  {Number}

{Boolean} hasPointSector(x, y)
Checks whether (x,y) is within the sector defined by the arc.

Parameters:
{Number} x
  Coordinate in x direction, screen coordinates.
{Number} y
  Coordinate in y direction, screen coordinates.

Returns:
  {Boolean} True if (x,y) is within the sector defined by the arc, False otherwise.

{Number} Radius()
Determines the arc's current radius. I.e. the distance between Arc#center and Arc#radiuspoint.

Returns:
  {Number} The arc's radius

{Number} Value(unit, rad)
Returns the length of the arc or the value of the angle spanned by the arc.

Parameters:
{String} unit Optional, Default: 'length'
  Unit of the returned values. Possible units are
  - 'length' (default): length of the arc line
  - 'radians': angle spanned by the arc in radians
  - 'degrees': angle spanned by the arc in degrees
  - 'semicircle': angle spanned by the arc in radians as a multiple of π, e.g. if the angle is 1.5π, 1.5 will be returned.
  - 'circle': angle spanned by the arc in radians as a multiple of 2π
  It is sufficient to supply the first three characters of the unit, e.g. 'len'.
{Number} rad Optional, Default: undefined
  Value of angle which can be used instead of the generic one.

Returns:
  {Number} The arc length or the angle value in various units.

Documentation generated by JsDoc Toolkit 2.4.0 on Thu Feb 15 2024 17:48:02 GMT+0000 (Coordinated Universal Time)