Skip to content
harshit singhal edited this page Sep 20, 2020 · 23 revisions

Welcome to the Utility-HTML5Canvas wiki!

description


Stack.js

By default size of stack is set to 10. But knowing JavaScript's dynamic nature it's size can be stretched to any limit. So, to prevent this an error will be thrown and instruction will be stopped. I will be using 'myStack' as an example variable.

  • Create a new Stack Object:
    let myStack = new Stack();

  • Create a new Stack Object with size:
    let myStack = new Stack(size_of_your_choice);

  • Push elements into Stack:
    myStack.push(value);
    This function returns the stack array

  • Pop element from Stack:
    myStack.pop();
    This function returns the popped value

  • Peek elements of Stack:
    myStack.peek();
    This function also returns the stack array


Vector2D.js

Library only provides static function. I will be using 'v' as an example variable name.

  • Create a new (0,0) vector:
    let v = new Vector();

  • Create a new vector at (x,y):
    let v = new Vector(x, y);

  • Addition of Vectors:

    1. add two vector:
      Vector2D.add(vector_object, vector_object);
    2. addition of vector and a constant:
      Vector2D.add(vector_object, constant);
  • Scaling of Vectors:

    1. To a particular number:
      Vector2D.setMag(constant, vector_object);
    2. With a vector:
      Vector2D.mul(vector_object, vector_object);
    3. With a constant:
      Vector2D.mul(vector_object, constant);
  • Subtraction of Vectors:

    1. Subtract two vector:
      Vector2D.sub(vector_object, vector_object);
    2. Subtraction of vector and a constant:
      Vector2D.sub(vector_object, constant);
  • Division of Vectors:

    1. Divide two vector:
      Vector2D.div(vector_object, vector_object);
    2. Division of vector and a constant:
      Vector2D.div(vector_object, constant);
  • Dot Product of Vectors:
    Vector2D.dot(vector_object, vector_object);

  • Magnitude of Vector:
    Vector2D.magnitude(vector_object);

  • Normalization of Vectors:
    Vector2D.normalize(vector_object);

  • Limit the size of a Vector:
    Vector2D.limit(constant_limit, vector_object);

  • Distance between two Vectors:
    Vector2D.distance(vector_object, vector_object);

  • Angle between two Vectors:
    Vector2D.angleBetween(vector_object, vector_object);


Shapes.js

des...

  • Create a new Shapes object and provide canvas context interface as an argument.
    let s = new Shapes(canvas_context);

    For example:
    const ctx = document.querySelector('canvas').getContext('2d');<br> let s = new Shapes(ctx);

  • Lines:
    s.line(start_x, start_y, end_x, end_y, stroke_clr, fill_clr);

    For example:
    s.line(0, 0, 10, 10);<br> ctx.stroke();

  • Box:
    s.box(start_x, start_y, width, height, stroke_clr, fill_clr);

    For example:
    s.box(0, 0, 10, 10);<br> ctx.stroke();//to make a stroked box<br> ctx.fill(); //to make a filled box

  • Circle:
    s.circle(start_x, start_y, radii, stroke_clr, fill_clr);

    For example:
    s.circle(10, 10, 10);<br> ctx.stroke();//to make a stroked ball<br> ctx.fill(); //to make a filled ball

                                        +++++++++++++end++++++++++++++++
    
Clone this wiki locally