React native ViroPolyline:在ViroARImageMarker.onAnchorFound上的路径不确定

React native ViroPolyline:在ViroARImageMarker.onAnchorFound上的路径不确定,react-native,augmented-reality,viro-react,React Native,Augmented Reality,Viro React,我正在尝试使用ReactNative和ViroReact库(2.20.2版)为IPS(室内定位系统)应用程序开发PoC,我遵循这篇文章的“想法”: 这是我的代码(相关部分): render(){ 返回( 这个。_scene=scene}> ); } _onAnchorFound(evt){ 这是._scene.getCameraOrientationAsync()。然后( (方向)=>{ //console.log('orientation:',orientation.position); 这是

我正在尝试使用ReactNative和ViroReact库(2.20.2版)为IPS(室内定位系统)应用程序开发PoC,我遵循这篇文章的“想法”:

这是我的代码(相关部分):

render(){
返回(
这个。_scene=scene}>
);
}
_onAnchorFound(evt){
这是._scene.getCameraOrientationAsync()。然后(
(方向)=>{
//console.log('orientation:',orientation.position);
这是我的国家({
来源:evt.position,
rota:[0,0,0],//使用几个evt旋转组合进行测试
路径:[0,0,0],[0,-1,0],-1,-1,0],-1,-1,2.5],-5.5,-1,2.5],-5.5,-1,5],-4.5,-1,5],],
发现:正确
});
}
);
}
当ImageMarker找到定位点时,只有当应用程序初始化时相机处于特定方向时,多段线显示的路径才能正常工作(
viroarsecene.onTrackingUpdated
)。换句话说,路径
[[0,0,0],[0,-1,0],…
在启动应用程序时根据相机方向显示在场景中完全不同的位置,我知道原因是x/y/z轴在ARScene初始化时相对于相机位置,但我找不到“重置”的方法摄影机方向值

这是处于正确位置的多段线:

如果我改变ARScene初始化的设备位置,这就是“错误的”多段线:

对于iOS来说,似乎有一种方法允许重置ARScene,但对于Android则不允许。我发现了这一点,并尝试应用为Android提出的解决方案,但没有成功

那么,在这种情况下,什么是正确的方法(Android)?找到重置ARScene的方法?对整个多段线应用某种旋转,让我始终在同一位置显示它

我已经测试了前面几种方法的组合,但没有成功,欢迎提供任何帮助

更新:我得到了一些额外的信息,我可以在“旋转多段线”属性中修改y轴的路径,仅修改y轴的值,但是我找不到一个模式o规则,可以让我自动计算取消固定,我在找到锚时记录了相机和锚旋转值,这些是值es:

cam  rot: [-2.497048218334727, -63.859283946951926, -5.368946609829862] <- Camera rotation
evt  rot: [118.87363684327742, -88.53820541831203, -31.584297363756363] <- Anchor rotation
FIX: [0, -95, 0]
FIX: [0, 265, 0]

cam  rot: [-5.945959710252071, 20.48844502875367, 4.6278877334695805]
evt  rot: [88.5514013437885, -1.4750360204900235, -0.34028717480432263]
FIX: [0, 0, 0]

cam  rot: [170.70103030306413, 52.80923998316522, -178.81384703693524]
evt  rot: [-29.111365903050718, 89.33119038095052, -119.84312755444736]
FIX: [0, 95, 0]
FIX: [0, -265, 0]

cam  rot: [167.1699044644376, 7.111516124189114, 179.5554279958802]
evt  rot: [-84.62749864675119, 2.911754252849452, 176.83732689491694]
FIX: [0, 175, 0]
FIX: [0, -185, 0]

cam  rot: [15.589674554122324, -86.97010326790384, -27.120364052444707]
evt  rot: [-92.58756503002414, -65.74347359176998, -177.77821277384288]
FIX: [0, -120, 0]
FIX: [0, 240, 0]

cam  rot: [177.15412472900047, -21.647645951668018, -177.49628988566144]
evt  rot: [-89.2386276573185, 1.2896090844071653, -179.0481635066017]
FIX: [0, -180, 0]
FIX: [0, 185, 0]

cam rot: [-1.897906585662147, 66.01840236624133, 7.170484562388419]
evt rot: [90.14261002415887, 41.29178909900161, -2.2406920088771076]
FIX: [0, 45, 0]
FIX: [0, -325, 0]

cam  rot: [-26.443176409447332, 75.555791655302, -22.232962427686846]
evt  rot: [90.60874994444472, 49.162369758863626, -1.5288741328490028]
FIX: [0, 55, 0]
FIX: [0, -315, 0]
cam rot:[-2.497048218334727,-63.859283946951926,-5.368946609829862]