@minecraft/math 1.0.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/README.md +55 -0
- package/api-report/math.api.md +125 -0
- package/dist/minecraft-math.js +378 -0
- package/dist/minecraft-math.js.map +7 -0
- package/lib/general/clamp.js +14 -0
- package/lib/general/clamp.js.map +1 -0
- package/lib/general/index.js +19 -0
- package/lib/general/index.js.map +1 -0
- package/lib/index.js +20 -0
- package/lib/index.js.map +1 -0
- package/lib/index.test.js +10 -0
- package/lib/index.test.js.map +1 -0
- package/lib/tsdoc-metadata.json +11 -0
- package/lib/types/math-beta.d.ts +327 -0
- package/lib/types/math-public.d.ts +327 -0
- package/lib/types/math.d.ts +327 -0
- package/lib/vector3/coreHelpers.js +230 -0
- package/lib/vector3/coreHelpers.js.map +1 -0
- package/lib/vector3/coreHelpers.test.js +147 -0
- package/lib/vector3/coreHelpers.test.js.map +1 -0
- package/lib/vector3/index.js +20 -0
- package/lib/vector3/index.js.map +1 -0
- package/lib/vector3/vectorWrapper.js +147 -0
- package/lib/vector3/vectorWrapper.js.map +1 -0
- package/lib/vector3/vectorWrapper.test.js +135 -0
- package/lib/vector3/vectorWrapper.test.js.map +1 -0
- package/package.json +29 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Mojang AB. All rights reserved.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const vitest_1 = require("vitest");
|
|
5
|
+
const coreHelpers_1 = require("./coreHelpers");
|
|
6
|
+
(0, vitest_1.describe)('Vector3 operations', () => {
|
|
7
|
+
const v1 = { x: 1, y: 2, z: 3 };
|
|
8
|
+
const v2 = { x: 4, y: 5, z: 6 };
|
|
9
|
+
(0, vitest_1.it)('successfully compares vectors', () => {
|
|
10
|
+
const v3 = { x: 1, y: 2, z: 3 };
|
|
11
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.equals(v1, v3)).toBe(true);
|
|
12
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.equals(v1, v2)).toBe(false);
|
|
13
|
+
});
|
|
14
|
+
(0, vitest_1.it)('successfully adds vectors and returns a new vector', () => {
|
|
15
|
+
const result = coreHelpers_1.Vector3Utils.add(v1, v2);
|
|
16
|
+
(0, vitest_1.expect)(result).toEqual({ x: 5, y: 7, z: 9 });
|
|
17
|
+
(0, vitest_1.expect)(result).not.toBe(v1);
|
|
18
|
+
});
|
|
19
|
+
(0, vitest_1.it)('successfully subtracts vectors and returns a new vector', () => {
|
|
20
|
+
const result = coreHelpers_1.Vector3Utils.subtract(v1, v2);
|
|
21
|
+
(0, vitest_1.expect)(result).toEqual({ x: -3, y: -3, z: -3 });
|
|
22
|
+
(0, vitest_1.expect)(result).not.toBe(v1);
|
|
23
|
+
});
|
|
24
|
+
(0, vitest_1.it)('successfully scales a vector and returns a new vector', () => {
|
|
25
|
+
const result = coreHelpers_1.Vector3Utils.scale(v1, 2);
|
|
26
|
+
(0, vitest_1.expect)(result).toEqual({ x: 2, y: 4, z: 6 });
|
|
27
|
+
(0, vitest_1.expect)(result).not.toBe(v1);
|
|
28
|
+
});
|
|
29
|
+
(0, vitest_1.it)('successfully computes the dot product of a vector', () => {
|
|
30
|
+
const result = coreHelpers_1.Vector3Utils.dot(v1, v2);
|
|
31
|
+
(0, vitest_1.expect)(result).toBe(32);
|
|
32
|
+
});
|
|
33
|
+
(0, vitest_1.it)('successfully computes the dot product of a vector with a 0 vector', () => {
|
|
34
|
+
const result = coreHelpers_1.Vector3Utils.dot(v1, { x: 0, y: 0, z: 0 });
|
|
35
|
+
(0, vitest_1.expect)(result).toBe(0);
|
|
36
|
+
});
|
|
37
|
+
(0, vitest_1.it)('successfully computes the cross product of a vector and returns a new vector', () => {
|
|
38
|
+
const result = coreHelpers_1.Vector3Utils.cross(v1, v2);
|
|
39
|
+
(0, vitest_1.expect)(result).toEqual({ x: -3, y: 6, z: -3 });
|
|
40
|
+
(0, vitest_1.expect)(result).not.toBe(v1);
|
|
41
|
+
(0, vitest_1.expect)(result).not.toBe(v2);
|
|
42
|
+
});
|
|
43
|
+
(0, vitest_1.it)('returns a zero vector for a cross product of parallel vectors', () => {
|
|
44
|
+
const result = coreHelpers_1.Vector3Utils.cross({ x: 3, y: 0, z: 0 }, { x: 7, y: 0, z: 0 });
|
|
45
|
+
(0, vitest_1.expect)(result).toEqual({ x: 0, y: 0, z: 0 });
|
|
46
|
+
});
|
|
47
|
+
(0, vitest_1.it)('returns a zero vector for a cross product of with a zero vector', () => {
|
|
48
|
+
const result = coreHelpers_1.Vector3Utils.cross(v1, { x: 0, y: 0, z: 0 });
|
|
49
|
+
(0, vitest_1.expect)(result).toEqual({ x: 0, y: 0, z: 0 });
|
|
50
|
+
(0, vitest_1.expect)(result).not.toBe(v1);
|
|
51
|
+
});
|
|
52
|
+
(0, vitest_1.it)('returns the unit z vector for a cross product of unit x and unit y vectors', () => {
|
|
53
|
+
const result = coreHelpers_1.Vector3Utils.cross({ x: 1, y: 0, z: 0 }, { x: 0, y: 1, z: 0 });
|
|
54
|
+
(0, vitest_1.expect)(result).toEqual({ x: 0, y: 0, z: 1 });
|
|
55
|
+
});
|
|
56
|
+
(0, vitest_1.it)('calculates the magnitude', () => {
|
|
57
|
+
const result = coreHelpers_1.Vector3Utils.magnitude(v1);
|
|
58
|
+
(0, vitest_1.expect)(result).toBeCloseTo(3.74, 2);
|
|
59
|
+
});
|
|
60
|
+
(0, vitest_1.it)('computes the floor of the vector', () => {
|
|
61
|
+
const input = { x: 1.33, y: 2.14, z: 3.55 };
|
|
62
|
+
const expected = { x: 1, y: 2, z: 3 };
|
|
63
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.floor(input)).toEqual(expected);
|
|
64
|
+
});
|
|
65
|
+
(0, vitest_1.it)('computes the floor of negative vectors', () => {
|
|
66
|
+
const input = { x: -1.33, y: -2.14, z: -3.55 };
|
|
67
|
+
const expected = { x: -2, y: -3, z: -4 };
|
|
68
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.floor(input)).toEqual(expected);
|
|
69
|
+
});
|
|
70
|
+
(0, vitest_1.it)('normalizes the vector', () => {
|
|
71
|
+
const result = coreHelpers_1.Vector3Utils.normalize(v1);
|
|
72
|
+
(0, vitest_1.expect)(result.x).toBeCloseTo(0.27, 2);
|
|
73
|
+
(0, vitest_1.expect)(result.y).toBeCloseTo(0.53, 2);
|
|
74
|
+
(0, vitest_1.expect)(result.z).toBeCloseTo(0.8, 2);
|
|
75
|
+
});
|
|
76
|
+
(0, vitest_1.it)('converts a vector to a string with default options', () => {
|
|
77
|
+
const vector = { x: 1, y: 2, z: 3 };
|
|
78
|
+
const expectedString = '1.00, 2.00, 3.00';
|
|
79
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector)).toBe(expectedString);
|
|
80
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector, undefined)).toBe(expectedString);
|
|
81
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector, { decimals: undefined, delimiter: undefined })).toBe(expectedString);
|
|
82
|
+
});
|
|
83
|
+
(0, vitest_1.it)('converts a vector to a string with overridden options', () => {
|
|
84
|
+
const vector = { x: 1.23456789, y: 2.99, z: 3 };
|
|
85
|
+
const expectedString1 = '1.2346|2.9900|3.0000'; // toFixed performs rounding
|
|
86
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector, { decimals: 4, delimiter: '|' })).toBe(expectedString1);
|
|
87
|
+
const expectedString2 = '1|3|3';
|
|
88
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector, { decimals: 0, delimiter: '|' })).toBe(expectedString2);
|
|
89
|
+
const expectedString3 = '1, 3, 3';
|
|
90
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector, { decimals: 0 })).toBe(expectedString3);
|
|
91
|
+
const expectedString4 = '1.23|2.99|3.00';
|
|
92
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector3Utils.toString(vector, { delimiter: '|' })).toBe(expectedString4);
|
|
93
|
+
});
|
|
94
|
+
(0, vitest_1.it)('converts a vector2 to a string with default options', () => {
|
|
95
|
+
const vector = { x: 1, y: 2 };
|
|
96
|
+
const expectedString = '1.00, 2.00';
|
|
97
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector)).toBe(expectedString);
|
|
98
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector, undefined)).toBe(expectedString);
|
|
99
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector, { decimals: undefined, delimiter: undefined })).toBe(expectedString);
|
|
100
|
+
});
|
|
101
|
+
(0, vitest_1.it)('converts a vector2 to a string with overridden options', () => {
|
|
102
|
+
const vector = { x: 1.23456789, y: 2.99 };
|
|
103
|
+
const expectedString1 = '1.2346|2.9900'; // toFixed performs rounding
|
|
104
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector, { decimals: 4, delimiter: '|' })).toBe(expectedString1);
|
|
105
|
+
const expectedString2 = '1|3';
|
|
106
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector, { decimals: 0, delimiter: '|' })).toBe(expectedString2);
|
|
107
|
+
const expectedString3 = '1, 3';
|
|
108
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector, { decimals: 0 })).toBe(expectedString3);
|
|
109
|
+
const expectedString4 = '1.23|2.99';
|
|
110
|
+
(0, vitest_1.expect)(coreHelpers_1.Vector2Utils.toString(vector, { delimiter: '|' })).toBe(expectedString4);
|
|
111
|
+
});
|
|
112
|
+
(0, vitest_1.describe)('clamp', () => {
|
|
113
|
+
const v = { x: 1, y: 1, z: 3 };
|
|
114
|
+
const minVec = { x: 0, y: 1.5 };
|
|
115
|
+
const maxVec = { x: 2, z: 2.5 };
|
|
116
|
+
(0, vitest_1.it)('clamps with defaults (no min or max)', () => {
|
|
117
|
+
const result = coreHelpers_1.Vector3Utils.clamp(v);
|
|
118
|
+
(0, vitest_1.expect)(result).toEqual({ x: 1, y: 1, z: 3 });
|
|
119
|
+
});
|
|
120
|
+
(0, vitest_1.it)('clamps properly with both min and max', () => {
|
|
121
|
+
const result = coreHelpers_1.Vector3Utils.clamp(v, { min: minVec, max: maxVec });
|
|
122
|
+
(0, vitest_1.expect)(result).toEqual({ x: 1, y: 1.5, z: 2.5 });
|
|
123
|
+
});
|
|
124
|
+
(0, vitest_1.it)('clamps with min only', () => {
|
|
125
|
+
const result = coreHelpers_1.Vector3Utils.clamp(v, { min: minVec });
|
|
126
|
+
(0, vitest_1.expect)(result).toEqual({ x: 1, y: 1.5, z: 3 });
|
|
127
|
+
});
|
|
128
|
+
(0, vitest_1.it)('clamps with max only', () => {
|
|
129
|
+
const result = coreHelpers_1.Vector3Utils.clamp(v, { max: maxVec });
|
|
130
|
+
(0, vitest_1.expect)(result).toEqual({ x: 1, y: 1, z: 2.5 });
|
|
131
|
+
});
|
|
132
|
+
(0, vitest_1.it)('clamp with zero vector and positive mins and negative max', () => {
|
|
133
|
+
const vZero = { x: 0, y: 0, z: 0 };
|
|
134
|
+
const min = { y: 1.5 };
|
|
135
|
+
const max = { z: -2.5 };
|
|
136
|
+
const result = coreHelpers_1.Vector3Utils.clamp(vZero, { min, max });
|
|
137
|
+
(0, vitest_1.expect)(result).toEqual({ x: 0, y: 1.5, z: -2.5 });
|
|
138
|
+
});
|
|
139
|
+
// Test clamp function with large vector
|
|
140
|
+
const vLarge = { x: 1e6, y: 1e6, z: 1e6 };
|
|
141
|
+
(0, vitest_1.it)('clamp with large vector', () => {
|
|
142
|
+
const result = coreHelpers_1.Vector3Utils.clamp(vLarge, { min: minVec, max: maxVec });
|
|
143
|
+
(0, vitest_1.expect)(result).toEqual({ x: 2, y: 1e6, z: 2.5 });
|
|
144
|
+
});
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
//# sourceMappingURL=coreHelpers.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coreHelpers.test.js","sourceRoot":"","sources":["../../src/vector3/coreHelpers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Mojang AB. All rights reserved.
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
__exportStar(require("./coreHelpers"), exports);
|
|
19
|
+
__exportStar(require("./vectorWrapper"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vector3/index.ts"],"names":[],"mappings":";AAAA,iDAAiD;;;;;;;;;;;;;;;;AAEjD,gDAA8B;AAC9B,kDAAgC"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Mojang AB. All rights reserved.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Vector2Builder = exports.Vector3Builder = void 0;
|
|
5
|
+
const coreHelpers_1 = require("./coreHelpers");
|
|
6
|
+
/**
|
|
7
|
+
* Vector3 wrapper class which can be used as a Vector3 for APIs on \@minecraft/server which require a Vector,
|
|
8
|
+
* but also contain additional helper methods. This is an alternative to using the core Vector 3 utility
|
|
9
|
+
* methods directly, for those who prefer a more object-oriented approach. This version of the class is mutable
|
|
10
|
+
* and changes state inline.
|
|
11
|
+
*
|
|
12
|
+
* For an immutable version of the build, use ImmutableVector3Builder.
|
|
13
|
+
*
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
class Vector3Builder {
|
|
17
|
+
constructor(first, y, z) {
|
|
18
|
+
if (typeof first === 'object') {
|
|
19
|
+
this.x = first.x;
|
|
20
|
+
this.y = first.y;
|
|
21
|
+
this.z = first.z;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
this.x = first;
|
|
25
|
+
this.y = y ?? 0;
|
|
26
|
+
this.z = z ?? 0;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Assigns the values of the passed in vector to this vector. Returns itself.
|
|
31
|
+
*/
|
|
32
|
+
assign(vec) {
|
|
33
|
+
this.x = vec.x;
|
|
34
|
+
this.y = vec.y;
|
|
35
|
+
this.z = vec.z;
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* equals
|
|
40
|
+
*
|
|
41
|
+
* Check the equality of two vectors
|
|
42
|
+
*/
|
|
43
|
+
equals(v) {
|
|
44
|
+
return coreHelpers_1.Vector3Utils.equals(this, v);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* add
|
|
48
|
+
*
|
|
49
|
+
* Adds the vector v to this, returning itself.
|
|
50
|
+
*/
|
|
51
|
+
add(v) {
|
|
52
|
+
return this.assign(coreHelpers_1.Vector3Utils.add(this, v));
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* subtract
|
|
56
|
+
*
|
|
57
|
+
* Subtracts the vector v from this, returning itself.
|
|
58
|
+
*/
|
|
59
|
+
subtract(v) {
|
|
60
|
+
return this.assign(coreHelpers_1.Vector3Utils.subtract(this, v));
|
|
61
|
+
}
|
|
62
|
+
/** scale
|
|
63
|
+
*
|
|
64
|
+
* Scales this by the passed in value, returning itself.
|
|
65
|
+
*/
|
|
66
|
+
scale(val) {
|
|
67
|
+
return this.assign(coreHelpers_1.Vector3Utils.scale(this, val));
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* dot
|
|
71
|
+
*
|
|
72
|
+
* Computes the dot product of this and the passed in vector.
|
|
73
|
+
*/
|
|
74
|
+
dot(vec) {
|
|
75
|
+
return coreHelpers_1.Vector3Utils.dot(this, vec);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* cross
|
|
79
|
+
*
|
|
80
|
+
* Computes the cross product of this and the passed in vector, returning itself.
|
|
81
|
+
*/
|
|
82
|
+
cross(vec) {
|
|
83
|
+
return this.assign(coreHelpers_1.Vector3Utils.cross(this, vec));
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* magnitude
|
|
87
|
+
*
|
|
88
|
+
* The magnitude of the vector
|
|
89
|
+
*/
|
|
90
|
+
magnitude() {
|
|
91
|
+
return coreHelpers_1.Vector3Utils.magnitude(this);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* normalize
|
|
95
|
+
*
|
|
96
|
+
* Normalizes this vector, returning itself.
|
|
97
|
+
*/
|
|
98
|
+
normalize() {
|
|
99
|
+
return this.assign(coreHelpers_1.Vector3Utils.normalize(this));
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* floor
|
|
103
|
+
*
|
|
104
|
+
* Floor the components of a vector to produce a new vector
|
|
105
|
+
*/
|
|
106
|
+
floor() {
|
|
107
|
+
return this.assign(coreHelpers_1.Vector3Utils.floor(this));
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* toString
|
|
111
|
+
*
|
|
112
|
+
* Create a string representation of a vector
|
|
113
|
+
*/
|
|
114
|
+
toString(options) {
|
|
115
|
+
return coreHelpers_1.Vector3Utils.toString(this, options);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* clamp
|
|
119
|
+
*
|
|
120
|
+
* Clamps the components of a vector to limits to produce a new vector
|
|
121
|
+
*/
|
|
122
|
+
clamp(limits) {
|
|
123
|
+
return this.assign(coreHelpers_1.Vector3Utils.clamp(this, limits));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.Vector3Builder = Vector3Builder;
|
|
127
|
+
/**
|
|
128
|
+
* Vector2 wrapper class which can be used as a Vector2 for APIs on \@minecraft/server which require a Vector2.
|
|
129
|
+
* @public
|
|
130
|
+
*/
|
|
131
|
+
class Vector2Builder {
|
|
132
|
+
constructor(first, y) {
|
|
133
|
+
if (typeof first === 'object') {
|
|
134
|
+
this.x = first.x;
|
|
135
|
+
this.y = first.y;
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
this.x = first;
|
|
139
|
+
this.y = y ?? 0;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
toString(options) {
|
|
143
|
+
return coreHelpers_1.Vector2Utils.toString(this, options);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
exports.Vector2Builder = Vector2Builder;
|
|
147
|
+
//# sourceMappingURL=vectorWrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vectorWrapper.js","sourceRoot":"","sources":["../../src/vector3/vectorWrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Mojang AB. All rights reserved.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const vitest_1 = require("vitest");
|
|
5
|
+
const coreHelpers_1 = require("./coreHelpers");
|
|
6
|
+
const vectorWrapper_1 = require("./vectorWrapper");
|
|
7
|
+
/**
|
|
8
|
+
* Underlying functionality is validated by coreHelpers tests, primary concern here is consistency of results
|
|
9
|
+
* between the two implementations
|
|
10
|
+
*/
|
|
11
|
+
(0, vitest_1.describe)('Vector3Builder', () => {
|
|
12
|
+
(0, vitest_1.it)('should be able to be constructed from a Vector3 or three nunmbers', () => {
|
|
13
|
+
const vectorA = new vectorWrapper_1.Vector3Builder({ x: 1, y: 2, z: 3 });
|
|
14
|
+
const vectorB = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
15
|
+
(0, vitest_1.expect)(vectorA.x).toBe(1);
|
|
16
|
+
(0, vitest_1.expect)(vectorA.y).toBe(2);
|
|
17
|
+
(0, vitest_1.expect)(vectorA.z).toBe(3);
|
|
18
|
+
(0, vitest_1.expect)(vectorA).toEqual(vectorB);
|
|
19
|
+
});
|
|
20
|
+
(0, vitest_1.it)('should be able to assign a Vector3', () => {
|
|
21
|
+
const vector = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
22
|
+
const updated = vector.assign({ x: 4, y: 5, z: 6 });
|
|
23
|
+
(0, vitest_1.expect)(updated.x).toBe(4);
|
|
24
|
+
(0, vitest_1.expect)(updated.y).toBe(5);
|
|
25
|
+
(0, vitest_1.expect)(updated.z).toBe(6);
|
|
26
|
+
(0, vitest_1.expect)(updated).toBe(vector); // Referential equality must be preserved
|
|
27
|
+
});
|
|
28
|
+
(0, vitest_1.it)('should be able to check equality with the same result as the coreHelpers function', () => {
|
|
29
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
30
|
+
const vectorB = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
31
|
+
const vectorC = new vectorWrapper_1.Vector3Builder(4, 5, 6);
|
|
32
|
+
(0, vitest_1.expect)(vectorA.equals(vectorB)).toBe(coreHelpers_1.Vector3Utils.equals(vectorA, vectorB));
|
|
33
|
+
(0, vitest_1.expect)(vectorA.equals(vectorC)).toBe(coreHelpers_1.Vector3Utils.equals(vectorA, vectorC));
|
|
34
|
+
});
|
|
35
|
+
(0, vitest_1.it)('should be able to add a vector3 with the same result as the coreHelpers function', () => {
|
|
36
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
37
|
+
const vectorB = new vectorWrapper_1.Vector3Builder(4, 5, 6);
|
|
38
|
+
const vectorC = coreHelpers_1.Vector3Utils.add(vectorA, vectorB);
|
|
39
|
+
const result = vectorA.add(vectorB);
|
|
40
|
+
(0, vitest_1.expect)(result).toEqual(vectorC);
|
|
41
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
42
|
+
// Subsequent chained adds should work as expected
|
|
43
|
+
const toAdd = { x: 1, y: 1, z: 1 };
|
|
44
|
+
const resultTwo = vectorA.add(toAdd).add(toAdd).add(toAdd);
|
|
45
|
+
(0, vitest_1.expect)(resultTwo).toEqual({ x: 8, y: 10, z: 12 });
|
|
46
|
+
(0, vitest_1.expect)(resultTwo).toBe(vectorA); // Referential equality must be preserved
|
|
47
|
+
});
|
|
48
|
+
(0, vitest_1.it)('should be able to subtract a vector3 with the same result as the coreHelpers function', () => {
|
|
49
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(5, 7, 9);
|
|
50
|
+
const vectorB = new vectorWrapper_1.Vector3Builder(4, 5, 6);
|
|
51
|
+
const vectorC = coreHelpers_1.Vector3Utils.subtract(vectorA, vectorB);
|
|
52
|
+
const result = vectorA.subtract(vectorB);
|
|
53
|
+
(0, vitest_1.expect)(result).toEqual(vectorC);
|
|
54
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
55
|
+
// Subsequent chained subtracts should work as expected
|
|
56
|
+
const toSubtract = { x: 1, y: 1, z: 1 };
|
|
57
|
+
const resultTwo = vectorA.subtract(toSubtract).subtract(toSubtract).subtract(toSubtract);
|
|
58
|
+
(0, vitest_1.expect)(resultTwo).toEqual({ x: -2, y: -1, z: 0 });
|
|
59
|
+
(0, vitest_1.expect)(resultTwo).toBe(vectorA); // Referential equality must be preserved
|
|
60
|
+
});
|
|
61
|
+
(0, vitest_1.it)('should be able to scale a vector3 with the same result as the coreHelpers function', () => {
|
|
62
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
63
|
+
const vectorB = coreHelpers_1.Vector3Utils.scale(vectorA, 3);
|
|
64
|
+
const result = vectorA.scale(3);
|
|
65
|
+
(0, vitest_1.expect)(result).toEqual(vectorB);
|
|
66
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
67
|
+
// Subsequent chained subtracts should work as expected
|
|
68
|
+
const resultTwo = vectorA.scale(3).scale(3);
|
|
69
|
+
(0, vitest_1.expect)(resultTwo).toEqual({ x: 27, y: 54, z: 81 });
|
|
70
|
+
(0, vitest_1.expect)(resultTwo).toBe(vectorA); // Referential equality must be preserved
|
|
71
|
+
});
|
|
72
|
+
(0, vitest_1.it)('should be able to compute the dot product with the same result as the coreHelpers function', () => {
|
|
73
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
74
|
+
const vectorB = new vectorWrapper_1.Vector3Builder(4, 5, 6);
|
|
75
|
+
const dotProduct = coreHelpers_1.Vector3Utils.dot(vectorA, vectorB);
|
|
76
|
+
const result = vectorA.dot(vectorB);
|
|
77
|
+
(0, vitest_1.expect)(result).toEqual(dotProduct);
|
|
78
|
+
});
|
|
79
|
+
(0, vitest_1.it)('should be able to compute the cross product with the same result as the coreHelpers function', () => {
|
|
80
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
81
|
+
const vectorB = new vectorWrapper_1.Vector3Builder(4, 5, 6);
|
|
82
|
+
const vectorC = coreHelpers_1.Vector3Utils.cross(vectorA, vectorB);
|
|
83
|
+
const result = vectorA.cross(vectorB);
|
|
84
|
+
(0, vitest_1.expect)(result).toEqual(vectorC);
|
|
85
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
86
|
+
// Subsequent chained subtracts should work as expected
|
|
87
|
+
const toCross = { x: 1, y: 1, z: 1 };
|
|
88
|
+
const resultTwo = vectorA.cross(toCross).cross(toCross);
|
|
89
|
+
(0, vitest_1.expect)(resultTwo).toEqual({ x: 9, y: -18, z: 9 });
|
|
90
|
+
(0, vitest_1.expect)(resultTwo).toBe(vectorA); // Referential equality must be preserved
|
|
91
|
+
});
|
|
92
|
+
(0, vitest_1.it)('should be able to compute the magnitude with the same result as the coreHelpers function', () => {
|
|
93
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
94
|
+
const mag = coreHelpers_1.Vector3Utils.magnitude(vectorA);
|
|
95
|
+
(0, vitest_1.expect)(vectorA.magnitude()).toEqual(mag);
|
|
96
|
+
});
|
|
97
|
+
(0, vitest_1.it)('should be able to normalize the vector with the same result as the coreHelpers function', () => {
|
|
98
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
99
|
+
const vectorB = coreHelpers_1.Vector3Utils.normalize(vectorA);
|
|
100
|
+
const result = vectorA.normalize();
|
|
101
|
+
(0, vitest_1.expect)(result).toEqual(vectorB);
|
|
102
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
103
|
+
});
|
|
104
|
+
(0, vitest_1.it)('should be able to compute the floor of the vector with the same result as the coreHelpers function', () => {
|
|
105
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1.33, 2.14, 3.55);
|
|
106
|
+
const vectorB = coreHelpers_1.Vector3Utils.floor(vectorA);
|
|
107
|
+
const result = vectorA.floor();
|
|
108
|
+
(0, vitest_1.expect)(result).toEqual(vectorB);
|
|
109
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
110
|
+
});
|
|
111
|
+
(0, vitest_1.it)('should be able to clamp the vector with the same result as the coreHelpers function', () => {
|
|
112
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1, 2, 3);
|
|
113
|
+
const minVec = { x: 0, y: 1.5 };
|
|
114
|
+
const maxVec = { x: 2, z: 2.5 };
|
|
115
|
+
const vectorB = coreHelpers_1.Vector3Utils.clamp(vectorA, { min: minVec, max: maxVec });
|
|
116
|
+
const result = vectorA.clamp({ min: minVec, max: maxVec });
|
|
117
|
+
(0, vitest_1.expect)(result).toEqual(vectorB);
|
|
118
|
+
(0, vitest_1.expect)(vectorA).toBe(result); // Referential equality must be preserved
|
|
119
|
+
});
|
|
120
|
+
(0, vitest_1.it)('should be able to compute a string representation of the vector with the same result as the coreHelpers function', () => {
|
|
121
|
+
const vectorA = new vectorWrapper_1.Vector3Builder(1.33, 2.14, 3.55);
|
|
122
|
+
const vectorB = coreHelpers_1.Vector3Utils.toString(vectorA, { decimals: 1, delimiter: ' ' });
|
|
123
|
+
const result = vectorA.toString({ decimals: 1, delimiter: ' ' });
|
|
124
|
+
(0, vitest_1.expect)(result).toEqual(vectorB);
|
|
125
|
+
});
|
|
126
|
+
});
|
|
127
|
+
(0, vitest_1.describe)('Vector2Builder', () => {
|
|
128
|
+
(0, vitest_1.it)('should be able to compute a string representation of the vector with the same result as the coreHelpers function', () => {
|
|
129
|
+
const vectorA = new vectorWrapper_1.Vector2Builder(1.33, 2.14);
|
|
130
|
+
const vectorB = coreHelpers_1.Vector2Utils.toString(vectorA, { decimals: 1, delimiter: ' ' });
|
|
131
|
+
const result = vectorA.toString({ decimals: 1, delimiter: ' ' });
|
|
132
|
+
(0, vitest_1.expect)(result).toEqual(vectorB);
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
//# sourceMappingURL=vectorWrapper.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vectorWrapper.test.js","sourceRoot":"","sources":["../../src/vector3/vectorWrapper.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@minecraft/math",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"author": "Raphael Landaverde (rlanda@microsoft.com)",
|
|
5
|
+
"description": "Math utilities for use with minecraft scripting modules",
|
|
6
|
+
"main": "lib/index.js",
|
|
7
|
+
"types": "lib/types/math-public.d.ts",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"build": "just build",
|
|
10
|
+
"lint": "just lint",
|
|
11
|
+
"test": "just test",
|
|
12
|
+
"clean": "just clean"
|
|
13
|
+
},
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"lib",
|
|
18
|
+
"api-report"
|
|
19
|
+
],
|
|
20
|
+
"dependencies": {
|
|
21
|
+
"@minecraft/server": "^1.6.0"
|
|
22
|
+
},
|
|
23
|
+
"devDependencies": {
|
|
24
|
+
"@minecraft/core-build-tasks": "*",
|
|
25
|
+
"@minecraft/tsconfig": "*",
|
|
26
|
+
"just-scripts": "^2.2.1",
|
|
27
|
+
"vitest": "^0.34.6"
|
|
28
|
+
}
|
|
29
|
+
}
|