new file: Files/flashplayer_32_sa.exe new file: favicon.ico new file: globe.gif new file: imgs/download.png new file: imgs/zuck.jpg new file: index.html new file: other.ico new file: script.js new file: site.webmanifest new file: sitemap.html new file: styles/backround.css new file: styles/border.css new file: styles/fonts/Titillium_Web/OFL.txt new file: styles/fonts/Titillium_Web/TitilliumWeb-Black.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-Bold.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-BoldItalic.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-ExtraLight.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-ExtraLightItalic.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-Italic.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-Light.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-LightItalic.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-Regular.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-SemiBold.ttf new file: styles/fonts/Titillium_Web/TitilliumWeb-SemiBoldItalic.ttf new file: styles/fonts/webfontkit-20221027-163353/generator_config.txt new file: styles/fonts/webfontkit-20221027-163353/specimen_files/grid_12-825-55-15.css new file: styles/fonts/webfontkit-20221027-163353/specimen_files/specimen_stylesheet.css new file: styles/fonts/webfontkit-20221027-163353/stylesheet.css new file: styles/fonts/webfontkit-20221027-163353/titilliumweb-extralight-demo.html new file: styles/fonts/webfontkit-20221027-163353/titilliumweb-extralight-webfont.woff new file: styles/fonts/webfontkit-20221027-163353/titilliumweb-extralight-webfont.woff2 new file: styles/fonts/webfontkit-20221027-165950/generator_config.txt new file: styles/fonts/webfontkit-20221027-165950/specimen_files/grid_12-825-55-15.css new file: styles/fonts/webfontkit-20221027-165950/specimen_files/specimen_stylesheet.css new file: styles/fonts/webfontkit-20221027-165950/stylesheet.css new file: styles/fonts/webfontkit-20221027-165950/titilliumweb-bold-demo.html new file: styles/fonts/webfontkit-20221027-165950/titilliumweb-bold-webfont.woff new file: styles/fonts/webfontkit-20221027-165950/titilliumweb-bold-webfont.woff2 new file: styles/style.css new file: tools/2048/.gitignore new file: tools/2048/.jshintrc new file: tools/2048/CONTRIBUTING.md new file: tools/2048/LICENSE.txt new file: tools/2048/README.md new file: tools/2048/Rakefile new file: tools/2048/favicon.ico new file: tools/2048/index.html new file: tools/2048/js/animframe_polyfill.js new file: tools/2048/js/application.js new file: tools/2048/js/bind_polyfill.js new file: tools/2048/js/classlist_polyfill.js new file: tools/2048/js/game_manager.js new file: tools/2048/js/grid.js new file: tools/2048/js/html_actuator.js new file: tools/2048/js/keyboard_input_manager.js new file: tools/2048/js/local_storage_manager.js new file: tools/2048/js/tile.js new file: tools/2048/meta/apple-touch-icon.png new file: tools/webretro/cores/neocd_libretro.js new file: tools/webretro/cores/neocd_libretro.wasm new file: tools/webretro/cores/nestopia_libretro.js new file: tools/webretro/cores/nestopia_libretro.wasm new file: tools/webretro/cores/o2em_libretro.js new file: tools/webretro/cores/o2em_libretro.wasm new file: tools/webretro/cores/opera_libretro.js new file: tools/webretro/cores/opera_libretro.wasm
33 lines
5.1 KiB
JavaScript
33 lines
5.1 KiB
JavaScript
var my={}
|
|
function areacalcMain(){my.version='0.76';w=440;h=490;var s='';s+='<div style="position:relative; max-width:'+w+'px; height:'+h+'px; border-radius: 10px; margin:auto; display:block; text-align: center; ">';shapes=[{name:"Triangle",img:"triangle2.gif",formula:"½b × h",sub:"½ × #0 × #1",vals:[["b",55,77],["h",102,26]]},{name:"Circle",img:"circle.gif",formula:"π × r²",sub:"π × #0²",vals:[["r",90,31]]},{name:"Sector",img:"sector.gif",formula:"½r²θ",sub:"½ × #0² × #1",vals:[["r",90,54],["angle",-68,65,"θ"],["radq",-84,90]]},{name:"Ellipse",img:"ellipse.gif",formula:"πab",sub:"π × #0 × #1",vals:[["a",95,15],["b",-80,64]]},{name:"Square",img:"squar2.gif",formula:"a²",sub:"#0²",vals:[["a",100,35]]},{name:"Rectangle",img:"rectangle.gif",formula:"w × h",sub:"#0 × #1",vals:[["w",55,72],["h",100,28]]},{name:"Parallelogram",img:"parallel.gif",formula:"b × h",sub:"#0 × #1",vals:[["b",47,73],["h",100,32]]},{name:"Trapezoid",img:"trap.gif",formula:"½(a+b) × h",sub:"½(#0+#1) × #2",vals:[["a",70,0],["b",55,75],["h",102,36]]}];for(var i=0;i<shapes.length;i++){var shape=shapes[i];s+='<div class="togglebtn hi" id="area'+i+'" style="display: inline-block; width: 100px; height: 100px; border: 2px solid white;" onclick="go(this.id)">';s+='<img src="geometry/images/area/'+shape.img+'" />';s+='</div>';}
|
|
s+='<div id="title" style="position:relative; width:100%; padding: 8px 0 0 0; display:block; font: 22px Arial; color: green; ">';s+='</div>';s+='<div id="entry" style="position:relative; width:320px; height:140px; display:block; text-align:center; margin:auto; ">';s+='</div>';s+='<textarea id="calcs" style="width:100%; height:75px; background-color: #dfd; text-align:center; font: 18px Arial; border-radius: 10px; color:blue;" value=""></textarea>';s+='<div id="copyrt" style="font: 7pt arial; font-weight: bold; color: #6600cc; position:relative;">© 2018 MathsIsFun.com v'+my.version+'</div>';s+='</div>';document.write(s);go('area0');}
|
|
function go(id){for(var i=0;i<shapes.length;i++){document.getElementById('area'+i).classList.remove("yy");document.getElementById('area'+i).classList.add("hi");}
|
|
document.getElementById(id).classList.remove("hi");document.getElementById(id).classList.add("yy");var shapeNo=id.substr(4);doShape(shapeNo);}
|
|
function doShape(shapeNo){shape=shapes[shapeNo];document.getElementById('title').innerHTML=shape.name
|
|
var lt=100
|
|
var tp=10
|
|
var s='';s+='<img style="position:absolute; left:'+lt+'px; top:10px;" src="geometry/images/area/'+shape.img+'" />';var vals=shape.vals;for(var i=0;i<vals.length;i++){var val=vals[i]
|
|
if(val[0]=='radq'){s+='<div style="position:absolute; left:'+(val[1]+lt)+'px; top:'+(val[2]+tp)+'px; font-size: 14px; z-index:2; color: #0000ff;">';s+='<input type="radio" name="radq" style="" onclick="radQChg(0)" autocomplete="off" checked >radian</input>';s+='<input type="radio" name="radq" style="" onclick="radQChg(1)" autocomplete="off" >degree</input>';s+='</div>'
|
|
radQChg(0)}else{s+='<input type="text" id="input'+i+'" style="position:absolute; left:'+(vals[i][1]+lt)+'px; top:'+(vals[i][2]+tp)+'px; font-size: 17px; width:90px; z-index:2; color: #0000ff; background-color: #e8f0ff; text-align:center; border-radius: 10px;" value="1" onkeyup="valChg('+i+')"></input>';}}
|
|
document.getElementById('entry').innerHTML=s;my.radQ=true
|
|
valChg(0);}
|
|
function radQChg(n){my.radQ=(n==0)
|
|
console.log("radQChg="+my.radQ+','+n);valChg(0)}
|
|
function valChg(n){var shapeName=shape.name;console.log("valChg="+shapeName+','+n);var formula=shape.formula
|
|
var sub=shape.sub
|
|
var area=0;switch(shapeName){case "Triangle":area=getVal(0)*getVal(1)/2;break;case "Circle":area=Math.PI*Math.pow(getVal(0),2);break;case "Sector":area=Math.pow(getVal(0),2)*getVal(1)/2;if(my.radQ){}else{formula+=" × (π/180)"
|
|
sub+=" × (π/180)"
|
|
area*=Math.PI/180.}
|
|
break;case "Ellipse":area=Math.PI*getVal(0)*getVal(1);break;case "Square":area=Math.pow(getVal(0),2);break;case "Rectangle":area=getVal(0)*getVal(1);break;case "Parallelogram":area=getVal(0)*getVal(1);break;case "Trapezoid":area=(1/2)*(getVal(0)+getVal(1))*getVal(2);break;default:}
|
|
var answer="";answer+="Area = "+formula
|
|
var s=sub
|
|
var vals=shape.vals
|
|
for(var i=0;i<vals.length;i++){s=s.split("#"+i.toString()).join(getVal(i).toString());}
|
|
answer+="\n= "+s;answer+="\n= "+fmtNum(area);document.getElementById('calcs').innerHTML=answer;}
|
|
function getVal(boxNo){var div=document.getElementById('input'+boxNo);if(div==null)return 0
|
|
var val=div.value;val=val.replace(/[^0-9, e\-\.]+/g,'');div.value=val;if(isNumeric(val)){return+val;}else{return 0;}}
|
|
function fmtNum(v){var s=(+v).toPrecision(10);if(s.indexOf(".")>0&&s.indexOf('e')<0){s=s.replace(/0+$/,'');}
|
|
if(s.charAt(s.length-1)=='.'){s=s.substr(0,s.length-1);}
|
|
return s;}
|
|
function isNumeric(n){return!isNaN(parseFloat(n))&&isFinite(n);}
|
|
function toggleBtn(btn,onq){if(onq){document.getElementById(btn).classList.add("yy");document.getElementById(btn).classList.remove("hi");}else{document.getElementById(btn).classList.add("hi");document.getElementById(btn).classList.remove("yy");}} |