Source: swcad-js-data/src/constants/index.js

"use strict"

const tri30Factor = Math.sqrt(3)
const tri45Factor = Math.sqrt(2)
const eqTriHeightFactor = tri30Factor / 2

const phi = 1.6180339887

/**
 * System constants
 * @namespace constants
 * @memberof data
 */

const constants = {
    /**
     * Inches / Millimetre conversion rate
     * @memberof data.constants
     * @constant {number}
     */
    INCHES_MM_FACTOR: 25.4,
    /**
     * Golden ratio
     * @memberof data.constants
     * @constant {number}
     */
    PHI: phi,
    /**
     * Golden ratio inverse
     * @memberof data.constants
     * @constant {number}
     */
    PHI_INV: 1 / phi,
    /**
     * Ratio of equilateral triangle's height to its side length
     * @memberof data.constants
     * @constant {number}
     */
    EQUI_TRIANGLE_HEIGHT_FACTOR: eqTriHeightFactor,
    /**
     * Tri_45_Factor
     * @memberof data.constants
     * @constant {number}
     */
    TRI_45_FACTOR: tri45Factor,
    /**
     * Tri_30_Factor
     * @memberof data.constants
     * @constant {number}
     */
    TRI_30_FACTOR: tri30Factor,
    /**
     * Plastic_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    PLASTIC_RATIO: 1.3247179572,
    /**
     * Supergolden_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    SUPERGOLDEN_RATIO: 1.4655712319,
    /**
     * Golden_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    GOLDEN_RATIO: phi,
    /**
     * Silver_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    SILVER_RATIO: 1 + tri45Factor,         // 2.4142
    /**
     * Bronze_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    BRONZE_RATIO: 3 + Math.sqrt(13) / 2,     // 3.3028
    /**
     * Copper_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    COPPER_RATIO: 2 + Math.sqrt(5),     // 4.2361
    /**
     * Nickel_Ratio
     * @memberof data.constants
     * @constant {number}
     */
    NICKEL_RATIO: 5 + Math.sqrt(29),     // 5.1925
}

module.exports = constants;