Skip to content

webarkit/OneEuroFilter-ts

Folders and files

NameName
Last commit message
Last commit date
Mar 20, 2025
Apr 1, 2023
Mar 20, 2025
Dec 10, 2024
Mar 31, 2023
Mar 31, 2023
Dec 10, 2024
Mar 20, 2025
Mar 20, 2025
Dec 10, 2024
Mar 31, 2023

Repository files navigation

OneEuroFilter-ts

This code is a translation to Typescript of the original code from Jaan Tollander. It's not well tested yet, so I can not assure of the correctness of the code.

Installation

Install with npm:

npm install @webarkit/oneeurofilter-ts

Install with yarn:

yarn add @webarkit/oneeurofilter-ts

Usage

In a typescript file:

// import the OneEuroFilter class into your project
import { OneEuroFilter } from "@webarkit/oneeurofilter-ts";

let filterMinCF: number = 0.0001;
let filterBeta: number = 0.01;
const filter = new OneEuroFilter(filterMinCF, filterBeta);

/* yourData is the data you want to filter, createData() is a dummy function here, 
use it you method or data instead...
*/
let yourData = createData();

// filter the data (yourData) with the filter method
filter.filter(Date.now(), yourData);

// then use yourData...

In a javascript file:

// import the OneEuroFilter class into your project
import { OneEuroFilter } from "@webarkit/oneeurofilter-ts";

let filterMinCF = 0.0001;
let filterBeta = 0.01;
const filter = new OneEuroFilter(filterMinCF, filterBeta);

/* yourData is the data you want to filter, createData() is a dummy function here, 
use it you method or data instead...
*/
let yourData = createData();

// filter the data (yourData) with the filter method
filter.filter(Date.now(), yourData);
// then use yourData...

in a html script tag with module support:

<script type="importmap">
    {
    "imports": {
        "oef": "https://raw.github.com/webarkit/oneeurofilter-ts/main/dist/OneEuroFilter.mjs",
        }
    }
</script>

// import the OneEuroFilter class into your project

<script type="module">

import { OneEuroFilter } from "oef";

let filterMinCF = 0.0001;
let filterBeta = 0.01;
const filter = new OneEuroFilter(filterMinCF, filterBeta);

/* yourData is the data you want to filter, createData() is a dummy function here, 
use it you method or data instead...
*/
let yourData = createData();

// filter the data (yourData) with the filter method
filter.filter(Date.now(), yourData);

// then use yourData...
</script>