跑跑啦航模

paopaola2025-3-31QGroundControl地面站4636

  多器件设计模式​QGroundControl旨在使用鼠标和触摸在从台式机到笔记本电脑到平板电脑到小型手机屏幕的多种设备类型上运行。以下是QGC如何做到这一点的描述及其背后的原因。

  高效的1人开发团队​QGC开发用于解决此问题的设计模式是基于快速进行新功能开发,并允许代码库可测试并由一个非常小的团队维护 (假设1个开发人员作为默认的开发团队大小)。实现这一点的模式非常严格,因为不遵循它会导致开发时间变慢和质量降低。

  支持这个1人开发团队的概念会导致一些艰难的决定,并不是每个人都可能对此感到高兴。但它确实导致QGC使用单个代码库在许多操作系统和形式因素上发布。这是大多数其他地面站无法实现的。

  你问的贡献者呢?QGC有相当数量的贡献者。他们不能帮助移动超越这个1人开发团队的概念吗?是的,QGC有相当多的贡献者。但不幸的是,他们来来去去随着时间的推移。当他们离开时,他们贡献的代码仍然必须维护。因此,您可以回到1人开发团队的概念,这主要是过去三年开发的平均水平。

  目标设备​QGC ui设计的优先目标是平板电脑,无论是从触摸角度还是从屏幕尺寸角度来看 (想想10英寸三星Galaxy tab)。由于此决定,其他设备类型和尺寸可能会牺牲一些视觉效果和/或可用性。在做出基于优先级的决定时,当前的顺序是平板电脑,笔记本电脑,台式机,电话 (任何小屏幕)。

  手机大小的屏幕支持​如上所述,此时,较小的电话尺寸的屏幕是QGC的最低级别优先级。更多的重点放在使活动的飞行高度显示,例如飞行视图,更有用。较少关注与设置相关的视图,如设置和计划。这些特定的视图被测试为在小屏幕上功能可用,但使用起来可能很痛苦。

  使用的开发工具​Qt布局控件​QGC不具有针对不同屏幕尺寸和/或形状因子的不同编码的ui。通常,它使用QML布局功能来回流一组QML UI代码,以适应不同的外形。在某些情况下,它在小屏幕尺寸上提供较少的细节,以使事情适合。但这是一个简单的可见性模式。

  FactSystem​QGC内部是一个用于管理系统内所有单个数据的系统。然后将此数据模型连接到控件。

  严重依赖可重用控件​QGC UI是从一组基本的可重用控件和UI元素开发的。这样,添加到可重用控件的任何新功能现在都可以在整个UI中使用。这些可重用控件还连接到FactSystem事实,然后自动提供适当的UI。

  此设计模式的缺点​QGC用户界面最终成为台式机/笔记本电脑/平板电脑/手机的混合风格。因此,不一定看起来或感觉就像它被优化到任何这些。

  鉴于目标设备优先级列表和事实,即QGC往往只是重新布局相同的UI元素,以适应不同的形式因素,你会发现这种混合方法变得更糟,因为你越来越远离优先级目标。因此,小型手机屏幕对可用性的影响最大。

  在某些情况下,QGC可重用控件集可能无法提供绝对最佳的UI。但它仍然用于防止产生额外的维护表面积。

  由于QGC UI对所有操作系统使用相同的UI代码,因此QGC不遵循操作系统本身指定的UI设计准则。它有它自己的视觉风格,这是从每个操作系统中挑选的东西的混合。因此,UI的外观和工作原理在所有操作系统上基本相同。再一次,这意味着例如,在Android上运行的QGC不一定看起来像一个android应用程序。或者在iPhone上运行的QGC不会像大多数其他iPhone应用程序那样看起来或工作。也就是说,这些操作系统用户应该可以理解QGC视觉/功能风格。

  这种设计模式的优点​由于使用此混合模型和控件集完成一次UI编码,因此设计新功能所需的时间更少。布局回流在Qt QML中是相当有能力的,一旦你习惯了它就成为第二天性。

  可以在一个平台上对一段UI进行功能测试,因为功能代码在所有形式因素上都是相同的。只有布局流必须在多个设备上进行视觉检查,但这很容易使用移动模拟器完成。在大多数情况下,这是需要的:

  使用桌面构建,调整窗口大小以测试回流。这通常也会覆盖平板电脑大小的屏幕。

  使用移动模拟器直观地验证手机大小的屏幕。在OSX XCode iPhone模拟器的作品真的很好。

  以上所有这些对于保持我们假设的1人开发团队的高效和保持高质量至关重要。

  未来方向​提高手机 (小屏幕) 级别优先级,以更等于平板电脑。目前的想法是,这不会发生,直到3.3发布时间框架 (释放后,目前正在工作)。

跑跑啦航模淘宝直销

qq群号241350086 微信号paopaola_com qq群号928697906
长距离FPV无人机,高清数字图传,终身保修和升级服务。