首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将DJI靶标参数提取到Unity中的XYZ位置

将DJI靶标参数提取到Unity中的XYZ位置
EN

Stack Overflow用户
提问于 2021-04-26 00:08:03
回答 1查看 104关注 0票数 0

我目前正在做一个模拟项目,使用Mavic Mini和Mobile SDK在Unity中跟踪无人机的当前位置。

到目前为止,我已经完成了Unity环境和Android应用程序之间的TCP连接。我的下一步是提取无人机的坐标,并将它们转换为Unity坐标

我尝试的是使用FlightControllerState来获得XYZ速度:

mFlightController = aircraft.getFlightController();

mState = aircraft.getFlightController().getState();

然而,当我试图访问速度值时,这两个方法都会返回0和NaN值(即使我已经控制了无人机移动)

如果使用aircraft.getFlightController(),则mState.getVelocityX();返回0;如果使用,则返回NaN

mState = aircraft.getFlightController().getState();

Edit*:我确实尝试使用了FlightContrllerState的回调函数

代码语言:javascript
复制
mFlightController.setStateCallback(new FlightControllerState.Callback() {
                                @Override
                                public void onUpdate(@NonNull FlightControllerState flightControllerState)
                                {
                                    v1 = Float.toString((float) flightControllerState.getVelocityX());
                                    v2 = Float.toString((float) flightControllerState.getVelocityY());
                                    v3 = Float.toString((float) flightControllerState.getVelocityZ());
                                    strings[0] = v1;
                                    strings[1] = v2;
                                    strings[2] = v3;
                                }

仍然得到相同的结果(0) :(

以前有没有人尝试过这样做,请告诉我如何解决这个问题

非常感谢你的帮助

谢谢

EN

回答 1

Stack Overflow用户

发布于 2021-04-27 23:29:27

你试过dji钥匙了吗?

代码语言:javascript
复制
key = FlightControllerKey.create(FlightControllerKey.VELOCITY_X)
DJISDKManager.getInstance().getKeyManager().addListener((DJIKey)key, (@Nullable Object oldValue, @Nullable Object newValue) -> {....}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67255514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档