math-exercises 2.2.18 → 2.2.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.d.ts +8 -0
- package/lib/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.d.ts.map +1 -0
- package/lib/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.js +117 -0
- package/lib/exercises/math/geometry/euclidianConstructions/index.d.ts +2 -0
- package/lib/exercises/math/geometry/euclidianConstructions/index.d.ts.map +1 -0
- package/lib/exercises/math/geometry/euclidianConstructions/index.js +17 -0
- package/lib/exercises/math/geometry/index.d.ts +2 -0
- package/lib/exercises/math/geometry/index.d.ts.map +1 -1
- package/lib/exercises/math/geometry/index.js +3 -0
- package/lib/exercises/math/geometry/shapes/basicShapesNaming.d.ts +8 -0
- package/lib/exercises/math/geometry/shapes/basicShapesNaming.d.ts.map +1 -0
- package/lib/exercises/math/geometry/shapes/basicShapesNaming.js +118 -0
- package/lib/exercises/math/geometry/shapes/basicShapesRecognition.d.ts +8 -0
- package/lib/exercises/math/geometry/shapes/basicShapesRecognition.d.ts.map +1 -0
- package/lib/exercises/math/geometry/shapes/basicShapesRecognition.js +83 -0
- package/lib/exercises/math/geometry/shapes/index.d.ts +3 -0
- package/lib/exercises/math/geometry/shapes/index.d.ts.map +1 -0
- package/lib/exercises/math/geometry/shapes/index.js +18 -0
- package/lib/exercises/math/geometry/triangles/index.d.ts +1 -0
- package/lib/exercises/math/geometry/triangles/index.d.ts.map +1 -0
- package/lib/exercises/math/geometry/triangles/index.js +2 -0
- package/lib/exercises/math/geometry/triangles/traceMedianInTriangle.d.ts +1 -0
- package/lib/exercises/math/geometry/triangles/traceMedianInTriangle.d.ts.map +1 -0
- package/lib/exercises/math/geometry/triangles/traceMedianInTriangle.js +55 -0
- package/lib/exercises/math/probaStat/conditionalProbability.d.ts +5 -3
- package/lib/exercises/math/probaStat/conditionalProbability.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/conditionalProbability.js +145 -19
- package/lib/exercises/math/sequences/arithmetic/recognizeArithmeticFromGraph.d.ts.map +1 -1
- package/lib/exercises/math/sequences/arithmetic/recognizeArithmeticFromGraph.js +3 -4
- package/lib/exercises/math/sequences/arithmetic/recognizeReasonFromGraph.d.ts.map +1 -1
- package/lib/exercises/math/sequences/arithmetic/recognizeReasonFromGraph.js +3 -4
- package/lib/exercises/utils/geogebra/toGGBCommandsProps.d.ts +6 -0
- package/lib/exercises/utils/geogebra/toGGBCommandsProps.d.ts.map +1 -0
- package/lib/exercises/utils/geogebra/toGGBCommandsProps.js +2 -0
- package/lib/exercises/utils/geogebra/toolBarConstructor.d.ts +1 -0
- package/lib/exercises/utils/geogebra/toolBarConstructor.d.ts.map +1 -1
- package/lib/exercises/utils/geogebra/toolBarConstructor.js +2 -0
- package/lib/exercises/utils/geometry/randomSegmentName.d.ts +2 -0
- package/lib/exercises/utils/geometry/randomSegmentName.d.ts.map +1 -0
- package/lib/exercises/utils/geometry/randomSegmentName.js +10 -0
- package/lib/index.d.ts +14 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/math/geometry/line.d.ts +10 -2
- package/lib/math/geometry/line.d.ts.map +1 -1
- package/lib/math/geometry/line.js +47 -5
- package/lib/math/geometry/point.d.ts +3 -1
- package/lib/math/geometry/point.d.ts.map +1 -1
- package/lib/math/geometry/point.js +16 -2
- package/lib/math/geometry/ray.d.ts +15 -0
- package/lib/math/geometry/ray.d.ts.map +1 -0
- package/lib/math/geometry/ray.js +44 -0
- package/lib/math/geometry/segment.d.ts +16 -0
- package/lib/math/geometry/segment.d.ts.map +1 -0
- package/lib/math/geometry/segment.js +47 -0
- package/lib/tree/parsers/isSegmentName.d.ts +2 -0
- package/lib/tree/parsers/isSegmentName.d.ts.map +1 -0
- package/lib/tree/parsers/isSegmentName.js +15 -0
- package/package.json +1 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Segment = exports.SegmentConstructor = void 0;
|
|
4
|
+
const randomSegmentName_1 = require("../../exercises/utils/geometry/randomSegmentName");
|
|
5
|
+
const point_1 = require("./point");
|
|
6
|
+
class SegmentConstructor {
|
|
7
|
+
static random() {
|
|
8
|
+
const name = (0, randomSegmentName_1.randomSegmentName)();
|
|
9
|
+
const points = point_1.PointConstructor.randomDifferent(name.split(""));
|
|
10
|
+
return new Segment(points[0], points[1]);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.SegmentConstructor = SegmentConstructor;
|
|
14
|
+
class Segment {
|
|
15
|
+
constructor(pointA, pointB) {
|
|
16
|
+
this.pointA = pointA;
|
|
17
|
+
this.pointB = pointB;
|
|
18
|
+
this.name = `[${pointA.name}${pointB.name}]`;
|
|
19
|
+
this.ggbName = `segment_{${pointA.name}${pointB.name}}`;
|
|
20
|
+
}
|
|
21
|
+
getLength() {
|
|
22
|
+
return this.pointA.distanceTo(this.pointB);
|
|
23
|
+
}
|
|
24
|
+
toTex() {
|
|
25
|
+
return this.name;
|
|
26
|
+
}
|
|
27
|
+
toGGBCommands(shouldBuildPoints, { isFixed = true, showLabel = false, showUnderlyingPointsLabel = true, } = {}) {
|
|
28
|
+
const commands = [
|
|
29
|
+
`${this.ggbName}=Segment(${this.pointA.name},${this.pointB.name})`,
|
|
30
|
+
`SetFixed(${this.ggbName},${isFixed ? "true" : "false"})`,
|
|
31
|
+
`ShowLabel(${this.ggbName},${showLabel ? "true" : "false"})`,
|
|
32
|
+
];
|
|
33
|
+
if (shouldBuildPoints) {
|
|
34
|
+
const ACommands = this.pointA.toGGBCommand({
|
|
35
|
+
isFixed,
|
|
36
|
+
showLabel: showUnderlyingPointsLabel,
|
|
37
|
+
});
|
|
38
|
+
const BCommands = this.pointB.toGGBCommand({
|
|
39
|
+
isFixed,
|
|
40
|
+
showLabel: showUnderlyingPointsLabel,
|
|
41
|
+
});
|
|
42
|
+
commands.unshift(...ACommands, ...BCommands);
|
|
43
|
+
}
|
|
44
|
+
return commands;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.Segment = Segment;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isSegmentName.d.ts","sourceRoot":"","sources":["../../../src/tree/parsers/isSegmentName.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa,QAAS,MAAM,YAUxC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isSegmentName = void 0;
|
|
4
|
+
const isLetter_1 = require("../../utils/strings/isLetter");
|
|
5
|
+
//to use when the answer is a segment type [AB]
|
|
6
|
+
const isSegmentName = (ans) => {
|
|
7
|
+
if (ans.length === 4 &&
|
|
8
|
+
ans[0] === "[" &&
|
|
9
|
+
ans[ans.length - 1] === "]" &&
|
|
10
|
+
(0, isLetter_1.isLetter)(ans[1]) &&
|
|
11
|
+
(0, isLetter_1.isLetter)(ans[2]))
|
|
12
|
+
return true;
|
|
13
|
+
return false;
|
|
14
|
+
};
|
|
15
|
+
exports.isSegmentName = isSegmentName;
|