math bench
This commit is contained in:
parent
239f1ac766
commit
20e6174658
20
deno.lock
generated
20
deno.lock
generated
@ -2,6 +2,10 @@
|
|||||||
"version": "4",
|
"version": "4",
|
||||||
"specifiers": {
|
"specifiers": {
|
||||||
"jsr:@bearmetal/doodler@0.0.5-c": "0.0.5-c",
|
"jsr:@bearmetal/doodler@0.0.5-c": "0.0.5-c",
|
||||||
|
"jsr:@std/assert@*": "1.0.10",
|
||||||
|
"jsr:@std/assert@^1.0.10": "1.0.10",
|
||||||
|
"jsr:@std/internal@^1.0.5": "1.0.5",
|
||||||
|
"jsr:@std/testing@*": "1.0.8",
|
||||||
"npm:@deno/vite-plugin@^1.0.4": "1.0.4_vite@6.1.0",
|
"npm:@deno/vite-plugin@^1.0.4": "1.0.4_vite@6.1.0",
|
||||||
"npm:@types/node@*": "22.5.4",
|
"npm:@types/node@*": "22.5.4",
|
||||||
"npm:vite@*": "6.1.0",
|
"npm:vite@*": "6.1.0",
|
||||||
@ -11,6 +15,22 @@
|
|||||||
"jsr": {
|
"jsr": {
|
||||||
"@bearmetal/doodler@0.0.5-c": {
|
"@bearmetal/doodler@0.0.5-c": {
|
||||||
"integrity": "34b0db85af1393b1b01622915963a8b33ee923c14b381afe9c771efd3d631cf1"
|
"integrity": "34b0db85af1393b1b01622915963a8b33ee923c14b381afe9c771efd3d631cf1"
|
||||||
|
},
|
||||||
|
"@std/assert@1.0.10": {
|
||||||
|
"integrity": "59b5cbac5bd55459a19045d95cc7c2ff787b4f8527c0dd195078ff6f9481fbb3",
|
||||||
|
"dependencies": [
|
||||||
|
"jsr:@std/internal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"@std/internal@1.0.5": {
|
||||||
|
"integrity": "54a546004f769c1ac9e025abd15a76b6671ddc9687e2313b67376125650dc7ba"
|
||||||
|
},
|
||||||
|
"@std/testing@1.0.8": {
|
||||||
|
"integrity": "ceef535808fb7568e91b0f8263599bd29b1c5603ffb0377227f00a8ca9fe42a2",
|
||||||
|
"dependencies": [
|
||||||
|
"jsr:@std/assert@^1.0.10",
|
||||||
|
"jsr:@std/internal"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"npm": {
|
"npm": {
|
||||||
|
32
src/test/angleMathBench.test.ts
Normal file
32
src/test/angleMathBench.test.ts
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
/// <reference no-default-lib="true" />
|
||||||
|
/// <reference lib="esnext" />
|
||||||
|
/// <reference lib="dom" />
|
||||||
|
/// <reference lib="dom.iterable" />
|
||||||
|
/// <reference lib="dom.asynciterable" />
|
||||||
|
/// <reference lib="deno.ns" />
|
||||||
|
|
||||||
|
import { averageAngles, lerpAngle } from "../math/lerp.ts";
|
||||||
|
import { testPerformance } from "./bench.ts";
|
||||||
|
|
||||||
|
Deno.test("angle math", () => {
|
||||||
|
console.log("Average angles");
|
||||||
|
testPerformance(
|
||||||
|
() => {
|
||||||
|
const a = Math.random() * Math.PI * 2;
|
||||||
|
const b = Math.random() * Math.PI * 2;
|
||||||
|
const avg = averageAngles(a, b);
|
||||||
|
},
|
||||||
|
10000,
|
||||||
|
60,
|
||||||
|
);
|
||||||
|
console.log("Lerp angles");
|
||||||
|
testPerformance(
|
||||||
|
() => {
|
||||||
|
const a = Math.random() * Math.PI * 2;
|
||||||
|
const b = Math.random() * Math.PI * 2;
|
||||||
|
const avg = lerpAngle(a, b, .5);
|
||||||
|
},
|
||||||
|
10000,
|
||||||
|
60,
|
||||||
|
);
|
||||||
|
});
|
@ -310,7 +310,7 @@ export class TrainCar extends Debuggable {
|
|||||||
for (const p of ps) {
|
for (const p of ps) {
|
||||||
doodler.dot(p.pos, { color: "green" });
|
doodler.dot(p.pos, { color: "green" });
|
||||||
doodler.fillText(
|
doodler.fillText(
|
||||||
p.angle.toFixed(1).toString(),
|
p.angle.toFixed(2).toString(),
|
||||||
p.pos.copy().add(0, 20),
|
p.pos.copy().add(0, 20),
|
||||||
100,
|
100,
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user