<commit_before><!doctype html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>SRM.JS ORM2ORM</title>
    <style>
      body {
        font-family: arial;
        margin: 8;
        padding: 0;
      }

      .emscripten { padding-right: 0; margin-left: auto; margin-right: auto; display: block; }
      div.emscripten { text-align: center; }      
      div.emscripten_border { border: 1px solid black; }
      /* the canvas *must not* have any border or padding, or mouse coords will be wrong */
      canvas.emscripten { border: 0px none; }

      #emscripten_logo {
        display: inline-block;
        margin: 0;
      }

      .spinner {
        height: 30px;
        width: 30px;
        margin: 0;
        margin-top: 20px;
        margin-left: 20px;
        display: inline-block;
        vertical-align: top;

        -webkit-animation: rotation .8s linear infinite;
        -moz-animation: rotation .8s linear infinite;
        -o-animation: rotation .8s linear infinite;
        animation: rotation 0.8s linear infinite;

        border-left: 5px solid rgb(235, 235, 235);
        border-right: 5px solid rgb(235, 235, 235);
        border-bottom: 5px solid rgb(235, 235, 235);
        border-top: 5px solid rgb(120, 120, 120);
        
        border-radius: 100%;
        background-color: rgb(189, 215, 46);
      }

      @-webkit-keyframes rotation {
        from {-webkit-transform: rotate(0deg);}
        to {-webkit-transform: rotate(360deg);}
      }
      @-moz-keyframes rotation {
        from {-moz-transform: rotate(0deg);}
        to {-moz-transform: rotate(360deg);}
      }
      @-o-keyframes rotation {
        from {-o-transform: rotate(0deg);}
        to {-o-transform: rotate(360deg);}
      }
      @keyframes rotation {
        from {transform: rotate(0deg);}
        to {transform: rotate(360deg);}
      }

      #status {
        display: inline-block;
        vertical-align: top;
        margin-top: 30px;
        margin-left: 20px;
        font-weight: bold;
        color: rgb(120, 120, 120);
      }

      #progress {
        height: 20px;
        width: 30px;
      }

      #controls {
        display: inline-block;
        float: right;
        vertical-align: top;
        margin-top: 30px;
        margin-right: 20px;
      }

      #output {
        width: 100%;
        height: 200px;
        margin: 0 auto;
        margin-top: 10px;
        border-left: 0px;
        border-right: 0px;
        padding-left: 0px;
        padding-right: 0px;
        display: block;
        background-color: black;
        color: white;
        font-family: 'Lucida Console', Monaco, monospace;
        outline: none;
      }
      
      .ddd {
        width: 10em;
      }
      
      .bigtable {
        font-size: 8px;
        width: 50%;
      }
      
      form {
        margin: 5px;
      }
    </style>
  </head>
  <body>

    <div class="spinner" id='spinner'></div>
    <div class="emscripten" id="status">Downloading...</div>
<!--
<span id='controls'>
  <span><input type="checkbox" id="resize">Resize canvas</span>
  <span><input type="checkbox" id="pointerLock" checked>Lock/hide mouse pointer &nbsp;&nbsp;&nbsp;</span>
  <span><input type="button" value="Fullscreen" onclick="Module.requestFullScreen(document.getElementById('pointerLock').checked, 
                                                                            document.getElementById('resize').checked)">
  </span>
</span>
-->
    <div class="emscripten">
      <progress value="0" max="100" id="progress" hidden=1></progress>
    </div>
<!--
    
    <div class="emscripten_border">
      <canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()"></canvas>
    </div>
    <textarea id="output" rows="8"></textarea>
-->
<h1>Datum to datum projection via srm </h1>
<form id='coord_in' onchange='inputchanged(event);'>
<fieldset> <legend>Input datum and coordinates</legend>
<span> ORM code: <input class='ddd' type='number' id='orm1' size='3' default='250'  value='250' placeholder='250'></span>
<span> RT code: <input class='ddd' type='number' id='rt1' size='3' default='341' value='341' placeholder='341'></span>
<span> latitude: <input class='ddd' type='number' id='latitude1' size='3' value='0' min='-90' max='90'>degrees</span>
<span> longitude: <input class='ddd' type='number' id='longitude1' size='3' value='0' min='-180' max='180'>degrees</span>
<span> elevation: <input class='ddd' type='number' id='elevation1' size='3' value='0'>meter</span>
<button>update</button>
</fieldset>
</form>
<form id='coord_out'> 
<fieldset> <legend> Output datum and coordinates </legend>
<span> ORM code: <input class='ddd' type='number' id='orm2' size='3' default='162' value='162' placeholder='162'></span>
<span> RT code: <input class='ddd' type='number' id='rt2' size='3' default='193' value='193' placeholder='193'></span>
<span> latitude: <input class='ddd' type='number' id='latitude2' size='3' value='0' min='-90' max='90'>degrees</span>
<span> longitude: <input class='ddd' type='number' id='longitude2' size='3' value='0' min='-180' max='180'>degrees</span>
<span> elevation: <input class='ddd' type='number' id='elevation2' size='3' value='0'>meter</span>
<button>update</button>
</fieldset>
</form>
<form>
  <fieldset>
<legend> Input celestiocentric coordinates: </legend>
<span> X: <input type='number' id='x1' readonly> meter</span>
<span> Y: <input type='number' id='y1' readonly> meter</span>
<span> Z: <input type='number' id='z1' readonly> meter</span>
</fieldset>
</form>
<form>
  <fieldset>
<legend> Output celestiocentric coordinates: </legend>
<span> X: <input type='number' id='x2' readonly> meter</span>
<span> Y: <input type='number' id='y2' readonly> meter</span>
<span> Z: <input type='number' id='z2' readonly> meter</span>
</fieldset>
</form>
<div>
  The default input ORM code (250) and RT code (341) define the WGS 1984 ellipsoid and datum.
  The default output ORM code (162) and RT code (193) define the NAD 1927 ellipsoid and datum for the continental US.
  The table below lists all available codes. For any ORM code there are only a few RT codes which are associated. 
  RT codes begin with the label of the ORM code with which they are associated.
</div>
<textarea class="bigtable"><commit_msg>Update srmjs.html<commit_after><!doctype html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>SRM.JS ORM2ORM</title>
    <style>
      body {
        font-family: arial;
        margin: 8;
        padding: 0;
      }

      .emscripten { padding-right: 0; margin-left: auto; margin-right: auto; display: block; }
      div.emscripten { text-align: center; }      
      div.emscripten_border { border: 1px solid black; }
      /* the canvas *must not* have any border or padding, or mouse coords will be wrong */
      canvas.emscripten { border: 0px none; }

      #emscripten_logo {
        display: inline-block;
        margin: 0;
      }

      .spinner {
        height: 30px;
        width: 30px;
        margin: 0;
        margin-top: 20px;
        margin-left: 20px;
        display: inline-block;
        vertical-align: top;

        -webkit-animation: rotation .8s linear infinite;
        -moz-animation: rotation .8s linear infinite;
        -o-animation: rotation .8s linear infinite;
        animation: rotation 0.8s linear infinite;

        border-left: 5px solid rgb(235, 235, 235);
        border-right: 5px solid rgb(235, 235, 235);
        border-bottom: 5px solid rgb(235, 235, 235);
        border-top: 5px solid rgb(120, 120, 120);
        
        border-radius: 100%;
        background-color: rgb(189, 215, 46);
      }

      @-webkit-keyframes rotation {
        from {-webkit-transform: rotate(0deg);}
        to {-webkit-transform: rotate(360deg);}
      }
      @-moz-keyframes rotation {
        from {-moz-transform: rotate(0deg);}
        to {-moz-transform: rotate(360deg);}
      }
      @-o-keyframes rotation {
        from {-o-transform: rotate(0deg);}
        to {-o-transform: rotate(360deg);}
      }
      @keyframes rotation {
        from {transform: rotate(0deg);}
        to {transform: rotate(360deg);}
      }

      #status {
        display: inline-block;
        vertical-align: top;
        margin-top: 30px;
        margin-left: 20px;
        font-weight: bold;
        color: rgb(120, 120, 120);
      }

      #progress {
        height: 20px;
        width: 30px;
      }

      #controls {
        display: inline-block;
        float: right;
        vertical-align: top;
        margin-top: 30px;
        margin-right: 20px;
      }

      #output {
        width: 100%;
        height: 200px;
        margin: 0 auto;
        margin-top: 10px;
        border-left: 0px;
        border-right: 0px;
        padding-left: 0px;
        padding-right: 0px;
        display: block;
        background-color: black;
        color: white;
        font-family: 'Lucida Console', Monaco, monospace;
        outline: none;
      }
      
      .ddd {
        width: 10em;
      }
      
      .bigtable {
        font-size: 8px;
        width: 50%;
      }
      
      form {
        margin: 5px;
      }
    </style>
  </head>
  <body>

    <div class="spinner" id='spinner'></div>
    <div class="emscripten" id="status">Downloading...</div>
<!--
<span id='controls'>
  <span><input type="checkbox" id="resize">Resize canvas</span>
  <span><input type="checkbox" id="pointerLock" checked>Lock/hide mouse pointer &nbsp;&nbsp;&nbsp;</span>
  <span><input type="button" value="Fullscreen" onclick="Module.requestFullScreen(document.getElementById('pointerLock').checked, 
                                                                            document.getElementById('resize').checked)">
  </span>
</span>
-->
    <div class="emscripten">
      <progress value="0" max="100" id="progress" hidden=1></progress>
    </div>
<!--
    
    <div class="emscripten_border">
      <canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()"></canvas>
    </div>
    <textarea id="output" rows="8"></textarea>
-->
<h1>Datum to datum projection via srm </h1>
<form id='coord_in' onchange='inputchanged(event);'>
<fieldset> <legend>Input datum and coordinates</legend>
<span> ORM code: <input class='ddd' type='number' id='orm1' size='3' default='250'  value='250' placeholder='250'></span>
<span> RT code: <input class='ddd' type='number' id='rt1' size='3' default='341' value='341' placeholder='341'></span>
<span> latitude: <input class='ddd' type='number' id='latitude1' size='3' value='0' min='-90' max='90'>degrees</span>
<span> longitude: <input class='ddd' type='number' id='longitude1' size='3' value='0' min='-180' max='180'>degrees</span>
<span> elevation: <input class='ddd' type='number' id='elevation1' size='3' value='0'>meter</span>
<button>update</button>
</fieldset>
</form>
<form id='coord_out'> 
<fieldset> <legend> Output datum and coordinates </legend>
<span> ORM code: <input class='ddd' type='number' id='orm2' size='3' default='162' value='162' placeholder='162'></span>
<span> RT code: <input class='ddd' type='number' id='rt2' size='3' default='193' value='193' placeholder='193'></span>
<span> latitude: <input class='ddd' type='number' id='latitude2' size='3' value='0' min='-90' max='90'>degrees</span>
<span> longitude: <input class='ddd' type='number' id='longitude2' size='3' value='0' min='-180' max='180'>degrees</span>
<span> elevation: <input class='ddd' type='number' id='elevation2' size='3' value='0'>meter</span>
<button>update</button>
</fieldset>
</form>
<form>
  <fieldset>
<legend> Input celestiocentric coordinates: </legend>
<span> X: <input type='number' id='x1' readonly> meter</span>
<span> Y: <input type='number' id='y1' readonly> meter</span>
<span> Z: <input type='number' id='z1' readonly> meter</span>
</fieldset>
</form>
<form>
  <fieldset>
<legend> Output celestiocentric coordinates: </legend>
<span> X: <input type='number' id='x2' readonly> meter</span>
<span> Y: <input type='number' id='y2' readonly> meter</span>
<span> Z: <input type='number' id='z2' readonly> meter</span>
</fieldset>
</form>
<div width='50%'>
  <p>
  The default input ORM code (250) and RT code (341) define the WGS 1984 ellipsoid and datum.
  The default output ORM code (162) and RT code (193) define the NAD 1927 ellipsoid and datum for the continental US.
  The table below lists all available codes. For any ORM code there are only a few RT codes which are associated. 
  RT codes begin with the label of the ORM code with which they are associated.
  </p>
</div>
<textarea class="bigtable">
{'fraction_non_alphanumeric': 0.16026999450592574, 'fraction_numerical': 0.03877246683933757, 'mean_word_length': 2.885940835620616, 'pattern_counts': {'":': 0, '<': 243, '<?xml version=': 0, '>': 243, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '860388', 'n_tokens_mistral': 4544, 'n_tokens_neox': 4090, 'n_words': 1097}