Advertisement
Guest User

Untitled

a guest
Oct 25th, 2014
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.44 KB | None | 0 0
  1. <canvas id="myCanvas" width="500" height="500"></canvas>
  2. <div class="fillMe"></div>
  3. <style>
  4. #myCanvas {
  5. border: 1px solid #DDD;
  6. }
  7. </style>
  8. <script>
  9. var c = document.getElementById("myCanvas");
  10. var ctx = c.getContext("2d");
  11. $(".fillMe").html(stacker);
  12.  
  13.  
  14. stacker+= 0.5;
  15. if (stacker > 90) {
  16. stacker = -90;
  17. }
  18.  
  19. //for (ex = -200; ex < 200; ex+= 0.5) {}
  20.  
  21. var node0 = [-100, -100, -100];
  22. var node1 = [-100, -100, 100];
  23. var node2 = [-100, 100, -100];
  24. var node3 = [-100, 100, 100];
  25. var node4 = [ 100, -100, -100];
  26. var node5 = [ 100, -100, 100];
  27. var node6 = [ 100, 100, -100];
  28. var node7 = [ 100, 100, 100];
  29. var nodes = [node0, node1, node2, node3, node4, node5, node6, node7];
  30.  
  31.  
  32. var edge0 = [0, 1];
  33. var edge1 = [1, 3];
  34. var edge2 = [3, 2];
  35. var edge3 = [2, 0];
  36. var edge4 = [4, 5];
  37. var edge5 = [5, 7];
  38. var edge6 = [7, 6];
  39. var edge7 = [6, 4];
  40. var edge8 = [0, 4];
  41. var edge9 = [1, 5];
  42. var edge10 = [2, 6];
  43. var edge11 = [3, 7];
  44. var edges = [edge0, edge1, edge2, edge3, edge4, edge5, edge6, edge7, edge8, edge9, edge10, edge11];
  45.  
  46.  
  47. // Rotate shape around the x y z axis
  48.  
  49. var rotateX3D = function(theta) {
  50. var sin_t = Math.sin(theta*(Math.PI/180));
  51. var cos_t = Math.cos(theta*(Math.PI/180));
  52.  
  53. for (var n=0; n<nodes.length; n++) {
  54. var node = nodes[n];
  55. var y = node[1];
  56. var z = node[2];
  57. node[1] = y * cos_t - z * sin_t;
  58. node[2] = z * cos_t + y * sin_t;
  59. }
  60. };
  61.  
  62. var rotateZ3D = function(theta) {
  63.  
  64. var sin_t = Math.sin(theta*(Math.PI/180));
  65. var cos_t = Math.cos(theta*(Math.PI/180));
  66.  
  67. for (var n=0; n<nodes.length; n++) {
  68. var node = nodes[n];
  69. var x = node[0];
  70. var y = node[1];
  71. node[0] = x * cos_t - y * sin_t;
  72. node[1] = y * cos_t + x * sin_t;
  73. }
  74. };
  75.  
  76.  
  77. rotateZ3D(stacker);
  78. rotateX3D(stacker);
  79.  
  80.  
  81. //ctx.fillRect(node7[0], node7[0], 5, 5);
  82.  
  83. // Draw nodes
  84. ctx.fillStyle = "#000";
  85. for (var n=0; n<nodes.length; n++) {
  86.  
  87. var node = nodes[n];
  88.  
  89. ctx.fillRect(250+node[0]-3/2, 250+node[1]-3/2, 3, 3);
  90.  
  91.  
  92.  
  93. }
  94.  
  95.  
  96. // Draw edges
  97.  
  98. for (var e=0; e<edges.length; e++) {
  99.  
  100. var n0 = edges[e][0];
  101. var n1 = edges[e][1];
  102. var node0 = nodes[n0];
  103. var node1 = nodes[n1];
  104.  
  105. ctx.beginPath();
  106. ctx.moveTo(250+node0[0], 250+node0[1]);
  107. ctx.lineTo(250+node1[0], 250+node1[1]);
  108. ctx.stroke();
  109.  
  110. }
  111.  
  112.  
  113. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement