diagram.html 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>diagram.js</title>
  6. </head>
  7. <body>
  8. <script type="text/javascript" src="../build/diagram.js"></script>
  9. <script type="text/javascript">
  10. // Setup the display canvas
  11. var canvas = document.createElement("canvas");
  12. canvas.style.position = "absolute";
  13. canvas.style.width = "100%";
  14. canvas.style.height = "100%";
  15. canvas.style.top = "0px";
  16. canvas.style.left = "0px";
  17. canvas.width = window.innerWidth;
  18. canvas.height = window.innerHeight;
  19. canvas.oncontextmenu = function(event)
  20. {
  21. event.preventDefault();
  22. return false;
  23. };
  24. document.body.appendChild(canvas);
  25. window.onresize = function()
  26. {
  27. canvas.width = window.innerWidth;
  28. canvas.height = window.innerHeight;
  29. };
  30. // Create the diagram
  31. var group = new Diagram.Object2D();
  32. var image = new Diagram.Image("grid.png");
  33. image.position.set(-300, -400);
  34. image.scale.set(1, 1);
  35. image.layer = 5;
  36. group.add(image);
  37. var background = new Diagram.Image("hexagon.jpg");
  38. background.position.set(-300, -400);
  39. background.scale.set(1, 1);
  40. background.layer = -2;
  41. group.add(background);
  42. var boxA = new Diagram.Box(true);
  43. group.add(boxA);
  44. var text = new Diagram.Text();
  45. text.text = "diagram.js";
  46. boxA.add(text);
  47. var boxB = new Diagram.Box();
  48. boxB.position.set(100, 100);
  49. group.add(boxB);
  50. var circle = new Diagram.Circle();
  51. circle.radius = 40;
  52. circle.position.set(300, 0);
  53. group.add(circle);
  54. var line = new Diagram.Line();
  55. line.from = boxA.position;
  56. line.to = boxB.position;
  57. line.layer = -1;
  58. group.add(line);
  59. var line = new Diagram.Line();
  60. line.from = boxA.position;
  61. line.to = circle.position;
  62. line.layer = -1;
  63. group.add(line);
  64. var line = new Diagram.Line();
  65. line.from = boxB.position;
  66. line.to = circle.position;
  67. line.layer = -1;
  68. group.add(line);
  69. var viewport = new Diagram.Viewport();
  70. var renderer = new Diagram.Renderer(canvas);
  71. // Update and render the diagram
  72. function loop()
  73. {
  74. group.rotation += 0.001;
  75. image.rotation += 0.01;
  76. renderer.update(group, viewport);
  77. renderer.render(group, viewport);
  78. requestAnimationFrame(loop);
  79. }
  80. loop();
  81. </script>
  82. </body>
  83. </html>