pimath 0.0.133 → 0.1.0
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/pimath.js +2888 -3590
- package/package.json +38 -20
- package/types/algebra/equation.d.ts +102 -0
- package/types/algebra/equation.d.ts.map +1 -0
- package/types/algebra/equationSolver.d.ts +10 -0
- package/types/algebra/equationSolver.d.ts.map +1 -0
- package/types/algebra/factor.d.ts +46 -0
- package/types/algebra/factor.d.ts.map +1 -0
- package/types/algebra/linearSystem.d.ts +37 -0
- package/types/algebra/linearSystem.d.ts.map +1 -0
- package/{dist/maths → types}/algebra/monom.d.ts +95 -133
- package/types/algebra/monom.d.ts.map +1 -0
- package/types/algebra/polyFactor.d.ts +43 -0
- package/types/algebra/polyFactor.d.ts.map +1 -0
- package/types/algebra/polynom.d.ts +107 -0
- package/types/algebra/polynom.d.ts.map +1 -0
- package/types/algebra/rational.d.ts +41 -0
- package/types/algebra/rational.d.ts.map +1 -0
- package/{dist/maths → types}/coefficients/fraction.d.ts +69 -67
- package/types/coefficients/fraction.d.ts.map +1 -0
- package/{dist/maths → types}/coefficients/nthRoot.d.ts +4 -7
- package/types/coefficients/nthRoot.d.ts.map +1 -0
- package/{dist/maths → types}/geometry/circle.d.ts +14 -21
- package/types/geometry/circle.d.ts.map +1 -0
- package/types/geometry/geomMath.d.ts +9 -0
- package/types/geometry/geomMath.d.ts.map +1 -0
- package/types/geometry/line.d.ts +83 -0
- package/types/geometry/line.d.ts.map +1 -0
- package/types/geometry/line3.d.ts +58 -0
- package/types/geometry/line3.d.ts.map +1 -0
- package/types/geometry/matrix.d.ts +12 -0
- package/types/geometry/matrix.d.ts.map +1 -0
- package/types/geometry/plane3.d.ts +36 -0
- package/types/geometry/plane3.d.ts.map +1 -0
- package/types/geometry/point.d.ts +12 -0
- package/types/geometry/point.d.ts.map +1 -0
- package/{dist/maths → types}/geometry/triangle.d.ts +11 -34
- package/types/geometry/triangle.d.ts.map +1 -0
- package/types/geometry/vector.d.ts +55 -0
- package/types/geometry/vector.d.ts.map +1 -0
- package/types/geometry/vector3d.d.ts +37 -0
- package/types/geometry/vector3d.d.ts.map +1 -0
- package/types/helpers.d.ts +3 -0
- package/types/helpers.d.ts.map +1 -0
- package/types/index.d.ts +59 -0
- package/types/index.d.ts.map +1 -0
- package/types/numeric.d.ts +39 -0
- package/types/pimath.interface.d.ts +57 -0
- package/types/pimath.interface.d.ts.map +1 -0
- package/types/randomization/algebra/rndEquation.d.ts +4 -0
- package/types/randomization/algebra/rndEquation.d.ts.map +1 -0
- package/types/randomization/algebra/rndMonom.d.ts +4 -0
- package/types/randomization/algebra/rndMonom.d.ts.map +1 -0
- package/types/randomization/algebra/rndPolynom.d.ts +5 -0
- package/types/randomization/algebra/rndPolynom.d.ts.map +1 -0
- package/types/randomization/coefficient/rndFraction.d.ts +4 -0
- package/types/randomization/coefficient/rndFraction.d.ts.map +1 -0
- package/types/randomization/geometry/rndCircle.d.ts +4 -0
- package/types/randomization/geometry/rndCircle.d.ts.map +1 -0
- package/types/randomization/geometry/rndLine.d.ts +4 -0
- package/types/randomization/geometry/rndLine.d.ts.map +1 -0
- package/types/randomization/geometry/rndLine3.d.ts +4 -0
- package/types/randomization/geometry/rndLine3.d.ts.map +1 -0
- package/types/randomization/geometry/rndPoint.d.ts +4 -0
- package/types/randomization/geometry/rndPoint.d.ts.map +1 -0
- package/types/randomization/random.d.ts +20 -0
- package/types/randomization/random.d.ts.map +1 -0
- package/types/randomization/rndHelpers.d.ts +21 -0
- package/types/randomization/rndTypes.d.ts +64 -0
- package/types/randomization/rndTypes.d.ts.map +1 -0
- package/dist/main.d.ts +0 -39
- package/dist/maths/algebra/equation.d.ts +0 -120
- package/dist/maths/algebra/linearSystem.d.ts +0 -40
- package/dist/maths/algebra/logicalset.d.ts +0 -28
- package/dist/maths/algebra/polynom.d.ts +0 -155
- package/dist/maths/algebra/rational.d.ts +0 -44
- package/dist/maths/algebra/study/rationalStudy.d.ts +0 -14
- package/dist/maths/algebra/study.d.ts +0 -140
- package/dist/maths/geometry/line.d.ts +0 -102
- package/dist/maths/geometry/point.d.ts +0 -36
- package/dist/maths/geometry/vector.d.ts +0 -38
- package/dist/maths/numeric.d.ts +0 -28
- package/dist/maths/numexp.d.ts +0 -19
- package/dist/maths/randomization/random.d.ts +0 -26
- package/dist/maths/randomization/randomCore.d.ts +0 -7
- package/dist/maths/randomization/rndFraction.d.ts +0 -13
- package/dist/maths/randomization/rndGeometryCircle.d.ts +0 -13
- package/dist/maths/randomization/rndGeometryLine.d.ts +0 -13
- package/dist/maths/randomization/rndGeometryPoint.d.ts +0 -13
- package/dist/maths/randomization/rndHelpers.d.ts +0 -23
- package/dist/maths/randomization/rndMonom.d.ts +0 -13
- package/dist/maths/randomization/rndPolynom.d.ts +0 -14
- package/dist/maths/randomization/rndTypes.d.ts +0 -40
- package/dist/maths/shutingyard.d.ts +0 -59
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polyFactor.d.ts","sourceRoot":"","sources":["../../src/algebra/polyFactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACtH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,MAAM,EAAkB,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,qBAAa,UAAW,YACpB,aAAa,CAAC,UAAU,CAAC,EACzB,WAAW,CAAC,UAAU,CAAC,EACvB,QAAQ,CAAC,UAAU,CAAC;;gBAUR,GAAG,MAAM,EAAE,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,EAAE;IAQ/D,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,EAAE,GAAG,IAAI;IAmBvE,KAAK,IAAI,UAAU;IAInB,GAAG,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI;IAuBlC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ;IAIjC,UAAU,IAAI,IAAI;IAsBlB,OAAO,IAAI,OAAO;IAWlB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAK/B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ;IAU/G,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIpC,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;IASnC,KAAK,IAAI,OAAO;IAIhB,MAAM,IAAI,OAAO;IAIjB,QAAQ,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI;IAQvC,GAAG,IAAI,IAAI;IAKX,QAAQ,IAAI,IAAI;IAUhB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAKnC,SAAS,IAAI,UAAU;IAIvB,MAAM,IAAI,IAAI;IAgBd,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKzB,IAAI,IAAI,IAAI;IAMZ,IAAI,IAAI,IAAI;IAKZ,QAAQ,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI;IAIvC,IAAI,IAAI,IAAI;WAKL,GAAG,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU;IAiBtD,IAAW,OAAO,IAAI,MAAM,EAAE,CAE7B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAEjC;IAED,IAAW,SAAS,IAAI,MAAM,EAAE,CAG/B;IAED,IAAI,MAAM,IAAI,IAAI,CAGjB;IACD,IAAI,OAAO,IAAI,IAAI,CAGlB;IAED,IAAI,SAAS,IAAI,MAAM,EAAE,CAExB;IACD,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAW,OAAO,IAAI,MAAM,CA+B3B;IAED,IAAW,GAAG,IAAI,MAAM,CA+BvB;CA0BJ"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { IAlgebra, IAnalyse, IExpression, InputAlgebra, InputValue, IPiMathObject, ISolution, literalType } from '../pimath.interface';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Monom } from './monom';
|
|
4
|
+
|
|
5
|
+
export type PolynomParsingType = InputValue<Polynom> | Monom;
|
|
6
|
+
export interface IEuclidean {
|
|
7
|
+
quotient: Polynom;
|
|
8
|
+
reminder: Polynom;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Polynom class can handle polynoms, reorder, resolve, ...
|
|
12
|
+
* ```
|
|
13
|
+
* let P = new Polynom('3x-4')
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare class Polynom implements IPiMathObject<Polynom>, IExpression<Polynom>, IAnalyse<Polynom>, IAlgebra<Polynom> {
|
|
17
|
+
#private;
|
|
18
|
+
constructor(value: InputValue<Fraction>);
|
|
19
|
+
constructor(value: string);
|
|
20
|
+
constructor(value: Monom);
|
|
21
|
+
constructor(value: Polynom);
|
|
22
|
+
constructor(...values: InputValue<Fraction>[]);
|
|
23
|
+
constructor(...values: InputAlgebra<Polynom>[]);
|
|
24
|
+
/**
|
|
25
|
+
* Parse a string to a polynom.
|
|
26
|
+
* @param inputStr
|
|
27
|
+
* @param values
|
|
28
|
+
*/
|
|
29
|
+
parse: (inputStr: PolynomParsingType, ...values: InputAlgebra<Monom>[]) => this;
|
|
30
|
+
/**
|
|
31
|
+
* Clone the polynom
|
|
32
|
+
*/
|
|
33
|
+
clone: () => Polynom;
|
|
34
|
+
add: (...values: InputAlgebra<Polynom>[]) => Polynom;
|
|
35
|
+
commonMonom: () => Monom;
|
|
36
|
+
degree: (letter?: string) => Fraction;
|
|
37
|
+
derivative: (letter?: string) => Polynom;
|
|
38
|
+
divide: (value: InputAlgebra<Polynom>) => Polynom;
|
|
39
|
+
empty: () => this;
|
|
40
|
+
/**
|
|
41
|
+
* Divide the current polynom by another polynom.
|
|
42
|
+
* @param P
|
|
43
|
+
* returns {quotient: Polynom, reminder: Polynom}
|
|
44
|
+
*/
|
|
45
|
+
euclidean: (P: Polynom) => IEuclidean;
|
|
46
|
+
evaluate: (values: literalType<Fraction | number> | InputValue<Fraction>, asNumeric?: boolean) => Fraction | number;
|
|
47
|
+
/**
|
|
48
|
+
* Factorize a polynom and store the best results in factors.
|
|
49
|
+
* @param letter
|
|
50
|
+
*/
|
|
51
|
+
factorize: (letter?: string) => Polynom[];
|
|
52
|
+
gcdDenominator: () => number;
|
|
53
|
+
gcdNumerator: () => number;
|
|
54
|
+
getDenominators: () => number[];
|
|
55
|
+
getNumerators: () => number[];
|
|
56
|
+
getZeroes: () => ISolution[];
|
|
57
|
+
hasVariable(letter: string): boolean;
|
|
58
|
+
integrate: (a: InputValue<Fraction>, b: InputValue<Fraction>, letter?: string) => Fraction;
|
|
59
|
+
inverse(): Polynom | undefined;
|
|
60
|
+
isDeveloped: (polynomString: string) => boolean;
|
|
61
|
+
isDividableBy: (div: Polynom) => boolean;
|
|
62
|
+
isEqual: (P: Polynom) => boolean;
|
|
63
|
+
isOne(): boolean;
|
|
64
|
+
isOppositeAt: (P: Polynom) => boolean;
|
|
65
|
+
isReduced: (polynomString: string) => boolean;
|
|
66
|
+
isSameAs: (P: Polynom) => boolean;
|
|
67
|
+
isZero(): boolean;
|
|
68
|
+
lcmDenominator: () => number;
|
|
69
|
+
lcmNumerator: () => number;
|
|
70
|
+
letters: () => string[];
|
|
71
|
+
limitToInfinity: (letter?: string) => Fraction;
|
|
72
|
+
limitToNegativeInfinity: (letter?: string) => Fraction;
|
|
73
|
+
monomByDegree: (degree?: Fraction | number, letter?: string) => Monom;
|
|
74
|
+
monomByLetter: (letter: string) => Monom;
|
|
75
|
+
monomsByDegree: (degree?: number | Fraction, letter?: string) => Monom[];
|
|
76
|
+
multiply: (value: unknown) => Polynom;
|
|
77
|
+
one: () => this;
|
|
78
|
+
opposite: () => this;
|
|
79
|
+
pow: (nb: number) => Polynom;
|
|
80
|
+
primitive: (letter?: string) => Polynom;
|
|
81
|
+
reduce: () => Polynom;
|
|
82
|
+
reorder: (letter?: string, revert?: boolean) => this;
|
|
83
|
+
/**
|
|
84
|
+
* Replace a variable (letter) by a polynom.
|
|
85
|
+
* @param letter
|
|
86
|
+
* @param P
|
|
87
|
+
*/
|
|
88
|
+
replaceBy: (letter: string, P: Polynom) => this;
|
|
89
|
+
root(): Polynom;
|
|
90
|
+
sqrt(): Polynom;
|
|
91
|
+
subtract: (...values: InputAlgebra<Polynom>[]) => Polynom;
|
|
92
|
+
/**
|
|
93
|
+
* Set the polynom to zero.
|
|
94
|
+
* @returns {this}
|
|
95
|
+
*/
|
|
96
|
+
zero: () => this;
|
|
97
|
+
get display(): string;
|
|
98
|
+
get isMultiVariable(): boolean;
|
|
99
|
+
get length(): number;
|
|
100
|
+
get monoms(): Monom[];
|
|
101
|
+
set monoms(M: Monom[]);
|
|
102
|
+
get numberOfVars(): number;
|
|
103
|
+
get plotFunction(): string;
|
|
104
|
+
get tex(): string;
|
|
105
|
+
get variables(): string[];
|
|
106
|
+
get zeroes(): ISolution[];
|
|
107
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polynom.d.ts","sourceRoot":"","sources":["../../src/algebra/polynom.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { IAlgebra, IAnalyse, IExpression, InputAlgebra, InputValue, IPiMathObject, literalType } from '../pimath.interface';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Polynom } from './polynom';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Rational class can handle rational polynoms
|
|
7
|
+
*/
|
|
8
|
+
export declare class Rational implements IPiMathObject<Rational>, IExpression<Rational>, IAnalyse<Rational>, IAlgebra<Rational> {
|
|
9
|
+
#private;
|
|
10
|
+
constructor();
|
|
11
|
+
constructor(value: Rational);
|
|
12
|
+
constructor(numerator: InputAlgebra<Polynom>, denominator?: InputAlgebra<Polynom>);
|
|
13
|
+
get tex(): string;
|
|
14
|
+
get display(): string;
|
|
15
|
+
get numerator(): Polynom;
|
|
16
|
+
get denominator(): Polynom;
|
|
17
|
+
clone(): Rational;
|
|
18
|
+
parse(): Rational;
|
|
19
|
+
zero(): this;
|
|
20
|
+
one(): this;
|
|
21
|
+
add(value: InputValue<Rational>): Rational;
|
|
22
|
+
subtract(value: InputValue<Rational>): Rational;
|
|
23
|
+
opposite(): this;
|
|
24
|
+
multiply(value: InputValue<Rational>): this;
|
|
25
|
+
divide(value: InputValue<Rational>): this;
|
|
26
|
+
reduce(): Rational;
|
|
27
|
+
isEqual(value: InputValue<Rational>): boolean;
|
|
28
|
+
isZero(): boolean;
|
|
29
|
+
isOne(): boolean;
|
|
30
|
+
inverse(): this;
|
|
31
|
+
pow(value: number): Rational;
|
|
32
|
+
sqrt(): Rational | undefined;
|
|
33
|
+
root(): Rational | undefined;
|
|
34
|
+
derivative(): Rational | Rational[];
|
|
35
|
+
primitive(): Rational;
|
|
36
|
+
integrate(a: InputValue<Fraction>, b: InputValue<Rational>, letter?: string): Fraction;
|
|
37
|
+
get variables(): string[];
|
|
38
|
+
hasVariable(letter: string): boolean;
|
|
39
|
+
degree(): Fraction;
|
|
40
|
+
evaluate(values: literalType<Fraction | number> | InputValue<Fraction>, asNumeric?: boolean): Fraction | number | boolean;
|
|
41
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rational.d.ts","sourceRoot":"","sources":["../../src/algebra/rational.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAChI,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,qBAAa,QAAS,YAClB,aAAa,CAAC,QAAQ,CAAC,EACvB,WAAW,CAAC,QAAQ,CAAC,EACrB,QAAQ,CAAC,QAAQ,CAAC,EAClB,QAAQ,CAAC,QAAQ,CAAC;;;gBAMN,KAAK,EAAE,QAAQ;gBACf,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC;IAcjF,IAAI,GAAG,IAAI,MAAM,CAEhB;IACD,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IACD,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,KAAK,IAAI,QAAQ;IAOjB,KAAK,IAAI,QAAQ;IAIjB,IAAI,IAAI,IAAI;IAMZ,GAAG,IAAI,IAAI;IAOX,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ;IAI1C,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ;IAI/C,QAAQ,IAAI,IAAI;IAKhB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI;IAW3C,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI;IAIzC,MAAM,IAAI,QAAQ;IAGlB,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,OAAO;IAG7C,MAAM,IAAI,OAAO;IAGjB,KAAK,IAAI,OAAO;IAGhB,OAAO,IAAI,IAAI;IASf,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAe5B,IAAI,IAAI,QAAQ,GAAG,SAAS;IAI5B,IAAI,IAAI,QAAQ,GAAG,SAAS;IAI5B,UAAU,IAAI,QAAQ,GAAG,QAAQ,EAAE;IAGnC,SAAS,IAAI,QAAQ;IAGrB,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ;IAItF,IAAI,SAAS,IAAI,MAAM,EAAE,CAKxB;IAED,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIpC,MAAM,IAAI,QAAQ;IAIlB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO;CAa5H"}
|
|
@@ -1,90 +1,92 @@
|
|
|
1
|
-
|
|
1
|
+
import { compareSign, IExpression, InputValue, IPiMathObject } from '../pimath.interface';
|
|
2
|
+
|
|
2
3
|
/**
|
|
3
4
|
* The fraction class make possible to handle
|
|
4
|
-
* TODO: Write the documentation correctly.
|
|
5
5
|
* \\(\frac{a}{b}\\) or \\[\frac{a}{b}\\] values.
|
|
6
6
|
*/
|
|
7
|
-
export declare class Fraction {
|
|
8
|
-
private
|
|
9
|
-
|
|
10
|
-
constructor(value
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
get denominator(): number;
|
|
14
|
-
set denominator(value: number);
|
|
15
|
-
get value(): number;
|
|
16
|
-
get tex(): string;
|
|
17
|
-
get texWithSign(): string;
|
|
18
|
-
get display(): string;
|
|
19
|
-
get frac(): string;
|
|
20
|
-
get dfrac(): string;
|
|
21
|
-
get tfrac(): string;
|
|
22
|
-
static max: (...fractions: (Fraction | number)[]) => Fraction;
|
|
23
|
-
static min: (...fractions: (Fraction | number)[]) => Fraction;
|
|
24
|
-
static average: (...fractions: (Fraction | number)[]) => Fraction;
|
|
25
|
-
static unique: (fractions: Fraction[], sorted?: boolean) => Fraction[];
|
|
26
|
-
static sort: (fractions: Fraction[], reverse?: boolean) => Fraction[];
|
|
27
|
-
isApproximative: () => boolean;
|
|
28
|
-
isExact: () => boolean;
|
|
7
|
+
export declare class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction> {
|
|
8
|
+
#private;
|
|
9
|
+
constructor();
|
|
10
|
+
constructor(value: InputValue<Fraction>);
|
|
11
|
+
constructor(numerator: number, denominator: number);
|
|
12
|
+
constructor(decimal: number, periodLength: number);
|
|
29
13
|
/**
|
|
30
14
|
* Parse the value to get the numerator and denominator
|
|
31
15
|
* @param value : number or string to parse to get the fraction
|
|
32
16
|
* @param denominatorOrPeriodic (optional|number) : length of the periodic part: 2.333333 => 1 or denominator value
|
|
33
17
|
*/
|
|
34
|
-
parse: (value:
|
|
18
|
+
parse: (value: InputValue<Fraction>, denominatorOrPeriodic?: number) => Fraction;
|
|
35
19
|
clone: () => Fraction;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
multiply: (F: Fraction | number) => Fraction;
|
|
44
|
-
xMultiply: (...values: (Fraction | number)[]) => Fraction;
|
|
45
|
-
divide: (F: Fraction | number) => Fraction;
|
|
46
|
-
invert: () => Fraction;
|
|
47
|
-
pow: (p: number | Fraction) => Fraction;
|
|
48
|
-
root: (p: number) => Fraction;
|
|
49
|
-
sqrt: () => Fraction;
|
|
50
|
-
abs: () => Fraction;
|
|
51
|
-
reduce: () => Fraction;
|
|
52
|
-
amplify: (k: number) => Fraction;
|
|
20
|
+
abs: () => this;
|
|
21
|
+
add: (F: InputValue<Fraction>) => Fraction;
|
|
22
|
+
amplify: (k: number) => this;
|
|
23
|
+
/**
|
|
24
|
+
* Simple function to determine if it's a fraction
|
|
25
|
+
*/
|
|
26
|
+
areEquals: (...F: Fraction[]) => boolean;
|
|
53
27
|
/**
|
|
54
28
|
* Compare the current coefficient with another coefficient
|
|
55
|
-
* @param F (Coefficient) The coefficient to
|
|
29
|
+
* @param F (Coefficient) The coefficient to _compare
|
|
56
30
|
* @param sign (string| default is =): authorized values: =, <, <=, >, >= with some variations.
|
|
57
31
|
*/
|
|
58
|
-
compare: (F:
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
32
|
+
compare: (F: InputValue<Fraction>, sign?: compareSign) => boolean;
|
|
33
|
+
divide: (F: Fraction | number) => Fraction;
|
|
34
|
+
infinite: () => this;
|
|
35
|
+
invalid: () => this;
|
|
36
|
+
inverse: () => this;
|
|
37
|
+
isApproximative: () => boolean;
|
|
63
38
|
isEqual: (than: Fraction | number) => boolean;
|
|
64
|
-
|
|
65
|
-
|
|
39
|
+
isEven: () => boolean;
|
|
40
|
+
isExact: () => boolean;
|
|
41
|
+
isFinite: () => boolean;
|
|
42
|
+
isGeq: (than: Fraction | number) => boolean;
|
|
43
|
+
isGreater: (than: Fraction | number) => boolean;
|
|
44
|
+
isInfinity: () => boolean;
|
|
66
45
|
isInverted: (p: Fraction) => boolean;
|
|
67
|
-
|
|
46
|
+
isLeq: (than: Fraction | number) => boolean;
|
|
47
|
+
isLesser: (than: Fraction | number) => boolean;
|
|
48
|
+
isNaN: () => boolean;
|
|
49
|
+
isNatural: () => boolean;
|
|
50
|
+
isNegative: () => boolean;
|
|
51
|
+
isNegativeOne: () => boolean;
|
|
52
|
+
isNotEqual: (than: Fraction | number) => boolean;
|
|
68
53
|
isNotZero: () => boolean;
|
|
54
|
+
isOdd: () => boolean;
|
|
69
55
|
isOne: () => boolean;
|
|
70
|
-
|
|
56
|
+
isOpposite: (p: Fraction) => boolean;
|
|
71
57
|
isPositive: () => boolean;
|
|
72
|
-
|
|
73
|
-
isStrictlyPositive: () => boolean;
|
|
74
|
-
isStrictlyNegative: () => Boolean;
|
|
75
|
-
isNaN: () => boolean;
|
|
76
|
-
isInfinity: () => boolean;
|
|
77
|
-
isFinite: () => boolean;
|
|
78
|
-
isSquare: () => boolean;
|
|
58
|
+
isRational: () => boolean;
|
|
79
59
|
isReduced: () => boolean;
|
|
80
|
-
isNatural: () => boolean;
|
|
81
60
|
isRelative: () => boolean;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
61
|
+
isSquare: () => boolean;
|
|
62
|
+
isStrictlyNegative: () => boolean;
|
|
63
|
+
isStrictlyPositive: () => boolean;
|
|
64
|
+
isZero: () => boolean;
|
|
65
|
+
multiply: (F: Fraction | number) => this;
|
|
66
|
+
one: () => this;
|
|
67
|
+
opposite: () => this;
|
|
68
|
+
pow: (p: number | Fraction) => Fraction;
|
|
69
|
+
reduce: () => this;
|
|
70
|
+
root: (p: number) => this;
|
|
85
71
|
sign: () => number;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
72
|
+
sqrt: () => this;
|
|
73
|
+
subtract: (F: Fraction | number) => Fraction;
|
|
74
|
+
zero: () => this;
|
|
75
|
+
static average: (...fractions: (InputValue<Fraction>)[]) => Fraction;
|
|
76
|
+
static max: (...fractions: InputValue<Fraction>[]) => Fraction;
|
|
77
|
+
static min: (...fractions: (InputValue<Fraction>)[]) => Fraction;
|
|
78
|
+
static sort: (fractions: (InputValue<Fraction>)[], reverse?: boolean) => Fraction[];
|
|
79
|
+
static unique: (fractions: (InputValue<Fraction>)[]) => Fraction[];
|
|
80
|
+
static xMultiply: (...values: (InputValue<Fraction>)[]) => Fraction;
|
|
81
|
+
get denominator(): number;
|
|
82
|
+
set denominator(value: number);
|
|
83
|
+
get display(): string;
|
|
84
|
+
get numerator(): number;
|
|
85
|
+
set numerator(value: number);
|
|
86
|
+
get tfrac(): this;
|
|
87
|
+
get dfrac(): this;
|
|
88
|
+
get frac(): this;
|
|
89
|
+
get tex(): string;
|
|
90
|
+
get texWithSign(): string;
|
|
91
|
+
get value(): number;
|
|
90
92
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fraction.d.ts","sourceRoot":"","sources":["../../src/coefficients/fraction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAC,MAAM,qBAAqB,CAAA;AAY5F,qBAAa,QAAS,YAAW,aAAa,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC;;;gBAS/D,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC;gBAC3B,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;gBACtC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAgB1C,KAAK,UAAW,WAAW,QAAQ,CAAC,0BAA0B,MAAM,KAAG,QAAQ,CA6ErF;IAEM,KAAK,QAAO,QAAQ,CAK1B;IAEM,GAAG,QAAO,IAAI,CAIpB;IAEM,GAAG,MAAO,WAAW,QAAQ,CAAC,KAAG,QAAQ,CAY/C;IAEM,OAAO,MAAO,MAAM,KAAG,IAAI,CAMjC;IAMM,SAAS,SAAU,QAAQ,EAAE,KAAG,OAAO,CAE7C;IAWM,OAAO,MAAO,WAAW,QAAQ,CAAC,SAAS,WAAW,KAAG,OAAO,CAmCtE;IAEM,MAAM,MAAO,QAAQ,GAAG,MAAM,KAAG,QAAQ,CAa/C;IAEM,QAAQ,QAAO,IAAI,CAIzB;IAEM,OAAO,QAAO,IAAI,CAIxB;IAEM,OAAO,QAAO,IAAI,CAMxB;IAEM,eAAe,QAAO,OAAO,CAGnC;IAEM,OAAO,SAAU,QAAQ,GAAG,MAAM,KAAG,OAAO,CAElD;IAEM,MAAM,QAAO,OAAO,CAE1B;IAEM,OAAO,QAAO,OAAO,CAE3B;IAEM,QAAQ,QAAO,OAAO,CAE5B;IAEM,KAAK,SAAU,QAAQ,GAAG,MAAM,KAAG,OAAO,CAEhD;IAEM,SAAS,SAAU,QAAQ,GAAG,MAAM,KAAG,OAAO,CAEpD;IAEM,UAAU,QAAO,OAAO,CAE9B;IAEM,UAAU,MAAO,QAAQ,KAAG,OAAO,CAEzC;IAEM,KAAK,SAAU,QAAQ,GAAG,MAAM,KAAG,OAAO,CAEhD;IAGM,QAAQ,SAAU,QAAQ,GAAG,MAAM,KAAG,OAAO,CAEnD;IAEM,KAAK,QAAO,OAAO,CAEzB;IAEM,SAAS,QAAO,OAAO,CAE7B;IAEM,UAAU,QAAO,OAAO,CAE9B;IAEM,aAAa,QAAO,OAAO,CAEjC;IAEM,UAAU,SAAU,QAAQ,GAAG,MAAM,KAAG,OAAO,CAErD;IAEM,SAAS,QAAO,OAAO,CAE7B;IAEM,KAAK,QAAO,OAAO,CAEzB;IAEM,KAAK,QAAO,OAAO,CAEzB;IAEM,UAAU,MAAO,QAAQ,KAAG,OAAO,CAEzC;IAEM,UAAU,QAAO,OAAO,CAE9B;IAEM,UAAU,QAAO,OAAO,CAE9B;IAEM,SAAS,QAAO,OAAO,CAE7B;IAEM,UAAU,QAAO,OAAO,CAE9B;IAEM,QAAQ,QAAO,OAAO,CAE5B;IAEM,kBAAkB,QAAO,OAAO,CAEtC;IAEM,kBAAkB,QAAO,OAAO,CAEtC;IAIM,MAAM,QAAO,OAAO,CAE1B;IAEM,QAAQ,MAAO,QAAQ,GAAG,MAAM,KAAG,IAAI,CAU7C;IAEM,GAAG,QAAO,IAAI,CAIpB;IAEM,QAAQ,QAAO,IAAI,CAGzB;IAEM,GAAG,MAAO,MAAM,GAAG,QAAQ,KAAG,QAAQ,CA2B5C;IAGM,MAAM,QAAO,IAAI,CAUvB;IAEM,IAAI,MAAO,MAAM,KAAG,IAAI,CA2C9B;IAEM,IAAI,QAAO,MAAM,CAEvB;IAEM,IAAI,QAAO,IAAI,CAErB;IAEM,QAAQ,MAAO,QAAQ,GAAG,MAAM,KAAG,QAAQ,CAMjD;IAEM,IAAI,QAAO,IAAI,CAIrB;IAED,OAAc,OAAO,iBAAkB,CAAC,WAAW,QAAQ,CAAC,CAAC,EAAE,KAAG,QAAQ,CAUzE;IAED,OAAc,GAAG,iBAAkB,WAAW,QAAQ,CAAC,EAAE,KAAG,QAAQ,CAWnE;IAED,OAAc,GAAG,iBAAkB,CAAC,WAAW,QAAQ,CAAC,CAAC,EAAE,KAAG,QAAQ,CAWrE;IAED,OAAc,IAAI,cAAe,CAAC,WAAW,QAAQ,CAAC,CAAC,EAAE,YAAY,OAAO,KAAG,QAAQ,EAAE,CAQxF;IAED,OAAc,MAAM,cAAe,CAAC,WAAW,QAAQ,CAAC,CAAC,EAAE,KAAG,QAAQ,EAAE,CAcvE;IAED,OAAc,SAAS,cAAe,CAAC,WAAW,QAAQ,CAAC,CAAC,EAAE,KAAG,QAAQ,CAaxE;IAMD,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,WAAW,CAAC,KAAK,EAAE,MAAM,EAEnC;IAED,IAAW,OAAO,IAAI,MAAM,CAU3B;IAKD,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAEjC;IAED,IAAW,KAAK,IAAI,IAAI,CAGvB;IAED,IAAW,KAAK,IAAI,IAAI,CAGvB;IAED,IAAW,IAAI,IAAI,IAAI,CAGtB;IAGD,IAAW,GAAG,IAAI,MAAM,CAiBvB;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,KAAK,IAAI,MAAM,CAEzB;CAGJ"}
|
|
@@ -2,10 +2,7 @@
|
|
|
2
2
|
* NthRoot is something like "a+b\sqrt{3}
|
|
3
3
|
*/
|
|
4
4
|
export declare class NthRoot {
|
|
5
|
-
private
|
|
6
|
-
private _nth;
|
|
7
|
-
private _coefficient;
|
|
8
|
-
private _isValid;
|
|
5
|
+
#private;
|
|
9
6
|
constructor(...values: number[]);
|
|
10
7
|
get radical(): number;
|
|
11
8
|
set radical(value: number);
|
|
@@ -16,8 +13,8 @@ export declare class NthRoot {
|
|
|
16
13
|
get tex(): string;
|
|
17
14
|
get display(): string;
|
|
18
15
|
get value(): number;
|
|
19
|
-
parse: (radical: number, nthroot?: number, coefficient?: number) =>
|
|
20
|
-
reduce: () =>
|
|
21
|
-
multiply: (N: NthRoot) =>
|
|
16
|
+
parse: (radical: number, nthroot?: number, coefficient?: number) => this;
|
|
17
|
+
reduce: () => this;
|
|
18
|
+
multiply: (N: NthRoot) => this;
|
|
22
19
|
hasRadical: () => boolean;
|
|
23
20
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nthRoot.d.ts","sourceRoot":"","sources":["../../src/coefficients/nthRoot.ts"],"names":[],"mappings":"AAIA,qBAAa,OAAO;;gBAMJ,GAAG,MAAM,EAAE,MAAM,EAAE;IAc/B,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAExB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAQpB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAE5B;IAED,IAAI,GAAG,IAAI,MAAM,CAoBhB;IAED,IAAI,OAAO,IAAI,MAAM,CAoBpB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAKD,KAAK,YAAa,MAAM,YAAY,MAAM,gBAAgB,MAAM,KAAG,IAAI,CAStE;IAKD,MAAM,QAAO,IAAI,CAgBhB;IAED,QAAQ,MAAO,OAAO,KAAG,IAAI,CAG5B;IAKD,UAAU,QAAO,OAAO,CAEvB;CACJ"}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
import { Equation } from '../algebra/equation';
|
|
2
|
-
import { Fraction } from '../coefficients/fraction';
|
|
3
1
|
import { Line } from './line';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Equation } from '../algebra/equation';
|
|
4
|
+
import { IPiMathObject } from '../pimath.interface';
|
|
4
5
|
import { Point } from './point';
|
|
5
6
|
|
|
6
|
-
export declare class Circle {
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
constructor(
|
|
7
|
+
export declare class Circle implements IPiMathObject<Circle> {
|
|
8
|
+
#private;
|
|
9
|
+
constructor();
|
|
10
|
+
constructor(equation: string | Equation);
|
|
11
|
+
constructor(circle: Circle);
|
|
12
|
+
constructor(center: Point, radius: Fraction | number, square?: boolean);
|
|
13
|
+
constructor(center: Point, pointThrough: Point);
|
|
14
|
+
constructor(A: Point, B: Point, C: Point);
|
|
12
15
|
get center(): Point;
|
|
13
16
|
get squareRadius(): Fraction;
|
|
14
17
|
get cartesian(): Equation;
|
|
15
|
-
get exists(): boolean;
|
|
16
18
|
get radius(): {
|
|
17
19
|
tex: string;
|
|
18
20
|
display: string;
|
|
@@ -29,18 +31,9 @@ export declare class Circle {
|
|
|
29
31
|
relativePosition: (L: Line) => number;
|
|
30
32
|
lineIntersection: (L: Line) => Point[];
|
|
31
33
|
tangents: (P: Point | Fraction) => Line[];
|
|
32
|
-
isPointOnCircle: (P: Point) =>
|
|
34
|
+
isPointOnCircle: (P: Point) => boolean;
|
|
33
35
|
getPointsOnCircle: (numberIsInteger?: boolean) => Point[];
|
|
34
36
|
clone(): Circle;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
private _tangentsWithSlope;
|
|
38
|
-
private _reset;
|
|
39
|
-
private parse;
|
|
40
|
-
private _calculateCartesian;
|
|
41
|
-
private _parseCopyCircle;
|
|
42
|
-
private _parseCenterAndRadius;
|
|
43
|
-
private _parseCenterAndPointThrough;
|
|
44
|
-
private _parseEquation;
|
|
45
|
-
private _parseThroughtThreePoints;
|
|
37
|
+
setRadius(radius: Fraction | number, square?: boolean): this;
|
|
38
|
+
parse(...values: unknown[]): this;
|
|
46
39
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"circle.d.ts","sourceRoot":"","sources":["../../src/geometry/circle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,QAAQ,CAAA;AAG5C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,qBAAa,MACT,YACA,aAAa,CAAC,MAAM,CAAC;;;gBAMT,QAAQ,EAAE,MAAM,GAAG,QAAQ;gBAC3B,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO;gBAC1D,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK;gBAClC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;IAOxC,IAAI,MAAM,IAAI,KAAK,CAElB;IAED,IAAI,YAAY,IAAI,QAAQ,CAE3B;IAED,IAAI,SAAS,IAAI,QAAQ,CAIxB;IAED,IAAI,MAAM,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAe5D;IAED,IAAI,GAAG,IAAI,MAAM,CAchB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,OAAO,IAAI,MAAM,CAapB;IAOD,gBAAgB,MAAO,IAAI,KAAG,MAAM,CAYnC;IAED,gBAAgB,MAAO,IAAI,KAAG,KAAK,EAAE,CAwBpC;IAED,QAAQ,MAAO,KAAK,GAAG,QAAQ,KAAG,IAAI,EAAE,CAYvC;IAED,eAAe,MAAO,KAAK,KAAG,OAAO,CAEpC;IAED,iBAAiB,qBAAsB,OAAO,KAAG,KAAK,EAAE,CA+BvD;IAED,KAAK,IAAI,MAAM;IAYf,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAuE5D,KAAK,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;CA+GpC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Vector } from './vector';
|
|
3
|
+
|
|
4
|
+
type V = Vector;
|
|
5
|
+
export declare function areVectorsEquals(v1: V, v2: V): boolean;
|
|
6
|
+
export declare function areVectorsColinears(v1: V, v2: V): boolean;
|
|
7
|
+
export declare function dotProduct(v1: V, v2: V): Fraction;
|
|
8
|
+
export declare function determinant(...values: V[]): Fraction;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geomMath.d.ts","sourceRoot":"","sources":["../../src/geometry/geomMath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC,KAAK,CAAC,GAAG,MAAM,CAAA;AACf,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAMtD;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CASzD;AAGD,wBAAgB,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,QAAQ,CAUjD;AAED,wBAAgB,WAAW,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,GAAG,QAAQ,CAqCpD"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Equation } from '../algebra/equation';
|
|
3
|
+
import { Vector } from './vector';
|
|
4
|
+
import { InputValue, IPiMathObject } from '../pimath.interface';
|
|
5
|
+
|
|
6
|
+
export declare enum LinePropriety {
|
|
7
|
+
None = "none",
|
|
8
|
+
Parallel = "parallel",
|
|
9
|
+
Perpendicular = "perpendicular",
|
|
10
|
+
Tangent = "tangent"
|
|
11
|
+
}
|
|
12
|
+
export declare class Line implements IPiMathObject<Line> {
|
|
13
|
+
#private;
|
|
14
|
+
static PERPENDICULAR: LinePropriety;
|
|
15
|
+
static PARALLEL: LinePropriety;
|
|
16
|
+
/**
|
|
17
|
+
* Value can be a mix of:
|
|
18
|
+
*
|
|
19
|
+
* @param values
|
|
20
|
+
*/
|
|
21
|
+
constructor(...values: unknown[]);
|
|
22
|
+
get a(): Fraction;
|
|
23
|
+
set a(value: Fraction);
|
|
24
|
+
get b(): Fraction;
|
|
25
|
+
set b(value: Fraction);
|
|
26
|
+
get c(): Fraction;
|
|
27
|
+
set c(value: Fraction);
|
|
28
|
+
get OA(): Vector;
|
|
29
|
+
set OA(value: Vector);
|
|
30
|
+
get d(): Vector;
|
|
31
|
+
set d(value: Vector);
|
|
32
|
+
get n(): Vector;
|
|
33
|
+
getEquation(): Equation;
|
|
34
|
+
get canonical(): this;
|
|
35
|
+
get equation(): this;
|
|
36
|
+
get mxh(): this;
|
|
37
|
+
get parametric(): this;
|
|
38
|
+
get system(): this;
|
|
39
|
+
get tex(): string;
|
|
40
|
+
get reduceBeforeDisplay(): boolean;
|
|
41
|
+
set reduceBeforeDisplay(value: boolean);
|
|
42
|
+
get display(): string;
|
|
43
|
+
get normal(): Vector;
|
|
44
|
+
get director(): Vector;
|
|
45
|
+
get slope(): Fraction;
|
|
46
|
+
get height(): Fraction;
|
|
47
|
+
randomPoint: (k?: number) => Vector;
|
|
48
|
+
randomNearPoint: (k?: number) => Vector;
|
|
49
|
+
/**
|
|
50
|
+
* Parse data to a line
|
|
51
|
+
* @param {any} values
|
|
52
|
+
* @returns {Line}
|
|
53
|
+
*/
|
|
54
|
+
parse: (...values: unknown[]) => Line;
|
|
55
|
+
parseEquation: (equ: Equation) => this;
|
|
56
|
+
parseByCoefficient: (a: InputValue<Fraction>, b: InputValue<Fraction>, c: InputValue<Fraction>) => this;
|
|
57
|
+
parseByPointAndVector: (P: Vector, d: Vector) => this;
|
|
58
|
+
parseByPointAndNormal: (P: Vector, n: Vector) => this;
|
|
59
|
+
parseByPointAndLine: (P: Vector, L: Line, orientation?: LinePropriety) => this;
|
|
60
|
+
clone: () => this;
|
|
61
|
+
isOnLine: (pt: Vector) => boolean;
|
|
62
|
+
isParallelTo: (line: Line) => boolean;
|
|
63
|
+
isSameAs: (line: Line) => boolean;
|
|
64
|
+
isPerpendicularTo: (line: Line) => boolean;
|
|
65
|
+
isVertical: () => boolean;
|
|
66
|
+
simplify: () => this;
|
|
67
|
+
simplifyDirection: () => this;
|
|
68
|
+
intersection: (line: Line) => {
|
|
69
|
+
point: Vector;
|
|
70
|
+
hasIntersection: boolean;
|
|
71
|
+
isParallel: boolean;
|
|
72
|
+
isSame: boolean;
|
|
73
|
+
};
|
|
74
|
+
distanceTo(pt: Vector): {
|
|
75
|
+
value: number;
|
|
76
|
+
fraction: Fraction;
|
|
77
|
+
tex: string;
|
|
78
|
+
};
|
|
79
|
+
hitSegment(A: Vector, B: Vector): boolean;
|
|
80
|
+
getValueAtX: (value: Fraction | number) => Fraction;
|
|
81
|
+
getValueAtY: (value: Fraction | number) => Fraction;
|
|
82
|
+
canonicalAsFloatCoefficient(decimals?: number): string;
|
|
83
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../src/geometry/line.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Vector } from './vector';
|
|
3
|
+
import { Point } from './point';
|
|
4
|
+
|
|
5
|
+
export declare enum LinePropriety {
|
|
6
|
+
None = "none",
|
|
7
|
+
Parallel = "parallel",
|
|
8
|
+
Perpendicular = "perpendicular",
|
|
9
|
+
Tangent = "tangent"
|
|
10
|
+
}
|
|
11
|
+
export declare class Line3 {
|
|
12
|
+
#private;
|
|
13
|
+
static PERPENDICULAR: LinePropriety;
|
|
14
|
+
static PARALLEL: LinePropriety;
|
|
15
|
+
/**
|
|
16
|
+
* Value can be a mix of:
|
|
17
|
+
*
|
|
18
|
+
* @param values
|
|
19
|
+
*/
|
|
20
|
+
constructor(A: Point, B: Point);
|
|
21
|
+
constructor(A: Point, d: Vector);
|
|
22
|
+
get OA(): Point;
|
|
23
|
+
set OA(value: Point);
|
|
24
|
+
get point(): Point;
|
|
25
|
+
get d(): Vector;
|
|
26
|
+
set d(value: Vector);
|
|
27
|
+
get tex(): {
|
|
28
|
+
parametric: string;
|
|
29
|
+
system: string;
|
|
30
|
+
cartesian: string;
|
|
31
|
+
};
|
|
32
|
+
get display(): {
|
|
33
|
+
parametric: string;
|
|
34
|
+
system: string;
|
|
35
|
+
cartesian: string;
|
|
36
|
+
};
|
|
37
|
+
get direction(): Vector;
|
|
38
|
+
clone: () => this;
|
|
39
|
+
isOnLine: (pt: Point) => boolean;
|
|
40
|
+
isParallelTo: (line: Line3) => boolean;
|
|
41
|
+
isSameAs: (line: Line3) => boolean;
|
|
42
|
+
isPerpendicularTo: (line: Line3) => boolean;
|
|
43
|
+
isVertical: () => boolean;
|
|
44
|
+
simplify: () => this;
|
|
45
|
+
intersection: (line: Line3) => {
|
|
46
|
+
point: Vector;
|
|
47
|
+
hasIntersection: boolean;
|
|
48
|
+
isParallel: boolean;
|
|
49
|
+
isSame: boolean;
|
|
50
|
+
};
|
|
51
|
+
distanceTo(pt: Point): {
|
|
52
|
+
value: number;
|
|
53
|
+
fraction: Fraction;
|
|
54
|
+
tex: string;
|
|
55
|
+
};
|
|
56
|
+
hitSegment(A: Point, B: Point): boolean;
|
|
57
|
+
randomPoint: (max?: number) => Point;
|
|
58
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"line3.d.ts","sourceRoot":"","sources":["../../src/geometry/line3.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAInD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,oBAAY,aAAa;IACrB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;CACtB;AAED,qBAAa,KAAK;;IAEd,MAAM,CAAC,aAAa,gBAA8B;IAClD,MAAM,CAAC,QAAQ,gBAAyB;gBAU5B,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;gBAClB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM;IAO/B,IAAI,EAAE,IAAI,KAAK,CAEd;IAED,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAElB;IACD,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAElB;IAED,IAAI,GAAG,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAmBnE;IAED,IAAI,OAAO,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAcvE;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,KAAK,QAAO,IAAI,CAKf;IAID,QAAQ,OAAQ,KAAK,KAAG,OAAO,CAE9B;IAED,YAAY,SAAU,KAAK,KAAG,OAAO,CAGpC;IACD,QAAQ,SAAU,KAAK,KAAG,OAAO,CAEhC;IACD,iBAAiB,SAAU,KAAK,KAAG,OAAO,CAEzC;IACD,UAAU,QAAO,OAAO,CAEvB;IACD,QAAQ,QAAO,IAAI,CAYlB;IAED,YAAY,SAAU,KAAK,KAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAgC9G;IAED,UAAU,CAAC,EAAE,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAkBzE,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO;IAsCvC,WAAW,oBAAc,KAAK,CAS7B;CACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Vector } from './vector';
|
|
3
|
+
|
|
4
|
+
export declare class Matrix {
|
|
5
|
+
#private;
|
|
6
|
+
constructor(...values: Vector[]);
|
|
7
|
+
get values(): Vector[];
|
|
8
|
+
get array(): Fraction[][];
|
|
9
|
+
get dimension(): number[];
|
|
10
|
+
isSquare(): boolean;
|
|
11
|
+
determinant(): Fraction;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../../src/geometry/matrix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGtC,qBAAa,MAAM;;gBAEH,GAAG,MAAM,EAAE,MAAM,EAAE;IAM/B,IAAI,MAAM,IAAI,MAAM,EAAE,CAErB;IAED,IAAI,KAAK,IAAI,QAAQ,EAAE,EAAE,CAExB;IAED,IAAI,SAAS,IAAI,MAAM,EAAE,CAExB;IAED,QAAQ,IAAI,OAAO;IAInB,WAAW,IAAI,QAAQ;CAO1B"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Equation } from '../algebra/equation';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Line3 } from './line3';
|
|
4
|
+
import { Point } from './point';
|
|
5
|
+
import { Vector } from './vector';
|
|
6
|
+
|
|
7
|
+
interface Plane3Config {
|
|
8
|
+
point?: Point;
|
|
9
|
+
normal?: Vector;
|
|
10
|
+
directions?: Vector[];
|
|
11
|
+
equation?: Equation;
|
|
12
|
+
points?: Point[];
|
|
13
|
+
coefficients?: number[];
|
|
14
|
+
}
|
|
15
|
+
export declare class Plane3 {
|
|
16
|
+
#private;
|
|
17
|
+
constructor(config?: Plane3Config);
|
|
18
|
+
get normal(): Vector;
|
|
19
|
+
set normal(value: Vector);
|
|
20
|
+
get point(): Point;
|
|
21
|
+
set point(value: Point);
|
|
22
|
+
get a(): Fraction;
|
|
23
|
+
get b(): Fraction;
|
|
24
|
+
get c(): Fraction;
|
|
25
|
+
get d(): Fraction;
|
|
26
|
+
get tex(): string;
|
|
27
|
+
parse(config: Plane3Config): void;
|
|
28
|
+
angle(vector: Vector, sharp?: boolean, radian?: boolean): number;
|
|
29
|
+
angle(line: Line3, sharp?: boolean, radian?: boolean): number;
|
|
30
|
+
angle(plane: Plane3, sharp?: boolean, radian?: boolean): number;
|
|
31
|
+
distanceTo(point: Vector): number;
|
|
32
|
+
intersectWithLine(line: Line3): Point;
|
|
33
|
+
intersectWithPlane(plane: Plane3): Line3;
|
|
34
|
+
isPointOnPlane(pt: Point): boolean;
|
|
35
|
+
}
|
|
36
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plane3.d.ts","sourceRoot":"","sources":["../../src/geometry/plane3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,UAAU,YAAY;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B;AACD,qBAAa,MAAM;;gBAIH,MAAM,CAAC,EAAE,YAAY;IAQjC,IAAI,MAAM,IAAI,MAAM,CAEnB;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAGvB;IACD,IAAI,KAAK,IAAI,KAAK,CAEjB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK,EAGrB;IAED,IAAI,CAAC,IAAI,QAAQ,CAEhB;IACD,IAAI,CAAC,IAAI,QAAQ,CAEhB;IACD,IAAI,CAAC,IAAI,QAAQ,CAEhB;IACD,IAAI,CAAC,IAAI,QAAQ,CAEhB;IAED,IAAI,GAAG,IAAI,MAAM,CAMhB;IAED,KAAK,CAAC,MAAM,EAAE,YAAY;IAyD1B,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM;IAChE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM;IAC7D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM;IAqB/D,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIjC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK;IAMrC,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IAUxC,cAAc,CAAC,EAAE,EAAE,KAAK,GAAG,OAAO;CAGrC"}
|