Hi,gentlmen, I am not sure it is fit to ask such a question here. It puzzled me several days.Thanks a lot to your kindly advise. Using svg and javascript I build a simple GIS application. GIS data are under WGS84 coordinate. Data in my application falles in lat( 103.75-104.1 ),lon(30.3-30.5), which descripts a Chinese city, Chengdu. For sake of simplification, I set svg attribute, viewBox = "103.75 -30.5 0.5 0.2" height = "600" width = "800" then, I changed viewBox to realize zoom and pan. It seems worked well.Problems happened when I try to mark user point on svg with mouse click. I tried to convert screen points to world coordinate, but i could not make it be accurate. It seems number formate in javascript make such error. code fragment, pointx = parseFloat(evt.getClientX()); pointy = parseFloat(evt.getClientY()); px = pointx/this.currentScale/this.ratioX;//translate screen point to world one py = pointy/this.currentScale/this.ratioY;//translate screen point to world one worldx = this.viewBoxX; worldy = this.viewBoxY; markx = worldx+px; marky = worldy+py;
What intrest me is when I look insight I found that markx is accurate while marky not. Would you please show me a hand? Any advice are appreciated. Thanks again Alex
