- From: Michael Bjerregaard Pedersen <mbp@back-bone.dk>
- Date: Wed, 9 Jan 2002 15:35:12 +0100
- To: "'www-svg@w3.org'" <www-svg@w3.org>
The archive search doesn't work at the moment, so forgive me if this question has been asked 100 times before. I'm using the Adobe SVG client. When I click on something I get an onClick event and is able to get the mouse coordinates relative to the clients window. How can I map/translate these to coordinates that are relative to the drawings (0,0)? I have found example code for the most obvious problems, like scale, scroll and pan, but I can't figure out how I make the client give enough information to let me calculate the ratio between a client pixel and the drawing. On example I found did the following: var viewbox = new String(SVGRoot.getAttribute("viewBox")); var viewboxes = viewbox.split(' '); ulXCorner = viewboxes[0]; ulYCorner = viewboxes[1]; var width = viewboxes[2]; var height = viewboxes[3]; var pixWidth = SVGRoot.getAttribute("width"); var pixHeight = SVGRoot.getAttribute("height"); origPixSize = width / pixWidth; but this only works if the width and height attributes does not have units. Unfortunately my SVG-files (converted from AutoCad) specifies units for the aforementioned attributes as shown here: <svg onload="SVGinit(evt)" onfocusin="SVGfocusin(evt)" onfocusout="SVGfocusout(evt)" onactivate="SVGactivate(evt)" onclick="SVGclick(evt)" onmousemove="SVGmousemove(evt)" onmouseup="SVGmouseup(evt)" onmousedown="SVGmousedown(evt)" onmouseover="SVGmouseover(evt)" onmouseout="SVGmouseout(evt)" onscroll="SVGscroll(evt)" onzoom="SVGzoom(evt)" onresize="SVGresize(evt)" style = "shape-rendering:optimizeSpeed; text-rendering:optimizeSpeed; image-rendering:optimizeSpeed" width = "9in" height = "6in" viewBox = "-139766 -83868.2 339501 252740" preserveAspectRatio = "xMidYMid"><script type="text/javascript" xlink:href="/js/svg.js"/><rect x = "-139766" y = "-83868.2" style = "fill:#FFFFFF" width = "339501" height = "252740"/> Any ideas? TIA Regards Michael Bjerregaard-Pedersen Backbone
Received on Wednesday, 9 January 2002 09:35:48 UTC