<iframe src="https://jsxgraph.org/share/iframe/devils-curve" style="border: 1px solid black; overflow: hidden; width: 550px; aspect-ratio: 55 / 65;" name="JSXGraph example: Devil's curve" allowfullscreen ></iframe>
<div id="board-0-wrapper" class="jxgbox-wrapper " style="width: 100%; "> <div id="board-0" class="jxgbox" style="aspect-ratio: 12/ 10; width: 100%;" data-ar="12/ 10"></div> </div> <script type = "text/javascript"> /* This example is licensed under a Creative Commons Attribution 4.0 International License. https://creativecommons.org/licenses/by/4.0/ Please note you have to mention The Center of Mobile Learning with Digital Technology in the credits. */ const BOARDID = 'board-0'; const board = JXG.JSXGraph.initBoard(BOARDID, { boundingbox: [-5, 5, 7, -5], axis: true }); var a = board.create('slider', [ [1, 4], [4, 4], [0, 1.5, 3] ], { name: 'a' }); var b = board.create('slider', [ [1, 3.5], [4, 3.5], [0, 1, 3] ], { name: 'b' }); var c = board.create('curve', [ (theta) => Math.sqrt( (b.Value()**2 * Math.sin(theta)**2 - a.Value()**2 * Math.cos(theta)**2 ) / (Math.sin(theta)**2 - Math.cos(theta)**2 ) ), [0, 0], 0, 2 * Math.PI ], { strokeWidth: 3, curveType: 'polar' }); </script>
/* This example is licensed under a Creative Commons Attribution 4.0 International License. https://creativecommons.org/licenses/by/4.0/ Please note you have to mention The Center of Mobile Learning with Digital Technology in the credits. */ const BOARDID = 'your_div_id'; // Insert your id here! const board = JXG.JSXGraph.initBoard(BOARDID, { boundingbox: [-5, 5, 7, -5], axis: true }); var a = board.create('slider', [ [1, 4], [4, 4], [0, 1.5, 3] ], { name: 'a' }); var b = board.create('slider', [ [1, 3.5], [4, 3.5], [0, 1, 3] ], { name: 'b' }); var c = board.create('curve', [ (theta) => Math.sqrt( (b.Value()**2 * Math.sin(theta)**2 - a.Value()**2 * Math.cos(theta)**2 ) / (Math.sin(theta)**2 - Math.cos(theta)**2 ) ), [0, 0], 0, 2 * Math.PI ], { strokeWidth: 3, curveType: 'polar' });
<jsxgraph width="100%" aspect-ratio="12/ 10" title="Devil's curve" description="This construction was copied from JSXGraph examples database: BTW HERE SHOULD BE A GENERATED LINKuseGlobalJS="false"> /* This example is licensed under a Creative Commons Attribution 4.0 International License. https://creativecommons.org/licenses/by/4.0/ Please note you have to mention The Center of Mobile Learning with Digital Technology in the credits. */ const board = JXG.JSXGraph.initBoard(BOARDID, { boundingbox: [-5, 5, 7, -5], axis: true }); var a = board.create('slider', [ [1, 4], [4, 4], [0, 1.5, 3] ], { name: 'a' }); var b = board.create('slider', [ [1, 3.5], [4, 3.5], [0, 1, 3] ], { name: 'b' }); var c = board.create('curve', [ (theta) => Math.sqrt( (b.Value()**2 * Math.sin(theta)**2 - a.Value()**2 * Math.cos(theta)**2 ) / (Math.sin(theta)**2 - Math.cos(theta)**2 ) ), [0, 0], 0, 2 * Math.PI ], { strokeWidth: 3, curveType: 'polar' }); </jsxgraph>
// Define the id of your board in BOARDID const board = JXG.JSXGraph.initBoard(BOARDID, { boundingbox: [-5, 5, 7, -5], axis: true }); var a = board.create('slider', [ [1, 4], [4, 4], [0, 1.5, 3] ], { name: 'a' }); var b = board.create('slider', [ [1, 3.5], [4, 3.5], [0, 1, 3] ], { name: 'b' }); var c = board.create('curve', [ (theta) => Math.sqrt( (b.Value()**2 * Math.sin(theta)**2 - a.Value()**2 * Math.cos(theta)**2 ) / (Math.sin(theta)**2 - Math.cos(theta)**2 ) ), [0, 0], 0, 2 * Math.PI ], { strokeWidth: 3, curveType: 'polar' });
This example is licensed under a Creative Commons Attribution 4.0 International License. Please note you have to mention The Center of Mobile Learning with Digital Technology in the credits.