摘要: 概述JSXGraph框架的主要几何图形类型、图形关系。
JSXGraph的所有图形元素类都从JXG.GeometryElement派生,主要图形有点、直线、圆、圆弧、曲线等。
图形关系(几何约束)由图形元素类和创建图形所传入的依赖图形确定。本文省略图表和微积分图形。
图形元素
JXG.Line: 线性图形基类
- Line: 直线,默认两段无限延伸。构图法:给定两点、给定三个数的一般式。
- Parallel: 平行直线,平行于一直线且过一点。
- Arrowparallel: 平行于一直线且起点在一点的射线,终端有箭头。
- Parallel: 平行直线,平行于一直线且过一点。
- Segment: 线段。构图法:给定两点、给定起点和长度。
- Perpendicular: 垂线,垂直于一直线且过一点的直线。
- PerpendicularSegment: 垂线段,垂直于一直线且从一点到垂足的线段。
- Tapemeasure: 距离标注。构图法:给定两个初始坐标(不能是点对象)。
- Normal: 法线,是一个图形(直线、圆、曲线、龟图)上的某点处的法线,且过一个外部点。
- Tangent: 切线,是一个图形(直线、圆、曲线)上的某点处的切线,切点可沿图形滑动。
- Bisector: 三点定位的角平分线,例如给定ABC三点,则构造∠ABC的角平分线。
- Arrow: 终点有箭头的线段,构图法与Line相似。
- Axis: 坐标轴,末端有箭头的直线,构图法与Line相似。与Ticks配套可显示特殊刻度的坐标轴。
- RadicalAxis: 两个圆的自由极轴,当两圆相交时该直线过两交点。
- PolarLine: 二次曲线的极线。
- Line: 直线,默认两段无限延伸。构图法:给定两点、给定三个数的一般式。
JXG.Point: 点状图形基类
- Point: 点。
- Midpoint: 中点。构图法:给定两点、给定一直线。
- Intersection: 交点。构图法:给定两个图形(直线、圆)和交点序号。
- OtherIntersection: 第二个交点。构图法:给定两个图形(直线、圆)和已知的一个交点。
- PerpendicularPoint: 垂足。构图法:给定一个直线和外部点。
- Parallelpoint: 由三点形成平行四边形的第四点。
- Mirrorpoint: 点对称,一点关于另一点对称的点。
- Reflection: 线对称,一点关于一直线对称的点。
- Orthogonalprojection: 投影点,一点投影到一条直线上的线上点。
- Circumcenter: 三点圆的圆心。构图法:给定圆上三点。
- Incenter: 内切圆心,三角形的内切圆圆心。构图法:给定三点(即三角形的顶点)。
- PolePoint: 二次曲线的极点。
- Glider: 线上点,任意图形上的点,可指定初始附近位置。
- Slider: 滑块,指定起始坐标和值范围构造。
JXG.Curve: 曲线图形基类
- Curve: 参数曲线。构图法:X和Y的参数方程和t定义域、离散点组成的折线、极坐标法。
- Arc: 圆心圆弧。构图法:指定圆心、起点和终点。
- Semicircle: 半圆弧。构图法:指定直径的两端点。
- CircumcircleArc: 三点圆弧。构图法:指定起点、弧上中间点和终点。
- MajorArc: 优弧,构图法与Arc相似。
- MajorSector: 优弧扇形,构图法与Arc相似。
- MinorArc: 劣弧,构图法与Arc相似。
- MinorSector: 劣弧扇形,构图法与Arc相似。
- Arc: 圆心圆弧。构图法:指定圆心、起点和终点。
- Sector: 扇形,构图法与Arc相似。
- Angle: 角度标注,有角度标记符号,默认半径为0。有三种构图法。
- 三点法:指定起始方向点、圆心和终止方向点,沿逆时针方向;
- 两直线和两导向点:直线决定角的一条边、初始导向坐标决定取直线上交点的哪一侧。
- 两直线和方向标志:直线决定角的一条边、方向标志(1或-1)决定取直线上哪一侧。
- ReflexAngle: 优弧角度标注。构图法:指定起始方向点、圆心和终止方向点。
- NonReflexAngle: 劣弧角度标注。构图法:指定起始方向点、圆心和终止方向点。
- CircumcircleSector: 三点扇形。构图法:指定起点、弧上中间点和终点。
- Angle: 角度标注,有角度标记符号,默认半径为0。有三种构图法。
- Functiongraph: 函数图像,指定y(x)函数和x定义域。
- Conic: 二次曲线
- Ellipse: 椭圆
- Hyperbola: 双曲线
- Parabola: 抛物线
- Grid: 网格
- Locus: 点的轨迹。每次图形变化后会重新形成轨迹,速度较慢。
- Tracecurve: 轨迹线,由一个线上点(Glider)和一个被跟踪点形成曲线。
- Curve: 参数曲线。构图法:X和Y的参数方程和t定义域、离散点组成的折线、极坐标法。
JXG.Circle: 圆基类
- Circle: 圆心圆。构图法:指定圆心、起点和终点。
- Circumcircle: 三点圆。构图法:指定起点、弧上中间点和终点。
- Circle: 圆心圆。构图法:指定圆心、起点和终点。
JXG.Polygon: 多边形基类
- Polygon: 多边形,由多个点构造。
- RegularPolygon: 正多边形,由一边的两个端点和边数构造。
- Polygon: 多边形,由多个点构造。
JXG.Group
- Group: 点组,让多个点整体移动或旋转,其他类型的图形可跟随点变化。
JXG.Composition
- Bisectorlines: 两条直线的两个角平分线。
JXG.Ticks
- Ticks: 刻度标记,可在线段上画刻度。
- Hatch: 全等标记,在线段中间的小短线标记。
JXG.Image
- Image: 图像
JXG.Text: 文本基类
- Text: 标签
- Button: 按钮
- Checkbox: 复选框
- Input: 输入框
- Text: 标签
交互控件
- Slider: 滑块
- Text: 标签
- Button: 按钮
- Checkbox: 复选框
- Input: 输入框
实用类
- JXG.Board: 绘图板,主要图形的创建接口。
- JXG.Options: 绘图选项。
- JXG.Turtle: 龟图,用海龟作图法(相对坐标绘图)生成图形。
更多实用函数和类见参考资料的“Classes”部分。