- Exciting news!Announcing our $4.6M Series Seed. Learn more →

trigonometry-equations

Advanced tools

Trigonometry rules to solve equations for angles and sides

- 2.0.1latest

- Version published

- Maintainers
- 1

- Yearly downloads
- 7,273
- increased by89.35%

Weekly downloads

Readme

Trigonometry rules to solve equations for angles and sides

Run:

```
npm install trigonometry-equations --save
```

- Construct an object mapping angles and sides to their respective objects where the key is a number in the range [0, 3) and the value is the given number.
- Pass the object to an equation function that corresponds with an appropriate mathematical rule.
- The function will return an object similar to the input except it will include a key-value pair containing the solution with full numerical precision.

```
import {
ambiguousCaseRule,
angleRule,
cosineRule,
sineRule
} from 'trigonometry-equations';
// ES5 / CommonJS require works in addition to ES6 import
// var equations = require('trigonometry-equations');
// In ES5 call equations.sineRule, etc
let unsolvedTriangle = {
angles: { 1: 35, 2: 105 },
sides: { 1: 7 }
};
console.log(sineRule(unsolvedTriangle));
/*
{
angles: { 1: 35, 2: 105 },
sides: { 1: 7, 2: 11.788282006559363 }
}
*/
unsolvedTriangle = {
angles: { 2: 59 },
sides: { 0: 3.6, 1: 5.3 }
};
console.log(cosineRule(unsolvedTriangle));
/*
{
angles: { 2: 59 },
sides: { 0: 3.6, 1: 5.3, 2: 4.6255969410912074 }
}
*/
/*
cosineRule has an optional parameter
allowing you to specify the angle solved
when you pass it three sides.
If you don't pass in this parameter it will
solve the first unsolved angle of the triangle.
*/
unsolvedTriangle = {
sides: { 0: 8, 1: 5, 2: 9 }
};
const findAngle = {
findAngle: 1
};
console.log(cosineRule(unsolvedTriangle, findAngle));
/*
{
angles: { 1: 33.55730976192071 },
sides: { 0: 8, 1: 5, 2: 9 }
}
*/
unsolvedTriangle = {
angles: { 0: 60, 1: 60 },
sides: { 1: 20 }
};
console.log(angleRule(unsolvedTriangle));
/*
{
angles: { 0: 60, 1: 60, 2: 60 },
sides: { 1: 20 }
}
*/
unsolvedTriangle = {
angles: { 1: 39 },
sides: { 1: 28, 2: 41 }
};
// if there is no solution ambiguousCaseRule will return null
console.log(ambiguousCaseRule(unsolvedTriangle));
/*
{
ambiguous: {
angles: { 0: 28.147082985775114, 1: 39, 2: 112.85291701422489 },
sides: { 0: 20.988713127721486, 1: 28, 2: 41 }
}
}
*/
```

A new function or a fixed regression should include matching test coverage. Commits should adhere to cz-conventional-changelog which can be done easily by running git cz or npm run commit.

MIT License Copyright (c) 2017 Calvin Mikael

Trigonometry rules to solve equations for angles and sides

The npm package trigonometry-equations receives a total of **92** weekly downloads. As such, trigonometry-equations popularity was classified as **not popular**.

We found that trigonometry-equations demonstrated a **not healthy** version release cadence and project activity. It has **1 open source maintainer** collaborating on the project.