Mandelbrot mit JSXGraph
Aus Wiki1
(Unterschied zwischen Versionen)
| Zeile 9: | Zeile 9: | ||
// Slider für Iterationstiefe | // Slider für Iterationstiefe | ||
| - | const sliderIter = board.create('slider', [[-2.3, 1.3], [ | + | const sliderIter = board.create('slider', [[-2.3, 1.3], [0.5, 1.3], [10, 50, 300]], { |
name:'Tiefe', | name:'Tiefe', | ||
snapWidth:1 | snapWidth:1 | ||
| Zeile 15: | Zeile 15: | ||
// Slider für Zoom | // Slider für Zoom | ||
| - | const sliderZoom = board.create('slider', [[-2.3, 1.2], [ | + | const sliderZoom = board.create('slider', [[-2.3, 1.2], [0.5, 1.2], [1, 1, 50]], { |
name:'Zoom', | name:'Zoom', | ||
snapWidth:1 | snapWidth:1 | ||
| Zeile 21: | Zeile 21: | ||
// Slider für Formel | // Slider für Formel | ||
| - | const | + | const sliderPotx = board.create('slider', [[-2.3, 1.1], [0.5, 1.1], [2, 2, 3]], { |
| - | name:'Potenz', | + | name:'Potenz x', |
snapWidth:0.1 | snapWidth:0.1 | ||
}); | }); | ||
| + | // Slider für Formel | ||
| + | const sliderPoty = board.create('slider', [[-2.3, 1.00], [0.5, 1.0], [2, 2, 3]], { | ||
| + | name:'Potenz y', | ||
| + | snapWidth:0.1 | ||
| + | }); | ||
// Canvas ins DOM hängen | // Canvas ins DOM hängen | ||
const div = document.getElementById('jxgbox'); | const div = document.getElementById('jxgbox'); | ||
| Zeile 41: | Zeile 46: | ||
let x = 0, y = 0, iter = 0; | let x = 0, y = 0, iter = 0; | ||
while (x*x + y*y <= 4 && iter < maxIter) { | while (x*x + y*y <= 4 && iter < maxIter) { | ||
| - | const xtemp = Math.pow(x, | + | const xtemp = Math.pow(x,sliderPotx.Value()) - Math.pow(y,sliderPoty.Value()) + cx; |
y = 2*x*y + cy; | y = 2*x*y + cy; | ||
x = xtemp; | x = xtemp; | ||
| Zeile 97: | Zeile 102: | ||
sliderIter.on('drag', update); | sliderIter.on('drag', update); | ||
sliderZoom.on('drag', update); | sliderZoom.on('drag', update); | ||
| - | + | sliderPotx.on('drag', update); | |
| + | sliderPoty.on('drag', update); | ||
// Panning mit Maus | // Panning mit Maus | ||
Version vom 12:32, 26. Sep. 2025
Mit den Schiebereglern können Iterations-Tiefe und Zoom gesteuert werden. Mit der Maus+linke Maustaste kann der Bildausschnitt verschoben werden.
