mathsass

0.11.0 • Public • Published

MathSass NPM version Build Status Dependency Status devDependency Status

A Sass implementation of mathematical functions.

Install

Git

git clone git@github.com:terkel/mathsass.git && cd mathsass

Bower

bower install mathsass --save-dev

npm

npm install mathsass --save-dev

Usage

Import dist/_math.scss partial to the Sass document.

@import "path/to/dist/math";
 
.content {
    height: 200px;
    width: 200px / tan(60deg); // 115.47005px 
}

If you installed via Npm the path will be: node_modules/mathsass/dist/math

If you installed via Bower the path will be: bower_components/mathsass/dist/math

Features

Constants

  • $E - Euler's constant (ネイピア数 [オイラー数])
  • $PI - π (円周率)
  • $LN2 - The natural logarithm of 2 (2 の自然対数)
  • $SQRT2 - The square root of 2 (2 の平方根)

Functions

Exponentiation

  • pow($base, $exp)
@debug pow(4, 2);   // 16 
@debug pow(4, -2);  // 0.0625 
@debug pow(4, 0.2); // 1.31951 

Factorial

  • fact($x)
@debug fact(4); // 24 
@debug fact(8); // 40320 

Square root

  • sqrt($x)
@debug sqrt(2); // 1.41421 
@debug sqrt(3); // 1.73205 

Exponential function

  • exp($x)
  • frexp($x)
  • ldexp($x, $exp)
@debug exp(-1); // 0.36788 
@debug exp(0);  // 1 
@debug exp(1);  // 2.71828 

Logarithms

  • log($x, $b: null)
@debug log(2);     // 0.69315 
@debug log(10);    // 2.30259 
@debug log(2, 10); // 0.30103 

Trigonometric functions

  • sin($x) - Sine (正弦)
  • cos($x) - Cosine (余弦)
  • tan($x) - Tangent (正接)
  • csc($x) - Cosecant (余割)
  • sec($x) - Secant (正割)
  • cot($x) - Cotangent (余接)

If argument has deg unit, converted to rad.

@debug tan(0.5236); // 0.57735 
@debug tan(30deg);  // 0.57735 

Inverse trigonometric functions

  • asin($x) - Arcsine (逆正弦)
  • acos($x) - Arccosine (逆余弦)
  • atan($x) - Arctangent (逆正接)
  • atan2($y, $x) - Arctangent of the quotient of its arguments (引数の比率での逆正接)
@debug atan2(0, 0);       // 0 
@debug atan2(0, -0.0);    // 3.14159 
@debug atan2(-0.0, 0);    // 0 
@debug atan2(-0.0, -0.0); // -3.14159 

Greatest common divisor and least common multiple

  • gcd($a, $b) - Greatest common divisor (最大公約数)
  • lcm($a, $b) - Least common multiple (最小公倍数)
@debug gcd(54, 24); // 6 
@debug lcm(30, 42); // 210 

Helper functions

  • strip-unit($number)
  • deg-to-rad($deg, $unit: true)
  • rad-to-deg($rad, $unit: true)
  • unitless-rad($angle)
@debug rad-to-deg(1.0472);       // 60.00014deg 
@debug deg-to-rad(60deg);        // 1.0472rad 
@debug deg-to-rad(60deg, false); // 1.0472 
@debug unitless-rad(60deg);      // 1.0472 
@debug unitless-rad(1.0472rad);  // 1.0472 

References

…and Wikipedia articles:

Contributing

Make sure you have node.js and grunt installed.

Clone Repository

git clone git@github.com:terkel/mathsass.git

Install Dependencies

npm install

Run Sass/Tests

grunt

Credits

Originally created with help from @kaminaly and @pilssalgi.

License

Copyright (c) 2013 Takeru Suzuki Licensed under the MIT license.

Readme

Keywords

Package Sidebar

Install

npm i mathsass

Weekly Downloads

8,849

Version

0.11.0

License

none

Unpacked Size

18.2 kB

Total Files

28

Last publish

Collaborators

  • terkel