Subversion Repositories wimsdev

Rev

Rev 6362 | Blame | Compare with Previous | Last modification | View Log | RSS feed

!if $wims_read_parm!=slib_header
 !goto proc
!endif

slib_author=Georges, Khaznadar
slib_license=GPL

slib_example= Angle :, Valeur trigonométrique :
!exit

:proc
!reset slib_aname, slib_vname, slib_code
slib_parm=!item 1 to 2 of $wims_read_parm
!distribute item $slib_parm into slib_aname, slib_vname

slib_code=<script type="text/javascript">\
/*<![CDATA[*/\
  var a; /* angle en radian */\
  var v; /* valeur du sinus, cosinus ou tangente, sans unité */\
  function get_a(){\
    angle=document.getElementById("angle").value;\
    unite=document.getElementById("unite").value;\
    a=angle*unite;\
  }\
  function set_a(){\
    if (a=="undef"){\
      document.getElementById("angle").value="undef";\
    } else{\
      unite=document.getElementById("unite").value;\
      angle=a/unite;\
      document.getElementById("angle").value=angle;\
    }\
  }\
  function get_v(){\
    v=document.getElementById("trig-value").value;\
  }\
  function set_v(){\
    document.getElementById("trig-value").value=v;\
  }\
  function asin(){\
    get_v();\
    if (v<-1 || v >1){\
      a="undef";\
      set_a();\
    } else {\
      a=Math.asin(v);\
      set_a();\
    }\
  }\
  function sin(){\
    get_a();\
    v=Math.sin(a);\
    set_v();\
  }\
  function acos(){\
    get_v();\
    if (v<-1 || v >1){\
      a="undef";\
      set_a();\
    } else {\
      a=Math.acos(v);\
      set_a();\
    }\
  }\
  function cos(){\
    get_a();\
    v=Math.cos(a);\
    set_v();\
  }\
  function atan(){\
    get_v();\
    a=Math.atan(v);\
    set_a();\
  }\
  function tan(){\
    get_a();\
    v=Math.tan(a);\
    set_v();\
  }\
/*]]>*/\
</script>\
<div id="calc-trigo" >\
<table style="padding:0.5em; border:3px ridge navy; background:lightcyan; -moz-border-radius: 1em;" >\
<tr>\
  <td colspan="6" style="text-align:center;" >\
    <b>Angle:</b>\
    <input id="angle" value="0" style="text-align:right; border:3px ridge navy; -moz-border-radius: 0.5em;">&nbsp;\
    <select id="unite" style="text-align:right; border:3px ridge navy; -moz-border-radius: 0.5em;">\
      <option value="0.017453292519943295769">°&nbsp;</option>\
      <option value="1">rad&nbsp;</option>\
    </select >\
  </td>\
<tr>\
  <td><button onclick="sin(); return false;" style="border:2px outset navy; -moz-border-radius: 0.5em;" >&darr;sin</button></td>\
  <td><button onclick="asin(); return false;" style="border:2px outset navy; -moz-border-radius: 0.5em;" >&uarr;asin</button></td>\
  <td><button onclick="cos(); return false;" style="border:2px outset navy; -moz-border-radius: 0.5em;" >&darr;cos</button></td>\
  <td><button onclick="acos(); return false;" style="border:2px outset navy; -moz-border-radius: 0.5em;" >&uarr;acos</button></td>\
  <td><button onclick="tan(); return false;" style="border:2px outset navy; -moz-border-radius: 0.5em;" >&darr;tan</button></td>\
  <td><button onclick="atan(); return false;" style="border:2px outset navy; -moz-border-radius: 0.5em;" >&uarr;atan</button></td>\
</tr>\
<tr>\
  <td colspan="6" style="text-align:center;" >\
    <b>Value:</b> \
    <input id="trig-value"  value="0" style="text-align:right; border:3px ridge navy; -moz-border-radius: 0.5em;">\
  </td>\
</tr>\
</table>\
</div>

slib_code=!replace Angle: by $slib_aname in $slib_code
slib_code=!replace Value: by $slib_vname in $slib_code

slib_out=$slib_code