将event.offsetX和event.offset Y的坐标转换为webGL本机坐标
Convert coordinates from event.offsetX and event.offsetY into webGL native coordinates
我有一个用JavaScript编写的webGL程序,我必须在画布上用户点击的地方画一个点。要做到这一点,我需要获得用户单击的位置的坐标。我通过使用JavaScript的event.offsetX
和event.offsetY
来获得相对于画布左上角的点的坐标来实现这一点。这里的问题是,webGL使用不同的坐标系,其中坐标相对于画布的中心。关于如何将event.offsetX
和event.offsetY
坐标转换为webGL的坐标,有什么想法吗?
WebGL与任何其他三维图形环境一样,在不同于画布处理的坐标系中运行。X/Y/Z的值从-1.0到1.0,而不是像素。如果您试图从屏幕坐标(像素)转换为标准化设备坐标(NDC),过程相当简单(见下文),但如果您试图转换为场景的坐标系,则这在很大程度上取决于您将场景投影到屏幕上的方式。
在这篇文章中,阅读标题为标准化设备坐标的部分,了解有关在屏幕坐标和NDC之间转换的更多信息和示例。
相关文章:
- EaseJS拖放;放下(动画CC)电影剪辑的鼠标坐标
- issue with FB.Event.subscribe
- 如何在d3.js中返回路径的y坐标
- Angularjs :$routeChangeStart event
- 在谷歌地图上获取事件的x,y坐标
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- event.prventDefault()持续多久
- 当带有渲染器的DOM元素不在屏幕顶部时,移动了场景的坐标
- 如何在JS Leatflet绘图插件中获取圆的坐标
- 点击(右键点击)使用传单地图库获取图像覆盖的像素坐标
- 查找带有边框的HTML5 Canvas(点击)事件的坐标
- HTML5获取弧的坐标's结束
- 如何在OpenLayers中获取动态绘制的多边形的坐标
- <text区域>在我的html中包含event.keycode==13之后,wrap就不起作用了
- 获取用户位置并将坐标保存在数据库中
- fabric js多边形集合坐标
- KeyDown event for CKeditor
- 使用D3.js和GeoJson在地图上的某些坐标上设置一个小图像
- 如何创建一个谷歌地图地理坐标数组
- 将event.offsetX和event.offset Y的坐标转换为webGL本机坐标