X-Git-Url: http://git.scottworley.com/nt3d/blobdiff_plain/fc382d22506415e4c481587aad501e25b96f11ba..e06a4a20a8c49061c64714bf718061b5d695ef35:/torus_by_extrude.html

diff --git a/torus_by_extrude.html b/torus_by_extrude.html
index 323ad14..ef323a9 100644
--- a/torus_by_extrude.html
+++ b/torus_by_extrude.html
@@ -3,21 +3,20 @@
     <title>Torus by extrude</title>
     <script type="text/javascript" src="nt3d.js"></script>
     <script type="text/javascript">
-      function torus_by_extrude(torus_radius, cross_section_radius, long_steps, short_steps) {
-      	var cross_section = nt3d.circle(cross_section_radius, short_steps);
-      	var path = nt3d.circle(torus_radius, long_steps);
-      	var cross_section_normals = nt3d.rotate_about_origin(path, [0,0,1], Math.PI/2);
-      	var path_normals = [];
-      	path_normals.length = long_steps;
-      	for (var i = 0; i < long_steps; i++) {
-      		path_normals[i] = [0, 0, 1];
-      	}
-      	return nt3d.closed_extrude(cross_section, path, cross_section_normals, path_normals);
+      function torus_by_extrude(params) {
+      	var path = nt3d.circle(params.torus_radius, params.long_steps);
+      	path = nt3d.rotate_about_origin(path, [0,1,0], params.rotation * 2*Math.PI);
+      	return nt3d.closed_extrude(
+      	  path,
+	  nt3d.circle(params.cross_section_radius, params.short_steps),
+	  nt3d.shapenormals_from_closed_path(path),
+	  [0, 0, 1]);
       }
-      var params = [["Torus radus", 100],
-                    ["Cross section radius", 40],
-                    ["Steps around the long way", 50],
-                    ["Steps around the short way", 16]];
+      var params = [["torus_radius", 100],
+                    ["cross_section_radius", 40],
+                    ["rotation", 0.001, "Rotation (in turns)"],
+                    ["long_steps", 50, "Steps around the long way"],
+                    ["short_steps", 16, "Steps around the short way"]];
     </script>
   </head>
   <body onload="nt3d.framework(torus_by_extrude, params)">