Nutritious Pumpkin Mash

    ea-3d

    0.0.2 • Public • Published

    ea-3d

    Geometry Library

    https://github.com/hagb4rd/ea-3d.git

    Install

    npm install ea-3d --save

    Sample Code

     
    class Vector {
     
      constructor(x, y, z) {
        this.x = x;
        this.y = y;
        this.z = z;
      }
     
      static scale(k, v) {
        return new Vector(* v.x, k * v.y, k * v.z);
      }
     
      scale(k) {
        return Vector.scale(k, this);
      }
     
      static substract(v1, v2) {
        return new Vector(v1.x - v2.x, v1.y - v2.y, v1.z - v2.z);
      }
     
      substract(v2) {
        return Vector.substract(this, v2);
      }
     
      static add(v1, v2) {
        return new Vector(v1.x + v2.x, v1.y + v2.y, v1.z + v2.z);
      }
     
      add(v2) {
        return Vector.add(this, v2);
      }
     
      static dot(v1, v2) {
        return v1.x * v2.x + v1.y * v2.y + v1.z * v2.z;
      }
     
      dot(v2) {
        return Vector.dot(this, v2);
      }
     
      static length(v) {
        return Math.sqrt(v.x * v.x + v.y * v.y + v.z * v.z);
      }
     
      length() {
        return Vector.length(this)
      }
     
      static norm(v) {
        let length = Vector.length(v);
        let div = (length === 0) ? Infinity : 1.0 / length;
        return Vector.scale(div, v);
      }
     
      norm() {
        return Vector.norm(this);
      }
     
      static cross(v1, v2) {
        return new Vector(v1.y * v2.z - v1.z * v2.y,
          v1.z * v2.x - v1.x * v2.z,
          v1.x * v2.y - v1.y * v2.x);
      }
     
      cross(v2) {
        return Vector.cross(this, v2);
      }
     
    }
     
    exports.Vector = Vector;
     

    Install

    npm i ea-3d

    DownloadsWeekly Downloads

    0

    Version

    0.0.2

    License

    MIT

    Last publish

    Collaborators

    • hagb4rd