const PhSim = require("."); /** * @function * @param {Object} sim * @param {HTMLCanvasElement} canvas * @memberof PhSim */ PhSim.createFromCanvas = function(sim,canvas) { var o = Object.create(sim); o.canvas = canvas; return new PhSim(o); } /** * @function * @param {Object} sim * @param {HTMLElement} container * @memberof PhSim */ PhSim.createFromContainer = function(sim,container) { var o = Object.create(sim); o.container = container; return new PhSim(o); } /** * @function * @param {*} sim * @memberof PhSim.DymSim */ PhSim.createContainer = function(sim) { var container = document.createElement("div"); return this.createFromContainer(sim,container); } /** * @function * @param {String} jsonURL - URL For JSON File * @param {function} onload - Onload function * @memberof PhSim */ PhSim.loadFromJSON = function(jsonURL,onload) { var x = new XMLHttpRequest(); x.open("GET",jsonURL); var f = function(){ var o = PhSim.createContainer(JSON.parse(x.responseText)); onload(o); x.removeEventListener("load",f); } x.addEventListener("load",f) x.send(); } /** * @function * @memberof PhSim */ PhSim.prototype.configRender = function() { this.assignPhRender(new PhSim.PhRender(this.ctx)); if(!this.noCamera) { this.camera = new PhSim.Camera(this); this.camera.translate(-this.camera.x,-this.camera.y); } }