是否可以通过相机在android中从点A(用户首先触摸的地方)和点B(用户第二次触摸的地方)画一条线。
用户可以触摸第一个点并在另一个方向旋转他的相机来点击第二个点。
我正在使用 gyroscope
、accelerometer
和 magnetometer
(Sensor Fusion),我在触摸时获得 x、y、z 坐标。
但是我们可以在 Canvas 上用户触摸的任何地方绘制 3D 图像吗?类似于 MagicPlan
应用正在做的事情。
最佳答案
Thanks @chipopo but the real concern is, is it possible to actually draw a line >between two points given by gyroscope sensor.
简短的回答,不。陀螺仪是速率传感器,而不是位置传感器。你需要做数学才能获得积分。
由于您使用的是 Android,我会推荐 Orientation 一旦你有了这个,你需要决定一个最适合你的用例的半径,并建立一个引用方向。一旦你捕获了两个方向,如何 map shperical points to a 2d canvas 由你决定.
我过去使用的一种方法是在 Y 上绘制 delta pitch 和在 X 上绘制 delta 航向,但是您可能需要考虑在您的应用尝试执行的上下文中滚动对您意味着什么。
您可能应该使用 openGL,但您可能需要某种绘图库。
关于android - 我们可以在陀螺仪给出的两点之间在android Canvas 上画线吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28580894/