{"id":145,"date":"2013-07-10T09:59:25","date_gmt":"2013-07-10T05:59:25","guid":{"rendered":"http:\/\/infobs.athn.ru\/?p=145"},"modified":"2013-07-10T09:59:25","modified_gmt":"2013-07-10T05:59:25","slug":"derevo-pifagora","status":"publish","type":"post","link":"https:\/\/infobase.athn.ru\/program\/2013\/07\/derevo-pifagora\/","title":{"rendered":"\u0414\u0435\u0440\u0435\u0432\u043e \u041f\u0438\u0444\u0430\u0433\u043e\u0440\u0430"},"content":{"rendered":"<p>\u0421 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438<\/p>\n<pre>\n \n\n  <title>\u0414\u0435\u0440\u0435\u0432\u043e \u041f\u0438\u0444\u0430\u0433\u043e\u0440\u0430<\/title>\n  \n    \/\/ \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0440\u0438\u0441\u0443\u0435\u0442 \u043f\u043e\u0434 \u0443\u0433\u043b\u043e\u043c angle \u043b\u0438\u043d\u0438\u044e \u0438\u0437 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0434\u043b\u0438\u043d\u043e\u0439 ln\n    function drawLine(x, y, ln, angle)\n    {\n      context.moveTo(x, y);\n      context.lineTo(Math.round(x + ln * Math.cos(angle)), Math.round(y - ln * Math.sin(angle)));\n    }\n    \/\/ \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0440\u0438\u0441\u0443\u0435\u0442 \u0434\u0435\u0440\u0435\u0432\u043e\n    function drawTree(x, y, ln, minLn, angle)\n    {\n      if (ln &gt; minLn)\n      {\n        ln = ln * 0.75;\n        drawLine(x, y, ln, angle);\n        x = Math.round(x + ln * Math.cos(angle));\n        y = Math.round(y - ln * Math.sin(angle));\n        drawTree(x, y, ln, minLn, angle + Math.PI \/ 4);\n        drawTree(x, y, ln, minLn, angle - Math.PI \/ 6);\n        \/\/ \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0443\u0433\u043e\u043b Math.PI\/4 , \u0442\u043e \u0432\u044b\u0439\u0434\u0435\u0442 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0434\u0435\u0440\u0435\u0432\u043e\n      }\n    }\n    \/\/ \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445\n    function init()\n    {\n      var canvas  = document.getElementById(\"tree\");\n      var x       = 100 + (canvas.width \/ 2);\n      var y       = 170 + canvas.height;  \/\/ \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0441\u0442\u0432\u043e\u043b\u0430\n      var ln      = 120;                  \/\/ \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u043b\u0438\u043d\u0438\u0438\n      var minLn   = 5;                    \/\/ \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u043b\u0438\u043d\u0438\u0438\n \n      canvas.width  = 480; \/\/ \u0428\u0438\u0440\u0438\u043d\u0430 \u0445\u043e\u043b\u0441\u0442\u0430\n      canvas.height = 320; \/\/ \u0432\u044b\u0441\u043e\u0442\u0430 \u0445\u043e\u043b\u0441\u0442\u0430\n \n      context             = canvas.getContext(\"2d\");\n      context.fillStyle   = \"#ddf\"; \/\/ \u0446\u0432\u0435\u0442 \u0444\u043e\u043d\u0430\n      context.strokeStyle = \"#020\"; \/\/\u0446\u0432\u0435\u0442 \u043b\u0438\u043d\u0438\u0439\n      context.fillRect(0, 0, canvas.width, canvas.height);\n      context.lineWidth = 2; \/\/ \u0448\u0438\u0440\u0438\u043d\u0430 \u043b\u0438\u043d\u0438\u0439\n      context.beginPath();\n      drawTree(x, y, ln, minLn, Math.PI \/ 2);\n      context.stroke();\n    }\n \n    window.onload = init;\n  \n\n\n  \n \n\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u0421 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438 \u0414\u0435\u0440\u0435\u0432\u043e \u041f\u0438\u0444\u0430\u0433\u043e\u0440\u0430 \/\/ \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0440\u0438\u0441\u0443\u0435\u0442 \u043f\u043e\u0434 \u0443\u0433\u043b\u043e\u043c angle \u043b\u0438\u043d\u0438\u044e \u0438\u0437 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0434\u043b\u0438\u043d\u043e\u0439 ln function drawLine(x, y, ln, angle) { context.moveTo(x, y); context.lineTo(Math.round(x + ln * Math.cos(angle)), Math.round(y <a class=\"more-link\" href=\"https:\/\/infobase.athn.ru\/program\/2013\/07\/derevo-pifagora\/\">Continue Reading \u2192<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33,34,14],"tags":[67,310],"class_list":["post-145","post","type-post","status-publish","format-standard","hentry","category-html-css","category-javascript","category-math","tag-canvas","tag-fraktal"],"_links":{"self":[{"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/posts\/145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/comments?post=145"}],"version-history":[{"count":0,"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/posts\/145\/revisions"}],"wp:attachment":[{"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/media?parent=145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/categories?post=145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infobase.athn.ru\/program\/wp-json\/wp\/v2\/tags?post=145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}