pimath 0.0.113 → 0.0.115
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/dist/pi.js +149 -44
- package/dist/pi.js.map +1 -1
- package/dist/pi.min.js +1 -1
- package/dist/pi.min.js.map +1 -1
- package/docs/assets/highlight.css +3 -3
- package/docs/assets/main.js +58 -52
- package/docs/assets/search.js +1 -1
- package/docs/assets/style.css +488 -621
- package/docs/classes/Logicalset.Logicalset.html +212 -0
- package/docs/classes/Polynom.Rational.html +388 -4
- package/docs/classes/Vector-1.Vector.html +448 -0
- package/docs/classes/Vector.Point.html +342 -1
- package/docs/classes/algebra_equation.Equation.html +749 -22
- package/docs/classes/algebra_linearSystem.LinearSystem.html +397 -1
- package/docs/classes/algebra_monom.Monom.html +906 -110
- package/docs/classes/algebra_polynom.Polynom.html +1258 -28
- package/docs/classes/coefficients_fraction.Fraction.html +929 -17
- package/docs/classes/expressions_numexp.NumExp.html +236 -1
- package/docs/classes/expressions_polynomexp.PolynomExpFactor.html +317 -1
- package/docs/classes/expressions_polynomexp.PolynomExpProduct.html +285 -1
- package/docs/classes/geometry_circle.Circle.html +476 -3
- package/docs/classes/geometry_line.Line.html +719 -3
- package/docs/classes/geometry_triangle.Triangle.html +417 -14
- package/docs/classes/numeric.Numeric.html +263 -14
- package/docs/classes/shutingyard.Shutingyard.html +246 -16
- package/docs/enums/algebra_equation.PARTICULAR_SOLUTION.html +88 -1
- package/docs/enums/geometry_line.LinePropriety.html +102 -1
- package/docs/enums/shutingyard.ShutingyardMode.html +102 -1
- package/docs/enums/shutingyard.ShutingyardType.html +116 -1
- package/docs/index.html +56 -2
- package/docs/interfaces/algebra_equation.ISolution.html +109 -3
- package/docs/interfaces/algebra_polynom.IEuclidian.html +92 -1
- package/docs/interfaces/geometry_triangle.remarquableLines.html +150 -1
- package/docs/modules/Logicalset.html +74 -3
- package/docs/modules/Polynom.html +74 -3
- package/docs/modules/Vector-1.html +74 -0
- package/docs/modules/Vector.html +74 -3
- package/docs/modules/algebra_equation.html +81 -1
- package/docs/modules/algebra_linearSystem.html +71 -1
- package/docs/modules/algebra_monom.html +76 -1
- package/docs/modules/algebra_polynom.html +81 -1
- package/docs/modules/coefficients_fraction.html +76 -1
- package/docs/modules/expressions_numexp.html +71 -1
- package/docs/modules/expressions_polynomexp.html +73 -1
- package/docs/modules/geometry_circle.html +71 -1
- package/docs/modules/geometry_line.html +76 -1
- package/docs/modules/geometry_triangle.html +76 -1
- package/docs/modules/numeric.html +71 -1
- package/docs/modules/shutingyard.html +90 -1
- package/docs/modules.html +76 -1
- package/docs/types/algebra_monom.literalType.html +70 -0
- package/docs/types/algebra_polynom.PolynomParsingType.html +66 -0
- package/docs/types/coefficients_fraction.FractionParsingType.html +65 -0
- package/docs/types/shutingyard.Token.html +76 -0
- package/docs/types/shutingyard.tokenType.html +81 -0
- package/docs/variables/shutingyard.tokenConstant.html +74 -0
- package/esm/index.js.map +1 -1
- package/esm/maths/geometry/line.d.ts +21 -17
- package/esm/maths/geometry/line.js +68 -40
- package/esm/maths/geometry/line.js.map +1 -1
- package/esm/maths/geometry/point.d.ts +2 -0
- package/esm/maths/geometry/point.js +3 -0
- package/esm/maths/geometry/point.js.map +1 -1
- package/esm/maths/geometry/vector.d.ts +3 -1
- package/esm/maths/geometry/vector.js +6 -4
- package/esm/maths/geometry/vector.js.map +1 -1
- package/esm/maths/randomization/random.d.ts +3 -1
- package/esm/maths/randomization/random.js +5 -0
- package/esm/maths/randomization/random.js.map +1 -1
- package/esm/maths/randomization/rndGeometryLine.js.map +1 -1
- package/esm/maths/randomization/rndGeometryPoint.d.ts +12 -0
- package/esm/maths/randomization/rndGeometryPoint.js +61 -0
- package/esm/maths/randomization/rndGeometryPoint.js.map +1 -0
- package/esm/maths/randomization/rndTypes.d.ts +6 -0
- package/package.json +8 -8
- package/src/index.ts +1 -0
- package/src/maths/geometry/line.ts +116 -76
- package/src/maths/geometry/point.ts +4 -0
- package/src/maths/geometry/vector.ts +8 -5
- package/src/maths/randomization/random.ts +14 -1
- package/src/maths/randomization/rndGeometryLine.ts +5 -6
- package/src/maths/randomization/rndGeometryPoint.ts +69 -0
- package/src/maths/randomization/rndTypes.ts +8 -0
- package/tests/geometry/line.test.ts +13 -0
- package/docs/assets/icons.css +0 -1043
- package/docs/assets/icons.png +0 -0
- package/docs/assets/icons@2x.png +0 -0
- package/docs/assets/widgets.png +0 -0
- package/docs/assets/widgets@2x.png +0 -0
- package/docs/classes/Logicalset.Logicalset-1.html +0 -5
- package/docs/classes/Vector.Vector-1.html +0 -1
- package/docs/classes/coefficients_nthroot.NthRoot.html +0 -3
- package/docs/modules/coefficients_nthroot.html +0 -1
|
@@ -10,6 +10,7 @@ const numeric_1 = require("../numeric");
|
|
|
10
10
|
const fraction_1 = require("../coefficients/fraction");
|
|
11
11
|
const equation_1 = require("../algebra/equation");
|
|
12
12
|
const polynom_1 = require("../algebra/polynom");
|
|
13
|
+
const random_1 = require("../randomization/random");
|
|
13
14
|
var LinePropriety;
|
|
14
15
|
(function (LinePropriety) {
|
|
15
16
|
LinePropriety[LinePropriety["None"] = 0] = "None";
|
|
@@ -19,6 +20,24 @@ var LinePropriety;
|
|
|
19
20
|
})(LinePropriety = exports.LinePropriety || (exports.LinePropriety = {}));
|
|
20
21
|
class Line {
|
|
21
22
|
constructor(...values) {
|
|
23
|
+
this.randomPoint = (k) => {
|
|
24
|
+
// Return a random point on the line.
|
|
25
|
+
return this._d
|
|
26
|
+
.clone()
|
|
27
|
+
.multiplyByScalar(random_1.Random.numberSym((k === undefined || k <= 1) ? 3 : k, false))
|
|
28
|
+
.add(this._OA.asVector)
|
|
29
|
+
.asPoint;
|
|
30
|
+
};
|
|
31
|
+
this.randomNearPoint = (k) => {
|
|
32
|
+
let pt = this.randomPoint(k);
|
|
33
|
+
let maxIterationTest = 10;
|
|
34
|
+
while (this.isOnLine(pt) && maxIterationTest > 0) {
|
|
35
|
+
pt.x.add(random_1.Random.numberSym(1, false));
|
|
36
|
+
pt.y.add(random_1.Random.numberSym(1, false));
|
|
37
|
+
maxIterationTest--;
|
|
38
|
+
}
|
|
39
|
+
return pt;
|
|
40
|
+
};
|
|
22
41
|
// ------------------------------------------
|
|
23
42
|
// Creation / parsing functions
|
|
24
43
|
// ------------------------------------------
|
|
@@ -173,13 +192,24 @@ class Line {
|
|
|
173
192
|
// ------------------------------------------
|
|
174
193
|
// Mathematical operations
|
|
175
194
|
// ------------------------------------------
|
|
176
|
-
this.
|
|
195
|
+
this.isOnLine = (pt) => {
|
|
196
|
+
return this._a.clone()
|
|
197
|
+
.multiply(pt.x)
|
|
198
|
+
.add(this._b.clone()
|
|
199
|
+
.multiply(pt.y))
|
|
200
|
+
.add(this._c)
|
|
201
|
+
.isZero();
|
|
202
|
+
};
|
|
203
|
+
this.isParallelTo = (line) => {
|
|
177
204
|
// Do they have the isSame direction ?
|
|
178
205
|
return this.slope.isEqual(line.slope) && this.height.isNotEqual(line.height);
|
|
179
206
|
};
|
|
180
207
|
this.isSameAs = (line) => {
|
|
181
208
|
return this.slope.isEqual(line.slope) && this.height.isEqual(line.height);
|
|
182
209
|
};
|
|
210
|
+
this.isPerpendicularTo = (line) => {
|
|
211
|
+
return this.d.isNormalTo(line.d);
|
|
212
|
+
};
|
|
183
213
|
this.isVertical = () => {
|
|
184
214
|
return this.slope.isInfinity();
|
|
185
215
|
};
|
|
@@ -211,7 +241,7 @@ class Line {
|
|
|
211
241
|
if (this._b.isZero() || line.b.isZero()) {
|
|
212
242
|
// TODO : handle no y in the line canonical form
|
|
213
243
|
}
|
|
214
|
-
if (this.
|
|
244
|
+
if (this.isParallelTo(line)) {
|
|
215
245
|
Pt.x = null;
|
|
216
246
|
Pt.y = null;
|
|
217
247
|
isParallel = true;
|
|
@@ -254,11 +284,44 @@ class Line {
|
|
|
254
284
|
}
|
|
255
285
|
return this;
|
|
256
286
|
}
|
|
257
|
-
get
|
|
258
|
-
return this.
|
|
287
|
+
get a() {
|
|
288
|
+
return this._a;
|
|
289
|
+
}
|
|
290
|
+
set a(value) {
|
|
291
|
+
this._a = value;
|
|
292
|
+
}
|
|
293
|
+
get b() {
|
|
294
|
+
return this._b;
|
|
295
|
+
}
|
|
296
|
+
set b(value) {
|
|
297
|
+
this._b = value;
|
|
298
|
+
}
|
|
299
|
+
get c() {
|
|
300
|
+
return this._c;
|
|
259
301
|
}
|
|
260
302
|
// ------------------------------------------
|
|
261
303
|
// Getter and setter
|
|
304
|
+
set c(value) {
|
|
305
|
+
this._c = value;
|
|
306
|
+
}
|
|
307
|
+
get OA() {
|
|
308
|
+
return this._OA;
|
|
309
|
+
}
|
|
310
|
+
set OA(value) {
|
|
311
|
+
this._OA = value;
|
|
312
|
+
}
|
|
313
|
+
get d() {
|
|
314
|
+
return this._d;
|
|
315
|
+
}
|
|
316
|
+
set d(value) {
|
|
317
|
+
this._d = value;
|
|
318
|
+
}
|
|
319
|
+
get n() {
|
|
320
|
+
return this._n;
|
|
321
|
+
}
|
|
322
|
+
get exists() {
|
|
323
|
+
return this._exists;
|
|
324
|
+
}
|
|
262
325
|
// ------------------------------------------
|
|
263
326
|
get equation() {
|
|
264
327
|
return new equation_1.Equation(new polynom_1.Polynom().parse('xy', this._a, this._b, this._c), new polynom_1.Polynom('0')).simplify();
|
|
@@ -268,14 +331,11 @@ class Line {
|
|
|
268
331
|
// mxh => y = -a/b x - c/b
|
|
269
332
|
// parametric => (xy) = OA + k*d
|
|
270
333
|
// equation => ax + by = -c
|
|
271
|
-
console.log('BEFORE', this.equation.tex);
|
|
272
334
|
let canonical = this.equation.clone().reorder(true);
|
|
273
|
-
console.log('CANONCIAL', canonical.tex);
|
|
274
335
|
// Make sur the first item is positive.
|
|
275
336
|
if (this._a.isNegative()) {
|
|
276
337
|
canonical.multiply(-1);
|
|
277
338
|
}
|
|
278
|
-
console.log('CANONCIAL (multiply)', canonical.tex);
|
|
279
339
|
const d = this._d.clone().simplifyDirection();
|
|
280
340
|
return {
|
|
281
341
|
canonical: canonical.tex,
|
|
@@ -299,45 +359,12 @@ class Line {
|
|
|
299
359
|
parametric: ""
|
|
300
360
|
};
|
|
301
361
|
}
|
|
302
|
-
get a() {
|
|
303
|
-
return this._a;
|
|
304
|
-
}
|
|
305
|
-
set a(value) {
|
|
306
|
-
this._a = value;
|
|
307
|
-
}
|
|
308
|
-
get b() {
|
|
309
|
-
return this._b;
|
|
310
|
-
}
|
|
311
|
-
set b(value) {
|
|
312
|
-
this._b = value;
|
|
313
|
-
}
|
|
314
|
-
get c() {
|
|
315
|
-
return this._c;
|
|
316
|
-
}
|
|
317
|
-
set c(value) {
|
|
318
|
-
this._c = value;
|
|
319
|
-
}
|
|
320
|
-
get OA() {
|
|
321
|
-
return this._OA;
|
|
322
|
-
}
|
|
323
|
-
set OA(value) {
|
|
324
|
-
this._OA = value;
|
|
325
|
-
}
|
|
326
|
-
get d() {
|
|
327
|
-
return this._d;
|
|
328
|
-
}
|
|
329
|
-
get n() {
|
|
330
|
-
return this._n;
|
|
331
|
-
}
|
|
332
362
|
get normal() {
|
|
333
363
|
return new vector_1.Vector(this._a, this._b);
|
|
334
364
|
}
|
|
335
365
|
get director() {
|
|
336
366
|
return this._d.clone();
|
|
337
367
|
}
|
|
338
|
-
set d(value) {
|
|
339
|
-
this._d = value;
|
|
340
|
-
}
|
|
341
368
|
get slope() {
|
|
342
369
|
return this._a.clone().opposed().divide(this._b);
|
|
343
370
|
}
|
|
@@ -419,6 +446,7 @@ class Line {
|
|
|
419
446
|
}
|
|
420
447
|
}
|
|
421
448
|
exports.Line = Line;
|
|
449
|
+
// A line is defined as the canonical form
|
|
422
450
|
Line.PERPENDICULAR = LinePropriety.Perpendicular;
|
|
423
451
|
Line.PARALLEL = LinePropriety.Parallel;
|
|
424
452
|
//# sourceMappingURL=line.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line.js","sourceRoot":"","sources":["../../../src/maths/geometry/line.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"line.js","sourceRoot":"","sources":["../../../src/maths/geometry/line.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* @module Vector
|
|
4
4
|
*/
|
|
5
5
|
import { Line } from "./line";
|
|
6
|
+
import { Vector } from "./vector";
|
|
6
7
|
import { Fraction } from "../coefficients/fraction";
|
|
7
8
|
export declare class Point {
|
|
8
9
|
private _x;
|
|
@@ -15,6 +16,7 @@ export declare class Point {
|
|
|
15
16
|
set y(value: Fraction);
|
|
16
17
|
get tex(): string;
|
|
17
18
|
get display(): string;
|
|
19
|
+
get asVector(): Vector;
|
|
18
20
|
parse: (...values: unknown[]) => Point;
|
|
19
21
|
clone: () => Point;
|
|
20
22
|
zero: () => Point;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"point.js","sourceRoot":"","sources":["../../../src/maths/geometry/point.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,iCAA4B;AAC5B,qCAAgC;AAChC,uDAAkD;AAElD;;GAEG;AACH,MAAM,OAAO;CAGZ;AAED,MAAa,KAAK;IAKd,YAAY,GAAG,MAAiB;
|
|
1
|
+
{"version":3,"file":"point.js","sourceRoot":"","sources":["../../../src/maths/geometry/point.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* @module Vector
|
|
4
4
|
*/
|
|
5
5
|
import { Fraction } from "../coefficients/fraction";
|
|
6
|
+
import { Point } from "./point";
|
|
6
7
|
export declare class Vector {
|
|
7
8
|
private _x;
|
|
8
9
|
private _y;
|
|
@@ -14,6 +15,7 @@ export declare class Vector {
|
|
|
14
15
|
get normSquare(): Fraction;
|
|
15
16
|
get norm(): number;
|
|
16
17
|
get tex(): string;
|
|
18
|
+
get asPoint(): Point;
|
|
17
19
|
parse: (...values: any) => Vector;
|
|
18
20
|
clone: () => Vector;
|
|
19
21
|
reset: () => Vector;
|
|
@@ -24,7 +26,7 @@ export declare class Vector {
|
|
|
24
26
|
add: (V: Vector) => Vector;
|
|
25
27
|
subtract: (V: Vector) => Vector;
|
|
26
28
|
scalarProductWithVector: (V: Vector) => Fraction;
|
|
27
|
-
static scalarProduct: (v1: Vector, v2: Vector) =>
|
|
29
|
+
static scalarProduct: (v1: Vector, v2: Vector) => Fraction;
|
|
28
30
|
normal: () => Vector;
|
|
29
31
|
isNormalTo: (v: Vector) => boolean;
|
|
30
32
|
get isNull(): boolean;
|
|
@@ -102,8 +102,8 @@ class Vector {
|
|
|
102
102
|
return this.add(V.clone().opposed());
|
|
103
103
|
};
|
|
104
104
|
this.scalarProductWithVector = (V) => {
|
|
105
|
-
|
|
106
|
-
return this._x.clone().multiply(V.x).add(this._y.clone().multiply(V.y));
|
|
105
|
+
return Vector.scalarProduct(this, V);
|
|
106
|
+
// return this._x.clone().multiply(V.x).add(this._y.clone().multiply(V.y));
|
|
107
107
|
};
|
|
108
108
|
this.normal = () => {
|
|
109
109
|
let x = this.x.clone().opposed(), y = this.y.clone();
|
|
@@ -175,13 +175,15 @@ class Vector {
|
|
|
175
175
|
get tex() {
|
|
176
176
|
return `\\begin{pmatrix}${this._x.tex} \\\\\ ${this._y.tex} \\end{pmatrix}`;
|
|
177
177
|
}
|
|
178
|
+
get asPoint() {
|
|
179
|
+
return new point_1.Point(this.x, this.y);
|
|
180
|
+
}
|
|
178
181
|
get isNull() {
|
|
179
182
|
return this.x.isZero() && this.y.isZero();
|
|
180
183
|
}
|
|
181
184
|
}
|
|
182
185
|
exports.Vector = Vector;
|
|
183
186
|
Vector.scalarProduct = (v1, v2) => {
|
|
184
|
-
|
|
185
|
-
return v1.x.value * v2.x.value + v1.y.value * v2.y.value;
|
|
187
|
+
return v1.x.clone().multiply(v2.x).add(v1.y.clone().multiply(v2.y));
|
|
186
188
|
};
|
|
187
189
|
//# sourceMappingURL=vector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/maths/geometry/vector.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uDAAkD;AAClD,wCAAmC;AACnC,mCAA8B;AAE9B,MAAa,MAAM;IAIf,YAAY,GAAG,MAAiB;
|
|
1
|
+
{"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/maths/geometry/vector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { randomCoefficientConfig, randomGeometryLineConfig, randomMonomConfig, randomPolynomConfig } from "./rndTypes";
|
|
1
|
+
import { randomCoefficientConfig, randomGeometryLineConfig, randomGeometryPointConfig, randomMonomConfig, randomPolynomConfig } from "./rndTypes";
|
|
2
2
|
import { Polynom } from "../algebra/polynom";
|
|
3
3
|
import { Monom } from "../algebra/monom";
|
|
4
4
|
import { Fraction } from "../coefficients/fraction";
|
|
5
5
|
import { Line } from "../geometry/line";
|
|
6
|
+
import { Point } from "../geometry/point";
|
|
6
7
|
export * from "./rndTypes";
|
|
7
8
|
export declare namespace Random {
|
|
8
9
|
function polynom(config?: randomPolynomConfig): Polynom;
|
|
@@ -17,5 +18,6 @@ export declare namespace Random {
|
|
|
17
18
|
function shuffle(arr: any[]): any[];
|
|
18
19
|
namespace Geometry {
|
|
19
20
|
function line(config?: randomGeometryLineConfig): Line;
|
|
21
|
+
function point(config?: randomGeometryPointConfig): Point;
|
|
20
22
|
}
|
|
21
23
|
}
|
|
@@ -20,6 +20,7 @@ const rndMonom_1 = require("./rndMonom");
|
|
|
20
20
|
const rndHelpers_1 = require("./rndHelpers");
|
|
21
21
|
const rndFraction_1 = require("./rndFraction");
|
|
22
22
|
const rndGeometryLine_1 = require("./rndGeometryLine");
|
|
23
|
+
const rndGeometryPoint_1 = require("./rndGeometryPoint");
|
|
23
24
|
__exportStar(require("./rndTypes"), exports);
|
|
24
25
|
var Random;
|
|
25
26
|
(function (Random) {
|
|
@@ -69,6 +70,10 @@ var Random;
|
|
|
69
70
|
return (new rndGeometryLine_1.rndGeometryLine(config).generate());
|
|
70
71
|
}
|
|
71
72
|
Geometry.line = line;
|
|
73
|
+
function point(config) {
|
|
74
|
+
return (new rndGeometryPoint_1.rndGeometryPoint(config).generate());
|
|
75
|
+
}
|
|
76
|
+
Geometry.point = point;
|
|
72
77
|
})(Geometry = Random.Geometry || (Random.Geometry = {}));
|
|
73
78
|
})(Random = exports.Random || (exports.Random = {}));
|
|
74
79
|
//# sourceMappingURL=random.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"random.js","sourceRoot":"","sources":["../../../src/maths/randomization/random.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAAwC;AACxC,yCAAoC;AACpC,6CAAwC;
|
|
1
|
+
{"version":3,"file":"random.js","sourceRoot":"","sources":["../../../src/maths/randomization/random.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAAwC;AACxC,yCAAoC;AACpC,6CAAwC;AAQxC,+CAA0C;AAK1C,uDAAkD;AAElD,yDAAoD;AAEpD,6CAA0B;AAE1B,IAAiB,MAAM,CAmDtB;AAnDD,WAAiB,MAAM;IACnB,SAAgB,OAAO,CAAC,MAA4B;QAChD,OAAO,CAAC,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC9C,CAAC;IAFe,cAAO,UAEtB,CAAA;IAED,SAAgB,KAAK,CAAC,MAA0B;QAC5C,OAAO,CAAC,IAAI,mBAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC5C,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,QAAQ,CAAC,MAAgC;QACrD,OAAO,CAAC,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC/C,CAAC;IAFe,eAAQ,WAEvB,CAAA;IAED,SAAgB,MAAM,CAAC,IAAY,EAAE,EAAU;QAC3C,OAAO,uBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;IAFe,aAAM,SAErB,CAAA;IAED,SAAgB,SAAS,CAAC,GAAW,EAAE,SAAmB;QACtD,OAAO,uBAAU,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAClD,CAAC;IAFe,gBAAS,YAExB,CAAA;IAED,SAAgB,KAAK,CAAC,GAAW;QAC7B,OAAO,uBAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACtC,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,IAAI,CAAC,OAAgB;QACjC,OAAO,uBAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC;IAFe,WAAI,OAEnB,CAAA;IAED,SAAgB,KAAK,CAAC,GAAU,EAAE,MAAe;QAC7C,OAAO,uBAAU,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC9C,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,IAAI,CAAC,GAAU;QAC3B,OAAO,uBAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;IAFe,WAAI,OAEnB,CAAA;IAED,SAAgB,OAAO,CAAC,GAAU;QAC9B,OAAO,uBAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IACvC,CAAC;IAFe,cAAO,UAEtB,CAAA;IAED,IAAiB,QAAQ,CASxB;IATD,WAAiB,QAAQ;QACrB,SAAgB,IAAI,CAAC,MAAiC;YAClD,OAAO,CAAC,IAAI,iCAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QACnD,CAAC;QAFe,aAAI,OAEnB,CAAA;QAED,SAAgB,KAAK,CAAC,MAAkC;YACpD,OAAO,CAAC,IAAI,mCAAgB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QACpD,CAAC;QAFe,cAAK,QAEpB,CAAA;IAEL,CAAC,EATgB,QAAQ,GAAR,eAAQ,KAAR,eAAQ,QASxB;AACL,CAAC,EAnDgB,MAAM,GAAN,cAAM,KAAN,cAAM,QAmDtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rndGeometryLine.js","sourceRoot":"","sources":["../../../src/maths/randomization/rndGeometryLine.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AACxC,qCAA0D;AAC1D,2CAAsC;AACtC,+CAA0C;
|
|
1
|
+
{"version":3,"file":"rndGeometryLine.js","sourceRoot":"","sources":["../../../src/maths/randomization/rndGeometryLine.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AACxC,qCAA0D;AAC1D,2CAAsC;AACtC,+CAA0C;AAC1C,6CAAwC;AAExC;;GAEG;AACH,MAAa,eAAgB,SAAQ,uBAAU;IAI3C,YAAY,UAAqC;QAC7C,KAAK,EAAE,CAAC;QAcZ,aAAQ,GAAG,GAAS,EAAE;YAClB,sBAAsB;YACtB,MAAM,CAAC,GAAG,IAAI,eAAM,CAChB,eAAM,CAAC,SAAS,CAAC,EAAE,CAAC,EACpB,eAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CACvB,CAAA;YAED,OAAO,CAAC,CAAC,MAAM,EAAE;gBACb,CAAC,CAAC,CAAC,GAAG,eAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;gBAC1B,CAAC,CAAC,CAAC,GAAG,eAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;aAC7B;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE;gBAC1B,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC3B,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;iBAChB;aACJ;iBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC3B,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;iBAChB;aACJ;YAED,OAAO,IAAI,WAAI,CAAC,IAAI,aAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACrE,CAAC,CAAA;QAnCG,IAAI,CAAC,cAAc,GAAG;YAClB,CAAC,EAAE;gBACC,CAAC,EAAE,eAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvB,CAAC,EAAE,eAAM,CAAC,SAAS,CAAC,EAAE,CAAC;aAC1B;SACJ,CAAA;QAED,uCAAuC;QACvC,aAAa;QACb,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;IACpE,CAAC;CA0BJ;AA3CD,0CA2CC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { randomCore } from "./randomCore";
|
|
2
|
+
import { randomGeometryPointConfig } from "./random";
|
|
3
|
+
import { Point } from "../geometry/point";
|
|
4
|
+
/**
|
|
5
|
+
* Create a random monom based on a based configuration
|
|
6
|
+
*/
|
|
7
|
+
export declare class rndGeometryPoint extends randomCore {
|
|
8
|
+
protected _config: randomGeometryPointConfig;
|
|
9
|
+
protected _defaultConfig: randomGeometryPointConfig;
|
|
10
|
+
constructor(userConfig?: randomGeometryPointConfig);
|
|
11
|
+
generate: () => Point;
|
|
12
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rndGeometryPoint = void 0;
|
|
4
|
+
const randomCore_1 = require("./randomCore");
|
|
5
|
+
const random_1 = require("./random");
|
|
6
|
+
const point_1 = require("../geometry/point");
|
|
7
|
+
const fraction_1 = require("../coefficients/fraction");
|
|
8
|
+
/**
|
|
9
|
+
* Create a random monom based on a based configuration
|
|
10
|
+
*/
|
|
11
|
+
class rndGeometryPoint extends randomCore_1.randomCore {
|
|
12
|
+
constructor(userConfig) {
|
|
13
|
+
super();
|
|
14
|
+
this.generate = () => {
|
|
15
|
+
let x, y, zeroX = this._config.axis === true || this._config.axis === 'x', zeroY = this._config.axis === true || this._config.axis === 'y';
|
|
16
|
+
x = this._config.fraction ?
|
|
17
|
+
random_1.Random.fraction({ max: this._config.max, zero: zeroX }) :
|
|
18
|
+
new fraction_1.Fraction(random_1.Random.numberSym(this._config.max, zeroX));
|
|
19
|
+
y = this._config.fraction ?
|
|
20
|
+
random_1.Random.fraction({ max: this._config.max, zero: zeroY }) :
|
|
21
|
+
new fraction_1.Fraction(random_1.Random.numberSym(this._config.max, zeroY));
|
|
22
|
+
if (+this._config.quadrant === 1) {
|
|
23
|
+
x.abs();
|
|
24
|
+
y.abs();
|
|
25
|
+
}
|
|
26
|
+
if (+this._config.quadrant === 2) {
|
|
27
|
+
if (x.isPositive()) {
|
|
28
|
+
x.opposed();
|
|
29
|
+
}
|
|
30
|
+
if (y.isNegative()) {
|
|
31
|
+
y.opposed();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (+this._config.quadrant === 3) {
|
|
35
|
+
if (x.isPositive()) {
|
|
36
|
+
x.opposed();
|
|
37
|
+
}
|
|
38
|
+
if (y.isPositive()) {
|
|
39
|
+
y.opposed();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (+this._config.quadrant === 4) {
|
|
43
|
+
if (x.isNegative()) {
|
|
44
|
+
x.opposed();
|
|
45
|
+
}
|
|
46
|
+
if (y.isPositive()) {
|
|
47
|
+
y.opposed();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return new point_1.Point(x, y);
|
|
51
|
+
};
|
|
52
|
+
this._defaultConfig = {
|
|
53
|
+
axis: true,
|
|
54
|
+
fraction: false,
|
|
55
|
+
max: 10
|
|
56
|
+
};
|
|
57
|
+
this._config = this.mergeConfig(userConfig, this._defaultConfig);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.rndGeometryPoint = rndGeometryPoint;
|
|
61
|
+
//# sourceMappingURL=rndGeometryPoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rndGeometryPoint.js","sourceRoot":"","sources":["../../../src/maths/randomization/rndGeometryPoint.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AACxC,qCAA2D;AAC3D,6CAAwC;AACxC,uDAAkD;AAElD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,uBAAU;IAI5C,YAAY,UAAsC;QAC9C,KAAK,EAAE,CAAC;QAWZ,aAAQ,GAAG,GAAU,EAAE;YACnB,IAAI,CAAW,EAAE,CAAW,EACxB,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,GAAG,EAC/D,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,GAAG,CAAA;YAEnE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACvB,eAAM,CAAC,QAAQ,CAAC,EAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;gBACvD,IAAI,mBAAQ,CAAC,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;YAE3D,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACvB,eAAM,CAAC,QAAQ,CAAC,EAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;gBACvD,IAAI,mBAAQ,CAAC,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;YAE3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE;gBAC9B,CAAC,CAAC,GAAG,EAAE,CAAA;gBACP,CAAC,CAAC,GAAG,EAAE,CAAA;aACV;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE;gBAC9B,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBAChB,CAAC,CAAC,OAAO,EAAE,CAAA;iBACd;gBACD,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBAChB,CAAC,CAAC,OAAO,EAAE,CAAA;iBACd;aACJ;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE;gBAC9B,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBAChB,CAAC,CAAC,OAAO,EAAE,CAAA;iBACd;gBACD,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBAChB,CAAC,CAAC,OAAO,EAAE,CAAA;iBACd;aACJ;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE;gBAC9B,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBAChB,CAAC,CAAC,OAAO,EAAE,CAAA;iBACd;gBACD,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBAChB,CAAC,CAAC,OAAO,EAAE,CAAA;iBACd;aACJ;YAED,OAAO,IAAI,aAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC1B,CAAC,CAAA;QApDG,IAAI,CAAC,cAAc,GAAG;YAClB,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,KAAK;YACf,GAAG,EAAE,EAAE;SACV,CAAA;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;IACpE,CAAC;CA8CJ;AA5DD,4CA4DC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pimath",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.115",
|
|
4
4
|
"description": "A math library for teacher :)",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "mocha -r ts-node/register 'tests/**/*.test.ts'",
|
|
@@ -17,18 +17,18 @@
|
|
|
17
17
|
"devDependencies": {
|
|
18
18
|
"@types/chai": "*",
|
|
19
19
|
"@types/mocha": "*",
|
|
20
|
-
"@types/node": "^18.
|
|
21
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
22
|
-
"@typescript-eslint/parser": "^5.
|
|
20
|
+
"@types/node": "^18.14.5",
|
|
21
|
+
"@typescript-eslint/eslint-plugin": "^5.54.0",
|
|
22
|
+
"@typescript-eslint/parser": "^5.54.0",
|
|
23
23
|
"chai": "*",
|
|
24
24
|
"mocha": "*",
|
|
25
|
-
"eslint": "^8.
|
|
25
|
+
"eslint": "^8.35.0",
|
|
26
26
|
"ts-loader": "^9.4.2",
|
|
27
27
|
"ts-node": "^10.9.1",
|
|
28
|
-
"typedoc": "^0.23.
|
|
29
|
-
"typescript": "4.9.
|
|
28
|
+
"typedoc": "^0.23.26",
|
|
29
|
+
"typescript": "4.9.5",
|
|
30
30
|
"webpack": "^5.75.0",
|
|
31
|
-
"webpack-bundle-analyzer": "^4.
|
|
31
|
+
"webpack-bundle-analyzer": "^4.8.0",
|
|
32
32
|
"webpack-cli": "^5.0.1"
|
|
33
33
|
}
|
|
34
34
|
}
|