[Mapbender-commits] r1097 - trunk/mapbender/http/php
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Thu Feb 8 10:06:59 EST 2007
Author: christoph
Date: 2007-02-08 10:06:54 -0500 (Thu, 08 Feb 2007)
New Revision: 1097
Removed:
trunk/mapbender/http/php/mod_digitize.php
Log:
deprecated
Deleted: trunk/mapbender/http/php/mod_digitize.php
===================================================================
--- trunk/mapbender/http/php/mod_digitize.php 2007-02-08 14:51:19 UTC (rev 1096)
+++ trunk/mapbender/http/php/mod_digitize.php 2007-02-08 15:06:54 UTC (rev 1097)
@@ -1,427 +0,0 @@
-<?php
-# $Id$
-# http://www.mapbender.org/index.php/mod_digitize.php
-# Copyright (C) 2002 CCGIS
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-require_once(dirname(__FILE__)."/../../conf/mapbender.conf");
-?>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-
- <html>
- <head>
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="expires" content="0">
- <?php
- echo '<meta http-equiv="Content-Type" content="text/html; charset='.CHARSET.'">';
- ?>
- <title>Digitize</title>
- <?php
- include '../include/dyn_css.php';
- ?>
- <style type="text/css">
- <!--
- body{
- font-family: Arial, Helvetica, sans-serif;
- font-size : 12px;
- color: #ffffff;
- background-color: lightgray;
- margin-top: 0px;
- margin-left: 0px;
- }
- .button{
- height: 18px;
- width: 32px;
- }
- -->
- </style>
- <script language='JavaScript'>
- <?php
-
- echo "var mod_digitize_target = '".$_REQUEST["target"]."';";
-
- ?>
- //public
-
- var mod_digitize_color1 = "white";
- var mod_digitize_color2 = "black";
- var mod_digitize_font = "Arial, Helvetica, sans-serif";
- var mod_digitize_fontsize = "9px";
- var mod_digitize_basepoint = "#8a2be2";
- var mod_digitize_linepoint = "#ff00ff";
- var mod_digitize_bg = "";
-
- var mod_digitize_elName = "digitize_frame"
- var mod_digitize_frameName = "";
-
- // constructor - object:
- var D = new Array();
- function register_D(type){
- var id = D.length;
- if(id > 0){
- var check = val_D(id);
- if(check == false){
- id -= 1;
- }
- }
- D[id] = new const_D(id, type);
- }
-
- function const_D(id,type){
- this.id = id;
- this.type = type;
- this.x = new Array();
- this.y = new Array();
- this.label = "";
-
- var ind = parent.getMapObjIndexByName(mod_digitize_target);
- this.epsg = parent.mb_mapObj[ind].epsg;
-
- this.units = "";
- this.dist = new Array();
- this.totaldist = new Array();
- this.complete = false;
- }
-
- function val_D(id){
- if(D[(id - 1)].x.length == 0){
- return false;
- }
- else{
- return true;
- }
- }
- var isOn = true;
- var mod_digitize_width;
- var mod_digitize_height;
- var mod_digitize_Dist = new Array();
- var mod_digitize_TotalDist = new Array();
- var mod_digitizeSubFunctions = new Array();
- var mod_digitizeEvent = false;
-
- var bp_active = false;
- var bp_obj = false;
- var bp_geom = false;
- var bp_p = false;
- var start_x = false;
- var start_y = false;
- var end_x = false;
- var end_y = false;
-
-
-
- function mod_digitize_go(){
- parent.mb_registerGML(mod_digitize_target,D);
- parent.document.getElementById(mod_digitize_elName).style.visibility = 'visible';
- var el = parent.frames[mod_digitize_target].document;
- el.onmousedown = mod_digitize_start;
- //el.onmousemove = mod_digitize_run;
-
- var ind = parent.getMapObjIndexByName(mod_digitize_target);
- mod_digitize_width = parent.mb_mapObj[ind].width;
- mod_digitize_height = parent.mb_mapObj[ind].height;
- //mod_digitize_epsg = parent.mb_mapObj[ind].epsg;
- }
-
- function mod_digitize_disable(){
- isOn = false;
- parent.document.getElementById(mod_digitize_elName).style.visibility = 'hidden';
- var el = parent.frames[mod_digitize_target].document;
- el.onmousedown = null;
- el.onmouseup = null;
- el.onmousemove = null;
- drawDashedLine();
- }
-
- function mod_digitize_timeout(){
- var el = parent.window.frames[mod_digitize_target].document;
- el.onmousedown = null;
- el.ondblclick = null;
- el.onmousemove = null;
- }
-
- function mod_digitize_start(e){
- isOn = true;
- if(D[D.length -1].complete == true || (D.length == 0)){
- alert("Geometrie muss ausgewählt sein!");
- return true;
- }
- parent.mb_getMousePos(e,mod_digitize_target);
- var realWorldPos = parent.makeClickPos2RealWorldPos(mod_digitize_target,parent.clickX,parent.clickY);
- D[D.length-1].x[D[D.length-1].x.length] = Math.round(realWorldPos[0] * 100)/100;
- D[D.length-1].y[D[D.length-1].y.length] = Math.round(realWorldPos[1] * 100)/100;
- if(D[D.length-1].type == 'text'){
- var l = prompt("Beschriftung: ","");
- if(l != null){
- D[D.length-1].label = l;
- D[D.length-1].complete = true;
- }
-
- }
- drawDashedLine();
- return true;
- }
-
- function drawDashedLine(){
- var smP = "";
- smP += "<div class='t_img'>";
- smP += "<img src='"+parent.mb_trans.src+"' width='"+mod_digitize_width+"' height='0'></div>";
- smP += "<div class='t_img'>";
- smP += "<img src='"+parent.mb_trans.src+"' width='0' height='"+mod_digitize_height+"'></div>";
- for(var j=0; j<D.length; j++){
- for(var i=0; i<D[j].x.length; i++){
- var pos = parent.makeRealWorld2mapPos(mod_digitize_target,D[j].x[i],D[j].y[i]);
- if(D[j].type != 'text' || (D[j].type == 'point' && D[j].label =="")){
- smP += "<div class='bp' style='top:"+(pos[1]-2)+"px;left:"+(pos[0]-2)+"px;'";
- if(i==0 && D[j].type == 'polygon' && D[j].complete == false){
- smP += " title='close polygon' ";
- }
- if(isOn){
- smP += " onmouseover='parent.window.frames[\""+mod_digitize_elName+"\"].mobp(this,"+j+","+i+")' ;"
- smP += " onmouseout='parent.window.frames[\""+mod_digitize_elName+"\"].mod_digitize_go()' ";
- }
- smP += "></div>";
- }
- //label:
- if(i == 0 && D[j].label != ""){
- smP += "<div class='label' style='top:"+(pos[1]-6)+"px;left:"+(pos[0])+"px'>"+D[j].label+"</div>";
- }
- }
- if(D[j].x.length>1){
- for(var k=1; k<D[j].x.length; k++){
- var pos0 = parent.makeRealWorld2mapPos(mod_digitize_target,D[j].x[k], D[j].y[k]);
- var pos1 = parent.makeRealWorld2mapPos(mod_digitize_target,D[j].x[k-1], D[j].y[k-1]);
- smP += evaluateDashes(pos1[0],pos1[1],pos0[0],pos0[1],k,j,k);
- }
- }
- }
- parent.writeTag(mod_digitize_target,"digitize",smP);
- }
-
- function evaluateDashes(x1,y1,x2,y2,count,geom,p){
- var str_dashedLine = "";
- var s = 10;
- var d = Math.sqrt(Math.pow((y1-y2),2) + Math.pow((x1-x2),2)) ;
- var n = Math.round(d/s);
- var s_x = (x2 - x1)/n;
- var s_y = (y2 - y1)/n;
- for(var i=1; i<n; i++){
- var x = Math.round(x1 + i * s_x)-2;
- var y = Math.round(y1 + i * s_y)-2;
- if(x >= 0 && x <= mod_digitize_width && y >= 0 && y <= mod_digitize_height){
- str_dashedLine += "<div class='lp' style='top:"+y+"px;left:"+x+"px;z-index:50;' ";
- if(isOn){
- str_dashedLine += "onmouseover='parent.window.frames[\""+mod_digitize_elName+"\"].lp2bp(this,"+geom+","+p+")'>";
- }
- str_dashedLine += "</div>";
- }
- }
- return str_dashedLine;
- }
-
- function mobp(Obj,geom,p){
- if(!isOn){ return false; };
- bp_obj = Obj;
- bp_geom = geom;
- bp_p = p;
-
- if(mod_digitizeEvent == "dragBasePoint"){
- mod_digitize_timeout();
- Obj.style.cursor = 'move';
- Obj.onmousedown = parent.window.frames[mod_digitize_elName].bp_down;
- }
- if(mod_digitizeEvent == false && D[geom].type == 'polygon' && D[geom].complete == false){
- Obj.onmousedown = parent.window.frames[mod_digitize_elName].close_Pol;
- }
- if(mod_digitizeEvent == "delBasePoint"){
- mod_digitize_timeout();
- Obj.style.cursor = 'crosshair';
- Obj.onmousedown = parent.window.frames[mod_digitize_elName].delete_bp;
- }
- }
-
- function delete_bp(e){
- for(var i= bp_p; i<D[bp_geom].x.length; i++){
- D[bp_geom].x[i] = D[bp_geom].x[i+1];
- D[bp_geom].y[i] = D[bp_geom].y[i+1];
- }
- D[bp_geom].x.length = D[bp_geom].x.length -1;
- D[bp_geom].y.length = D[bp_geom].y.length -1;
- drawDashedLine();
- }
-
- function close_Pol(e){
- if(!isOn){ return; };
- D[bp_geom].complete = true;
- D[bp_geom].x[D[bp_geom].x.length] = D[bp_geom].x[0];
- D[bp_geom].y[D[bp_geom].y.length] = D[bp_geom].y[0];
- close_D();
- drawDashedLine();
- }
-
- function lp2bp(obj,geom,p){
- if(!isOn){ return false; };
- if(mod_digitizeEvent == "setBasePoint"){
- mod_digitize_timeout();
- obj.style.cursor = 'crosshair';
- obj.onclick = set_bp;
- bp_obj = obj;
- bp_geom = geom;
- bp_p = p;
- }
- }
-
- function set_bp(e){
- parent.mb_getMousePos(e);
- var pos = parent.makeClickPos2RealWorldPos(mod_digitize_target,parent.clickX, parent.clickY);
- for(var i=D[bp_geom].x.length; i>bp_p; i--){
- D[bp_geom].x[i] = D[bp_geom].x[i-1];
- D[bp_geom].y[i] = D[bp_geom].y[i-1];
- }
- D[bp_geom].x[bp_p] = pos[0];
- D[bp_geom].y[bp_p] = pos[1];
- drawDashedLine();
- }
-
- function set_D(obj){
- register_D(obj.value);
- }
-
- function close_D(){
- if(D.length > 0){
- D[D.length -1].complete = true;
- }
- for(var i=0; i<D.length; i++){
- if(D[i].complete == true && D[i].type == 'polygon' && D[i].x[0] != D[i].x[D[i].x.length-1]){
- D[i].x[D[i].x.length] = D[i].x[0];
- D[i].y[D[i].y.length] = D[i].y[0];
- drawDashedLine();
- }
-
- }
- for(var i=0; i<document.dig.geomType.length; i++){
- document.dig.geomType[i].checked = false;
- }
- parent.mb_obj2gml("mapframe1");
- }
-
- function del_D(){
- D = new Array();
- drawDashedLine();
- }
-
- function bp_down(e){
- if(bp_active == false && mod_digitizeEvent == "dragBasePoint"){
- bp_obj.onmouseup = bp_up;
- bp_obj.onmousemove = bp_drag;
- parent.mb_getMousePos(e);
- start_x = parent.clickX;
- start_y = parent.clickY;
- end_x = parent.clickX;
- end_y = parent.clickY;
- bp_active = true;
- return false;
- }
- }
-
- function bp_up(e){
- //document.onmouseup = null;
- //document.onmousemove = null;
- bp_active = false;
- parent.mb_getMousePos(e);
- end_x = parent.clickX;
- end_y = parent.clickY;
- var pos = parent.makeClickPos2RealWorldPos(mod_digitize_target,end_x, end_y);
-
- if ( (bp_p == D[bp_geom].x.length - 1 || bp_p == 0) && D[bp_geom].complete == true && D[bp_geom].type == 'polygon') {
- D[bp_geom].x[0] = pos[0];
- D[bp_geom].y[0] = pos[1];
- }
-
- D[bp_geom].x[bp_p] = pos[0];
- D[bp_geom].y[bp_p] = pos[1];
- drawDashedLine();
- }
-
- function bp_drag(e){
- if(bp_active){
- parent.mb_getMousePos(e);
- end_x = parent.clickX;
- end_y = parent.clickY;
- bp_obj.style.backgroundColor = 'transparent';
- bp_obj.style.width = 30;
- bp_obj.style.height = 30;
- bp_obj.style.left = start_x + (end_x - start_x) - (parseInt(bp_obj.style.width)/2);
- bp_obj.style.top = start_y + (end_y - start_y) - (parseInt(bp_obj.style.height)/2);
- }
- }
-
- function setEvent(obj){
- mod_digitizeEvent = obj.value;
- }
-
- function delEvent(){
- mod_digitizeEvent = false;
- for(var i=0; i<document.dig.geomType.length; i++){
- document.modify.mod[i].checked = false;
- }
- mod_digitize_go();
- }
- </script>
- </head>
- <body>
- <form name='dig'>
- <table cellpadding='0' cellspacing='0'>
- <tr>
- <td><input type='radio' name='geomType' value='text' onclick='set_D(this)'></td>
- <td><img src="../img/button_digitize/14_text.png" width='18' height='18'></td>
- <td><input class='button' type='button' value='ok' onclick='close_D()'></td>
- </tr>
- <tr>
- <td><input type='radio' name='geomType' value='line' onclick='set_D(this)'></td>
- <td><img src="../img/button_digitize/line.png" width='18' height='18'></td>
- <td><input class='button' type='button' value='del' onclick='del_D()'></td>
- </tr>
- <tr>
- <td><input type='radio' name='geomType' value='polygon' onclick='set_D(this)'></td>
- <td><img src="../img/button_digitize/14_polyline.png" width='18' height='18'></td>
- <td></td>
- </tr>
- </table>
- </form>
-
- <form name='modify'>
- <table cellpadding='0' cellspacing='0'>
- <tr>
- <td><input name='mod' value='dragBasePoint' type='radio' onclick='setEvent(this)'></td>
- <td><img src='../img/button_digitize/move.png'></td>
- <td><input class='button' type='button' value='del' onclick='delEvent()'></td>
- </tr>
- <tr>
- <td><input name='mod' value='setBasePoint' type='radio' onclick='setEvent(this)'></td>
- <td><img src='../img/button_digitize/newNode.png'></td>
- <td></td>
- </tr>
- <tr>
- <td><input name='mod' value='delBasePoint' type='radio' onclick='setEvent(this)'></td>
- <td><img src='../img/button_digitize/14_layer_deletelayer.png'></td>
- <td></td>
- </tr>
- </table>
-
- </form>
- </body>
- </html>
\ No newline at end of file
More information about the Mapbender_commits
mailing list