| 1 | <!-- This Source Code Form is subject to the terms of the Mozilla Public |
| 2 | - License, v. 2.0. If a copy of the MPL was not distributed with this file, |
| 3 | - You can obtain one at http://mozilla.org/MPL/2.0/. --> |
| 4 | |
| 5 | <!DOCTYPE html> |
| 6 | <html manifest="manifest.appcache"> |
| 7 | <head> |
| 8 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| 9 | <!-- try to counts default scaling on mobile, see |
| 10 | https://developer.mozilla.org/en/Mobile/Viewport_meta_tag --> |
| 11 | <meta name="viewport" content="width=device-width, height=device-height, initial-scale=.6667, maximum-scale=.6667"> |
| 12 | <title>KaiRo.at Mandelbrot Web</title> |
| 13 | <script src="js/mandelbrot.js"></script> |
| 14 | <link rel="stylesheet" href="style/mandelbrot.css"> |
| 15 | <link rel="shortcut icon" href="style/mandelbrotIcon16.png" type="image/png"> |
| 16 | </head> |
| 17 | <body onload="Startup();"> |
| 18 | <h1>KaiRo.at Mandelbrot Web</h1> |
| 19 | |
| 20 | <div id="overlayArea"> |
| 21 | <input type="button" id="drawButton" value="Draw Image" |
| 22 | onclick="drawImage();"> |
| 23 | <input type="button" id="backButton" value="Back" |
| 24 | onclick="goBack();" disabled="true"> |
| 25 | <input type="button" id="settingsButton" value="Settings" |
| 26 | onclick="toggleSettings();"> |
| 27 | <label for="bookmarks">Bookmarks:</label> |
| 28 | <select id="bookmarks" onclick="callBookmark(event.target);"> |
| 29 | <option id="bookmarkOverview" value="-1">Overview</option> |
| 30 | </select> |
| 31 | |
| 32 | <fieldset id="settings"><legend>Image data</legend> |
| 33 | Image coordinates: |
| 34 | <br>Real: |
| 35 | <br><label for="Cr_min">Min:</label> |
| 36 | <input id="Cr_min" value="-2.0" maxlength="10" size="10" type="text" |
| 37 | onchange="checkISValue(this, 'coord'); recalcCoord('Cr', 'scale');"> |
| 38 | <label for="Cr_max">Max:</label> |
| 39 | <input id="Cr_max" value="1.0" maxlength="10" size="10" type="text" |
| 40 | onchange="checkISValue(this, 'coord'); recalcCoord('Cr', 'scale');"> |
| 41 | <label for="Cr_scale">Scale:</label> |
| 42 | <input id="Cr_scale" value="3.0" maxlength="10" size="10" type="text" |
| 43 | onchange="checkISValue(this, 'coord'); recalcCoord('Cr', 'max');"> |
| 44 | <br>Imag: |
| 45 | <br><label for="Ci_min">Min:</label> |
| 46 | <input id="Ci_min" value="-1.5" maxlength="10" size="10" type="text" |
| 47 | onchange="checkISValue(this, 'coord'); recalcCoord('Ci', 'scale');"> |
| 48 | <label for="Ci_max">Max:</label> |
| 49 | <input id="Ci_max" value="1.5" maxlength="10" size="10" type="text" |
| 50 | onchange="checkISValue(this, 'coord'); recalcCoord('Ci', 'scale');"> |
| 51 | <label for="Ci_scale">Scale:</label> |
| 52 | <input id="Ci_scale" value="3.0" maxlength="10" size="10" type="text" |
| 53 | onchange="checkISValue(this, 'coord'); recalcCoord('Ci', 'max');"> |
| 54 | |
| 55 | <br><br>Image size: |
| 56 | <br><label for="image_width">Width:</label> |
| 57 | <input id="image_width" value="300" maxlength="4" size="4" type="number" |
| 58 | onchange="checkISValue(this, 'dim'); recalcCoord('Ci', 'scale');"> |
| 59 | <label for="image_height">Height:</label> |
| 60 | <input id="image_height" value="300" maxlength="4" size="4" type="number" |
| 61 | onchange="checkISValue(this, 'dim'); recalcCoord('Cr', 'scale');"> |
| 62 | <input type="checkbox" id="proportional" checked="true" |
| 63 | onchange="checkProportions();"> |
| 64 | <label for="proportional">proportional</label> |
| 65 | |
| 66 | <br><br><label for="iterMax">Maximum of iterations:</label> |
| 67 | <select id="iterMax" onchange="setIter();"> |
| 68 | <option value="50">50</option> |
| 69 | <option value="100">100</option> |
| 70 | <option value="500" selected="selected">500</option> |
| 71 | <option value="1000">1000</option> |
| 72 | <option value="5000">5000</option> |
| 73 | </select> |
| 74 | <input type="hidden" id="algorithm" value="numeric"> |
| 75 | |
| 76 | <br><label for="palette">Color palette:</label> |
| 77 | <select id="palette" onchange="setPalette();"> |
| 78 | <option value="bw">Black & White</option> |
| 79 | <option value="kairo" selected="selected">KaiRo default</option> |
| 80 | <option value="rainbow-linear1">Rainbow-linear 1</option> |
| 81 | <option value="rainbow-squared1">Rainbow 1 Squared</option> |
| 82 | <option value="rainbow-linear2">Rainbow 2 Linear</option> |
| 83 | <option value="rainbow-squared2">Rainbow 2 Squared</option> |
| 84 | </select> |
| 85 | </fieldset> |
| 86 | </div> |
| 87 | |
| 88 | <div id="mainArea"> |
| 89 | <canvas id="mbrotImage" width="300" height="300" |
| 90 | onclick="drawIfEmpty();"></canvas> |
| 91 | </div> |
| 92 | |
| 93 | <p id="action"> |
| 94 | Time taken for calculation: <span id="calcTime">none yet</span> |
| 95 | </p> |
| 96 | |
| 97 | </body></html> |