管道基础大数据平台系统开发-【CS】-ExportMap
13693261870
2024-01-03 2e4bdfd1fb5701994ef62098082ac83959a726f7
TEWin/Resources/AreaMeasurement/AreaMeasurement.html
@@ -5,9 +5,12 @@
    <meta http-equiv="X-UA-Compatible" content="IE=9" />
    <!--<meta http-equiv="Content-Type" content="text/html; charset=utf-8">-->
    <link rel="StyleSheet" href="../Style.css" type="text/css">
    <style>
    </style>
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="border: 0px; overflow: hidden;" id="Body" class="hideUntillTranslated ToolButtonsArea" onload="Init()" onunload="OnUnload()">
    <!--oncontextmenu="return false;">  onclick="bHide=true;HideOptionsNow()" > -->
    <table border="0" width="100%" class="s8w" cellspacing="0" cellpadding="0">
        <tr>
            <td>
@@ -15,44 +18,33 @@
            </td>
            <tr>
                <td colspan="2" align="left" class="ToolButtonsArea" style="border-bottom: 2px solid #ffffff;">
                    <button id="deleteMeasure" class="MenuButton2" style="border: none;" onclick="OnDeleteMeasure();">
                        <img src="./img/delete.png" /></button>
                    <button id="deleteLastPoint" class="MenuButton2" style="border: none;" onclick="OnDeleteLastPoint()">
                        <img src="./img/delete_last_point.png" /></button>
                    <button id="snapping" class="MenuButton2" style="border-right: 2px solid #ffffff;" onclick="OnSnapping()">
                        <img src="./img/snap.png" /><br />
                    </button>
                    <button id="horizontalSurface" class="MenuButton2" style="border: none;" onclick="OnHorizontalSurface()">
                        <img src="./img/horizontal.png" /><br />
                    </button>
                    <button id="3dPlane" class="MenuButton2" style="border: none;" onclick="On3DPlane()">
                        <img src="./img/3d_palne_area.png" /><br />
                    </button>
                    <button id="terrainSurface" class="MenuButton2" style="border-left: 2px solid #ffffff; border-right: none;" onclick="OnTerrainSurface()">
                        <img src="./img/surface.png" /><br />
                    </button>
                <button id="deleteMeasure" class="MenuButton2" style="border:none;" onclick="OnDeleteMeasure();"><img src="./img/delete.png" /></button>
                <button id="deleteLastPoint" class="MenuButton2" style="border:none;" onclick="OnDeleteLastPoint()"><img src="./img/delete_last_point.png" /></button>
            <button id="snapping" class="MenuButton2" style="border-right: 2px solid #ffffff;" onclick="OnSnapping()"><img src="./img/snap.png" /><br /></button>
                <button id="horizontalSurface" class="MenuButton2" style="border:none;" onclick="OnHorizontalSurface()"><img src="./img/horizontal.png" /><br /></button>
            <button id="3dPlane" class="MenuButton2"  style="border:none;" onclick="On3DPlane()"><img src="./img/3d_palne_area.png" /><br /></button>
            <button id="terrainSurface" class="MenuButton2" style="border-left: 2px solid #ffffff;border-right: none;" onclick="OnTerrainSurface()"><img src="./img/surface.png" /><br /></button>
                </td>
            </tr>
    </table>
    <table border="0" width="100%" class="s8w ToolButtonsArea" cellspacing="0" cellpadding="3pt">
        <tr id="createTRId" style="display: none;">
      <tr id="createTRId">
            <td>
                <span class="i18n s8w" style="vertical-align: top;">Text6</span>
                <input type="checkbox" align="bottom" id="createMeasurementObject" style="width: 25px;" onclick="CreateMeasurementObject();" />
            </td>
        </tr>
        <tr>
            <td class="textarea-container">
                <div class="textarea-size s8w"></div>
            </td>
        </tr>
        <!--<tr id="sampleIntervalTR">
      <td align="left">
         <span class="i18n s8w">Text5</span>
         <input type="text" id="sampleInterval" style="width:25px; height:13px;  background-color:#000000; color:#FFFFFF; padding:1px; margin-left: 2px;margin-right: 2px;" onkeypress="OnSampleInterval(event)" />
         <span class="i18n s8w">Text18</span>
      </td>
      </tr>-->
        <tr id="sampleIntervalTR">
            <td align="left">
                <span class="i18n s8w">Text5</span>
@@ -60,29 +52,44 @@
                <span class="i18n s8w">Text18</span>
            </td>
        </tr>
        <tr id="surfaceResultTR">
            <td class="textarea-container_surface">
                <div class="textarea-size_surface s8w"></div>
            </td>
        </tr>
        <tr id="unitTRId" style="display: none;">
            <!--<td  align="right" >-->
            <td>
       <tr  id="unitTRId">
         <td  align="right" >
                <u><a class="btn btn-primary" href="#" role="button" id="changeMeasurementUnits" onclick="OnChangeMeasurementUnits()"><span class="i18n s8w" style="padding-right: 5px;">Text17</span></a></u>
            </td>
        </tr>
      </tr>
    </table>
    <object id="SGWorld" style="display: none" classid="CLSID:3a4f919d-65a8-11d5-85c1-0001023952c1"></object>
    <script language="javascript" src="../jquery/jquery-3.1.1.min.js"></script>
    <script language="javascript" src="../ToolsCommon71.js"></script>
    <script language="JavaScript">
        var DISABLE = "gray";
        var gGeometry = null;
        var g_bCalculateTerrainArea;
        var _3D_PLANE_NAME = "plane";
        var _HORIZONTAL_NAME = "horizontal";
        function Init() {
//---------------------------------
function Init()
{
            document.getElementById("changeMeasurementUnits").value = SGLang.i18n("Text17");
            document.getElementById("sampleInterval").value = 5;
@@ -102,6 +109,7 @@
            $("#3dPlane").attr('title', SGLang.i18n("Text23"));
            $("#terrainSurface").attr('title', SGLang.i18n("Text24"));
            textContainer = document.querySelector('.textarea-container');
            textareaSize = textContainer.querySelector('.textarea-size');
            textareaSize.innerText = SGLang.i18n("Text25");
@@ -109,6 +117,7 @@
            textContainer = document.querySelector('.textarea-container_surface');
            textareaSize = textContainer.querySelector('.textarea-size_surface');
            textareaSize.innerText = SGLang.i18n("Text26");
            SGWorld.AttachEvent("OnMeasurementAreaResult", OnMeasurementResult);
            SGWorld.AttachEvent("OnInputModeChanged", OnInputModeChanged);
@@ -123,78 +132,91 @@
                document.getElementById("3dPlane").click();
            else
                document.getElementById("horizontalSurface").click();
        }
}
        //---------------------------------
        function Reset(FirstTime, FromMouseInputMode) {
function Reset(FirstTime, FromMouseInputMode)
{
            ResetButtons();
            SGWorld.Window.SetInputMode(0);
            gGeometry = null;
        }
        //---------------------------------
        function OnSampleInterval(evt) {
function OnSampleInterval(evt)
{
            var theEvent = evt || window.event;
            // Handle paste
            if (theEvent.type === 'paste') {
  if (theEvent.type === 'paste')
  {
                key = event.clipboardData.getData('text/plain');
            }
            else {
  else
  {
                // Handle key press
                var key = theEvent.keyCode || theEvent.which;
                key = String.fromCharCode(key);
            }
            var regex = /[0-9]|\./;
            if (!regex.test(key) || document.getElementById("sampleInterval").style.color == DISABLE) {
  if(!regex.test(key) ||  document.getElementById("sampleInterval").style.color == DISABLE)
  {
                theEvent.returnValue = false;
                if (theEvent.preventDefault)
                    theEvent.preventDefault();
            }
        }
}
        //---------------------------------
        function OnDeleteMeasure() {
function OnDeleteMeasure()
{
            var is3dPlane = $("#3dPlane").hasClass("MenuButtonHighlight");
            var isHorizontalSurface = $("#horizontalSurface").hasClass("MenuButtonHighlight");
            Reset(0, 0);
            if (is3dPlane) {
   if(is3dPlane)
   {
                document.getElementById("3dPlane").click();
            }
            else
                if (isHorizontalSurface) {
   if(isHorizontalSurface)
   {
                    document.getElementById("horizontalSurface").click();
                }
            EnableDisableButtons();
        }
        //---------------------------------
        function OnUnload() {
function OnUnload()
{
            var measurementMode = SGWorld.GetParam(9916);
            if (measurementMode == 33351/*ID_MEASURE_TERRAIN_AREA*/ || measurementMode == 33350/*ID_MEASURE_AREA*/)
                SGWorld.Window.SetInputMode(0);
        }
        //---------------------------------
        function OnEndDrawMeasurement(geometry) {
function OnEndDrawMeasurement(geometry)
{
            gGeometry = geometry;
            EnableDisableButtons();
        }
        //---------------------------------
        function OnInputModeChanged(mode) {
            if (mode == 0) {
function OnInputModeChanged(mode)
{
   if(mode==0)
   {
                ResetButtons();
            }
        }
        //---------------------------------
        function OnMeasurementResult(rs, SounrceID) {
            rs = rs.replace("N/A", "不适用")
function OnMeasurementResult(measurementResult,SounrceID)
{
    measurementResult = measurementResult.replace("N/A", "不适用")
                .replace("Surface Area:", "表面积:")
                .replace("Area:", "面积:")
                .replace("Square Meter", "平方米")
@@ -203,39 +225,41 @@
                .replace(/Km/g, " 千米")
                .replace(/m/g, " 米");
            if (!g_bCalculateTerrainArea) {
   if(!g_bCalculateTerrainArea)
   {
                textContainer = document.querySelector('.textarea-container');
                textareaSize = textContainer.querySelector('.textarea-size');
                textareaSize.innerText = rs;
      textareaSize.innerText = measurementResult;
                textContainer = document.querySelector('.textarea-container_surface');
                textareaSize = textContainer.querySelector('.textarea-size_surface');
                textareaSize.innerText = SGLang.i18n("Text26");
            }
            else {
   else
   {
                textContainer = document.querySelector('.textarea-container_surface');
                textareaSize = textContainer.querySelector('.textarea-size_surface');
                textareaSize.innerText = rs;
      textareaSize.innerText = measurementResult;
            }
            EnableDisableButtons();
            return true;
        }
        //---------------------------------
        function OnChangeMeasurementUnits() {
function OnChangeMeasurementUnits()
{
            SGWorld.Command.Execute(1011, 3);
        }
        //---------------------------------
        function CreateMeasurementObject() {
function CreateMeasurementObject()
{
            var bCreateMeasurementObject = document.getElementById("createMeasurementObject").checked == true;
            SGWorld.SetOptionParam("CreateMeasurementObjects", bCreateMeasurementObject);
        }
        //---------------------------------
        function EnableDisableButtons() {
function EnableDisableButtons()
{
            var bEnableTerrainSurface = $("#horizontalSurface").hasClass("MenuButtonHighlight") && gGeometry != null;
            if (!bEnableTerrainSurface)
                document.getElementById("sampleInterval").style.color = DISABLE;
@@ -250,66 +274,79 @@
                document.getElementById("terrainSurface").style.opacity = 0.3;
            var numPoints = SGWorld.GetParam(9915);
            if (numPoints < 3) {
   if(numPoints<3 )
   {
                gGeometry = null;
            }
            if (numPoints > 0) {
   if(numPoints>0)
   {
                document.getElementById("deleteMeasure").style.opacity = 1;
            }
            else {
   else
   {
                document.getElementById("deleteMeasure").style.opacity = 0.3;
            }
            if (numPoints > 2 && gGeometry == null) {
   if(numPoints>2 && gGeometry==null)
   {
                document.getElementById("deleteLastPoint").style.opacity = 1;
            }
            else {
   else
   {
                document.getElementById("deleteLastPoint").style.opacity = 0.3;
            }
        }
        //---------------------------------
        function ResetButtons() {
function ResetButtons()
{
            $("#horizontalSurface").removeClass("MenuButtonHighlight");
            $("#terrainSurface").removeClass("MenuButtonHighlight");
            $("#3dPlane").removeClass("MenuButtonHighlight");
            EnableDisableButtons();
        }
        //---------------------------------
        function SetSnapping() {
function SetSnapping()
{
            if ($("#snapping").hasClass("MenuButtonHighlight"))
                SGWorld.SetParam(9912, 1);
            else
                SGWorld.SetParam(9912, 0);
        }
        //---------------------------------
        function OnSnapping() {
function OnSnapping()
{
            //$("#snapping").removeClass("MenuButtonHighlight");
            if ($(event.srcElement).hasClass("MenuButtonHighlight")) {
   if( $(event.srcElement).hasClass("MenuButtonHighlight"))
   {
                $("#snapping").removeClass("MenuButtonHighlight");
                SGWorld.SetParam(9912, 0);
            }
            else {
   else
   {
                SGWorld.SetParam(9912, 1);
                $(event.srcElement).addClass("MenuButtonHighlight");
            }
        }
}
        //---------------------------------
        function On3DPlane() {
            if ($(event.srcElement).hasClass("MenuButtonHighlight")) {
function On3DPlane()
{
   if( $(event.srcElement).hasClass("MenuButtonHighlight"))
   {
                Reset(0, 0);
                return;
            }
            Reset(0, 0);
            $(event.srcElement).addClass("MenuButtonHighlight");
            //SGWorld.Command.Execute(2358, 0);//__TEC_MEASURE_AREA
            SGWorld.Command.Execute(1037, 0);
   SGWorld.Command.Execute(2358,0);//__TEC_MEASURE_AREA
            textContainer = document.querySelector('.textarea-container');
            textareaSize = textContainer.querySelector('.textarea-size');
@@ -321,28 +358,31 @@
            EnableDisableButtons();
        }
        //---------------------------------
        function OnTerrainSurface() {
function OnTerrainSurface()
{
            //Reset(0,0);
            g_bCalculateTerrainArea = true;
            if (document.getElementById("sampleInterval").value > 0.0)
              SGWorld.Command.Execute(1165/*__TEC_MEASURE_TERRAIN_AREA*/, document.getElementById("sampleInterval").value); // 2359
      SGWorld.Command.Execute(2359/*__TEC_MEASURE_TERRAIN_AREA*/,document.getElementById("sampleInterval").value);
            g_bCalculateTerrainArea = false;
            SetSnapping();
        }
        //---------------------------------
        function OnHorizontalSurface() {
            if ($(event.srcElement).hasClass("MenuButtonHighlight")) {
function OnHorizontalSurface()
{
   if( $(event.srcElement).hasClass("MenuButtonHighlight"))
   {
                Reset(0, 0);
                return;
            }
            Reset(0, 0);
            $(event.srcElement).addClass("MenuButtonHighlight");
            SGWorld.Command.Execute(1165/*__TEC_MEASURE_TERRAIN_AREA*/, 0); // 2359
   SGWorld.Command.Execute(2359/*__TEC_MEASURE_TERRAIN_AREA*/,0);
            textContainer = document.querySelector('.textarea-container');
            textareaSize = textContainer.querySelector('.textarea-size');
@@ -353,13 +393,19 @@
            SGWorld.SetOptionParam("AreaMeasurementDefaultMode", _HORIZONTAL_NAME);
            EnableDisableButtons();
        }
        function OnDeleteLastPoint() {
//---------------------------------
function OnDeleteLastPoint()
{
            SGWorld.SetParam(9914, 0);
            EnableDisableButtons();
        }
    </script>
</body>
</html>
<!--Sig:00000040au6WjiNW.uqyaxQdPdCltSVnmGMYOWXEgBB9yrqQ.Kyq91MhWbUupggV5yi1GRel4nJZMYQa3tOFAX56jNS8XmJJ-->