Skip to content

Commit 92b9e8b

Browse files
committed
Some of the properties also need truncation
1 parent 008838a commit 92b9e8b

5 files changed

Lines changed: 32 additions & 17 deletions

File tree

packages/turf-directional-mean/test.ts

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import path from "path";
33
import { fileURLToPath } from "url";
44
import { loadJsonFileSync } from "load-json-file";
55
import { writeJsonFileSync } from "write-json-file";
6-
import { directionalMean } from "./index.js";
6+
import { directionalMean, DirectionalMeanLine } from "./index.js";
77
import { truncate } from "@turf/truncate";
88

99
const __dirname = path.dirname(fileURLToPath(import.meta.url));
@@ -45,28 +45,28 @@ test("turf-directional-mean", (t) => {
4545
planar: true,
4646
segment: false,
4747
});
48-
truncate(utmResult1, { mutate: true, precision: 8 });
48+
trunc(utmResult1);
4949
t.deepEqual(utmResult1, loadJsonFileSync(outUtmJsonPath1), "utm");
5050
// utm segment
5151
let utmResult2 = directionalMean(utmGeojson, {
5252
planar: true,
5353
segment: true,
5454
});
55-
truncate(utmResult2, { mutate: true, precision: 8 });
55+
trunc(utmResult2);
5656
t.deepEqual(utmResult2, loadJsonFileSync(outUtmJsonPath2), "utm segment");
5757

5858
// gps
5959
let gpsResult1 = directionalMean(gpsGeojson, {
6060
planar: false,
6161
});
62-
truncate(gpsResult1, { mutate: true, precision: 8 });
62+
trunc(gpsResult1);
6363
t.deepEqual(gpsResult1, loadJsonFileSync(outGpsJsonPath1), "gps");
6464
// gps segment
6565
let gpsResult2 = directionalMean(gpsGeojson, {
6666
planar: false,
6767
segment: true,
6868
});
69-
truncate(gpsResult2, { mutate: true, precision: 8 });
69+
trunc(gpsResult2);
7070
t.deepEqual(gpsResult2, loadJsonFileSync(outGpsJsonPath2), "gps segment");
7171

7272
if (process.env.REGEN) {
@@ -78,3 +78,18 @@ test("turf-directional-mean", (t) => {
7878

7979
t.end();
8080
});
81+
82+
function trunc(d: DirectionalMeanLine) {
83+
truncate(d, { mutate: true, precision: 8 });
84+
85+
const f = Math.pow(10, 10);
86+
const props: (keyof typeof d.properties)[] = [
87+
"cartesianAngle",
88+
"bearingAngle",
89+
"circularVariance",
90+
];
91+
92+
for (const k of props) {
93+
d.properties[k] = Math.round(d.properties[k] * f) / f;
94+
}
95+
}

packages/turf-directional-mean/test/out/bus_route_gps1.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
"averageLength": 24840.40218696326,
55
"averageX": 114.0481498585655,
66
"averageY": 22.6359322404607,
7-
"bearingAngle": 152.4762364581471,
8-
"cartesianAngle": -62.47623645814709,
9-
"circularVariance": 0.9560327266298566,
7+
"bearingAngle": 152.4762364581,
8+
"cartesianAngle": -62.4762364581,
9+
"circularVariance": 0.9560327266,
1010
"countOfLines": 539
1111
},
1212
"geometry": {

packages/turf-directional-mean/test/out/bus_route_gps2.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
"averageLength": 48.42971829319359,
55
"averageX": 114.06007706366387,
66
"averageY": 22.632852642469093,
7-
"bearingAngle": 126.93706469094448,
8-
"cartesianAngle": -36.937064690944474,
9-
"circularVariance": 0.9946441590238698,
7+
"bearingAngle": 126.9370646909,
8+
"cartesianAngle": -36.9370646909,
9+
"circularVariance": 0.994644159,
1010
"countOfLines": 276462
1111
},
1212
"geometry": {

packages/turf-directional-mean/test/out/bus_route_utm1.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
"averageLength": 24865.8833845794,
55
"averageX": 813350.6889736726,
66
"averageY": 2506449.133536962,
7-
"bearingAngle": 152.504692687896,
8-
"cartesianAngle": -62.504692687896025,
9-
"circularVariance": 0.9540978955813745,
7+
"bearingAngle": 152.5046926879,
8+
"cartesianAngle": -62.5046926879,
9+
"circularVariance": 0.9540978956,
1010
"countOfLines": 538
1111
},
1212
"geometry": {

packages/turf-directional-mean/test/out/bus_route_utm2.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
"averageLength": 48.416925614400036,
55
"averageX": 814546.9056864326,
66
"averageY": 2506121.0821411484,
7-
"bearingAngle": 125.92398812851624,
8-
"cartesianAngle": -35.92398812851625,
9-
"circularVariance": 0.9946649189247785,
7+
"bearingAngle": 125.9239881285,
8+
"cartesianAngle": -35.9239881285,
9+
"circularVariance": 0.9946649189,
1010
"countOfLines": 276462
1111
},
1212
"geometry": {

0 commit comments

Comments
 (0)