klevis-a / kinematics-vis

JavaScript application for visualizing and analyzing shoulder joint kinematics
https://shouldervis.chpc.utah.edu/kinevis/main.html
MIT License
4 stars 2 forks source link

Kinematics-Vis

This JavaScript application enables biomechanics researchers to visualize and analyze shoulder joint kinematics. It is built on top of three.js, a JavaScript 3D library. Although presently this application is specialized for analyzing and visualizing the shoulder joint, it should be easy to extend its functionality to other joints.

Kinematics-Vis has been peer-reviewed and accepted into the Journal of Open Source Software. Checkout the associated paper: DOI

Also, checkout the live code demo currently hosted at the University of Utah Center for High Performance Computing.

Installation

This repository depends on Yarn as a package manager. Please install Yarn before proceeding.

Clone repository
git clone https://github.com/klevis-a/kinematics-vis.git
cd kinematics-vis
Install dependencies and build
yarn install
yarn build
Download sample dataset
yarn fetch_data
Start webpack development server
yarn webpack serve
Access web application

http://localhost:9000/main.html

Usage

Instructions for interacting with the UI are provided within the web application. Once you access the web app click the question mark that appears at the top of the upper right quadrant. A simple way to provide an input dataset for the web app is to utilize the sample dataset (yarn fetch_data). Once the sample dataset has been downloaded, click the folder icon (top of the upper left quadrant), and select a trial to analyze.

Help

Analyzing your own datasets

To analyze your own data see INPUT_FILES.md for creating file formats compatible with this web app. To specify your own dataset directory edit the DATA_DIR variable within webpack.config.js.

Manual Testing of the User Interface

See MANUAL_TESTING.md for a list of test cases that cover the basic functionality of the user interface.

Contributing

See the CONTRIBUTING document for details on contributing to the project by reporting a bug, submitting a fix, or proposing new features.