Hello,<div><br></div><div><div>I develop an extension to WebKit which adds support for <a href="http://www.xml3d.org">XML3D</a>. For mouse events on XML3D element I have created custom event type XML3DMouseEvent that inherits from MouseEvent. In addition to normal coordinates it also has 3D position and normal of the element under the cursor. In order to avoid massive changes into WebKit I have decided to convert existing event from MouseEvent into XML3DMouseEvent when going though overloaded XML3DElement::dispatchEvent which allows me to create custom event class only for XML3D elements.</div>

<div><br></div><div>There I also need to perform picking again to actually receive normal and position. However at this stage I don't have actual coordinates where mouse was relative to the actual rendered image (line x, y, tx and ty in RenderObject::nodeAtPoint). All I get is MouseEvent with all it's parameters and the element itself.</div>

<div><br></div><div>Originally I tried using pageX and pageY and deducted offsetTop and offsetLeft from them, but this does not take borders and padding into account. I have tried accessing computedStyle to get border and padding width, but the value in there has type Length and I am not sure how to convert it to actual pixels.</div>

<div><br></div><div>Please let me know how can mouse event position relative to element content (not to border or padding). If there is a nicer and more straitforward way to implement XML3DMouseEvent I would be happy to hear them.</div>

<div><br></div><div>Sergiy Byelozyorov</div><div>Computer Graphics Chair</div><div>Universitat des Saarlandes</div><div>Tel.: +49 (681) 302-3837</div><div>Web: <a href="http://graphics.cs.uni-saarland.de/sbyelozyorov/" target="_blank">http://graphics.cs.uni-saarland.de/sbyelozyorov/</a></div>

<br>
</div>