diff --git a/00130.платформы.js b/00130.платформы.js index 3b9e64b..92d37d9 100644 --- a/00130.платформы.js +++ b/00130.платформы.js @@ -10,27 +10,35 @@ задано: {}, тела: {}, div: {}, + transform: {}, обновить: function() { for (var имя in мир.платформы.тела) { var тело = мир.платформы.тела[имя]; + if (тело.isSleeping) + { + continue; + } var div = мир.платформы.div[имя]; let x = тело.bounds.min.x; let y = тело.bounds.min.y; let угол = тело.angle * (180 / Math.PI); - //div.style.transform = `translate(${x}px, ${y}px) rotate(${угол}deg)`; + div.style.transform = `translate(${x}px, ${y}px) rotate(${угол}deg)`; + /* div.style.transform = `rotate(${угол}deg)`; div.style.left = `${x}px`; div.style.top = `${y}px`; + */ + /* var задано = мир.платформы.задано[имя]; var умолчание = мир.платформы.умолчание; var ширина = задано["ширина"] ? задано["ширина"] : умолчание["ширина"]; var высота = задано["высота"] ? задано["высота"] : умолчание["высота"]; - div.style.transformOrigin = `${ширина / 2}px ${высота / 2}px`; + */ } @@ -93,6 +101,8 @@ console.debug("создать тело", тело); элемент.style.height = `${высота}px`; document.body.appendChild(элемент); мир.платформы.div[имя] = элемент; + + элемент.style.transformOrigin = `right bottom`; } // Обновить div. diff --git a/01300.пример.json.js b/01300.пример.json.js index 8ed4cf6..8b5b5e1 100644 --- a/01300.пример.json.js +++ b/01300.пример.json.js @@ -6,19 +6,23 @@ y: 500, ширина: 700, высота: 50, - цвет: "#550055", + цвет: "#55005555", }, квадрат1: { - x: 400, - y: 300, + x: 401, + y: 240, + ширина: 40, + высота: 20, статика: false, - цвет: "#aaaaaa", + цвет: "#aaaaaa55", }, квадрат2: { x: 415, y: 470, + ширина: 40, + высота: 20, статика: true, - цвет: "#aaffaa", + цвет: "#aaffaa55", }, }, спрайты: { diff --git a/index.html b/index.html index b307ee2..ad52820 100644 --- a/index.html +++ b/index.html @@ -24,5 +24,7 @@ + + diff --git a/raw/01.js b/raw/01.js new file mode 100644 index 0000000..74813c4 --- /dev/null +++ b/raw/01.js @@ -0,0 +1,34 @@ +// module aliases +var Engine = Matter.Engine, + Render = Matter.Render, + Runner = Matter.Runner, + Bodies = Matter.Bodies, + Composite = Matter.Composite; + +// create an engine +var engine = Engine.create({ + enableSleeping: true, +}); + +// create a renderer +var render = Render.create({ + element: document.body, + engine: engine +}); + +// create two boxes and a ground +var ground = Bodies.rectangle(400, 500, 700, 50, { isStatic: true }); +var boxA = Bodies.rectangle(401, 240, 40, 20); +var boxB = Bodies.rectangle(415, 470, 40, 20, { isStatic: true }); + +// add all of the bodies to the world +Composite.add(engine.world, [boxA, boxB, ground]); + +// run the renderer +Render.run(render); + +// create runner +var runner = Runner.create(); + +// run the engine +Runner.run(runner, engine); diff --git a/raw/index.html b/raw/index.html new file mode 100644 index 0000000..1406631 --- /dev/null +++ b/raw/index.html @@ -0,0 +1,23 @@ + + + + + mjs + + + + + + +