]> git.scottworley.com Git - nt3d/blame - torus_by_extrude.html
Widening
[nt3d] / torus_by_extrude.html
CommitLineData
fc382d22
SW
1<html>
2 <head>
3 <title>Torus by extrude</title>
4 <script type="text/javascript" src="nt3d.js"></script>
5 <script type="text/javascript">
3bafa9bd
SW
6 function torus_by_extrude(params) {
7 var path = nt3d.circle(params.torus_radius, params.long_steps);
8 path = nt3d.rotate_about_origin(path, [0,1,0], params.rotation * 2*Math.PI);
08c25ec8
SW
9 return nt3d.closed_extrude(
10 path,
3bafa9bd 11 nt3d.circle(params.cross_section_radius, params.short_steps),
2d38f724 12 nt3d.shapenormals_from_closed_path(path),
08c25ec8 13 [0, 0, 1]);
fc382d22 14 }
3bafa9bd
SW
15 var params = [["torus_radius", 100],
16 ["cross_section_radius", 40],
17 ["rotation", 0.001, "Rotation (in turns)"],
18 ["long_steps", 50, "Steps around the long way"],
19 ["short_steps", 16, "Steps around the short way"]];
fc382d22
SW
20 </script>
21 </head>
22 <body onload="nt3d.framework(torus_by_extrude, params)">
23 <h1>Torus by extrude</h1>
24 <p>Make a torus by extruding a circle.</p>
25 </body>
26</html>