# 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
- Cardinalspline
- Checkbox
- Circle
- Circumcenter
- Circumcircle
- CircumcircleArc
- CircumcircleSector
- Conic
- Curve
- Derivative
- 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
- Mirrorelement
- 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

# Namespace JXG.C

↳ JXG.C

Namespace for the complex number arithmetic functions.
Defined in: complex.js.

Namespace Summary
Constructor Attributes | Constructor Name and Description
--- | ---
| JXG.C JXG.C is the complex number (name)space.

Method Summary
Method Attributes | Method Name and Description
--- | ---
<static> | JXG.C.abs(z1) Absolute value of a complex number.
<static> | JXG.C.add(z1, z2) Add two (complex) numbers z1 and z2 and return the result as a (complex) number.
<static> | JXG.C.conj(z1) Conjugate a complex number and return the result.
<static> | JXG.C.div(z1, z2) Divide two (complex) numbers z1 and z2 and return the result as a (complex) number.
<static> | JXG.C.mult(z1, z2) Multiply two (complex) numbers z1 and z2 and return the result as a (complex) number.
<static> | JXG.C.sub(z1, z2) Subtract two (complex) numbers z1 and z2 and return the result as a (complex) number.

Namespace Detail
JXG.C
JXG.C is the complex number (name)space. It provides functions to calculate with complex numbers (defined in JXG.Complex). With this namespace you don't have to modify your existing complex numbers, e.g. to add two complex numbers:

       var z1 = new JXG.Complex(1, 0);
       var z2 = new JXG.Complex(0, 1);
       z = JXG.C.add(z1, z1);

z1 and z2 here remain unmodified. With the object oriented approach above this section the code would look like:

       var z1 = new JXG.Complex(1, 0);
       var z2 = new JXG.Complex(0, 1);
       var z = new JXG.Complex(z1);
       z.add(z2);

Method Detail
<static> {Number} JXG.C.abs(z1)
Absolute value of a complex number.

Parameters:
{JXG.Complex|Number} z1
  Complex number

Returns:
  {Number} real number equal to the absolute value of the given parameter.

<static> {JXG.Complex} JXG.C.add(z1, z2)
Add two (complex) numbers z1 and z2 and return the result as a (complex) number.

Parameters:
{JXG.Complex|Number} z1
  Summand
{JXG.Complex|Number} z2
  Summand

Returns:
  {JXG.Complex} A complex number equal to the sum of the given parameters.

<static> {JXG.Complex} JXG.C.conj(z1)
Conjugate a complex number and return the result.

Parameters:
{JXG.Complex|Number} z1
  Complex number

Returns:
  {JXG.Complex} A complex number equal to the conjugate of the given parameter.

<static> {JXG.Complex} JXG.C.div(z1, z2)
Divide two (complex) numbers z1 and z2 and return the result as a (complex) number.

Parameters:
{JXG.Complex|Number} z1
  Dividend
{JXG.Complex|Number} z2
  Divisor

Returns:
  {JXG.Complex} A complex number equal to the quotient of the given parameters.

<static> {JXG.Complex} JXG.C.mult(z1, z2)
Multiply two (complex) numbers z1 and z2 and return the result as a (complex) number.

Parameters:
{JXG.Complex|Number} z1
  Factor
{JXG.Complex|Number} z2
  Factor

Returns:
  {JXG.Complex} A complex number equal to the product of the given parameters.

<static> {JXG.Complex} JXG.C.sub(z1, z2)
Subtract two (complex) numbers z1 and z2 and return the result as a (complex) number.

Parameters:
{JXG.Complex|Number} z1
  Minuend
{JXG.Complex|Number} z2
  Subtrahend

Returns:
  {JXG.Complex} A complex number equal to the difference of the given parameters.