开放能力
开发平台
行业应用
生态合作
开发与教学
资讯 社区 控制台
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术
AR与VR
数据智能
场景方案
部署方案
行业应用
智能教育
智能医疗
智能零售
智能工业
企业服务
智能政务
信息服务
智能园区

手势交互

手势交互

手势交互可根据项目需求开启或关闭,每个手势交互之间都是相对独立的存在,目前百度AR支持的手势交互有:单击、双击、长按、捏合、单指平移、双指旋转、滑动等。

滑动手势可以通过lua层回调事件实现手势操作后想要出现的效果,其它手势目前还无法获取手势操作后的回调事件,后续会开放所有手势的回调。

编辑器中只要在项目配置-手势交互配置下根据需要勾选禁用手势即可,默认为开启。手势交互配置主要对整个场景进行各类手势配置,该属性下包括【禁用全部手势】,【禁用双指缩放】,【禁用单击】,【禁用禁用单指滑动平移】,【禁用双指滑动旋转】,【禁用双击屏幕复位】。

滑动

  • 滑动调用接口: scene.on_touch _event = function(event_type, event_x, event_y)
  • event_type: EventType.Scroll | EventType.ScrollDown | EventType.ScrollUp
scene.on_touch_event = function(etype, ex, ey)
    if (etype == ESCROLL_UP) then
        scene.write1.particle.emit_status = "0"
        scene.write2.particle.emit_status = "0"
        isscroll = 0
        ARLOG("ESCROLL_UP")
        return
    end
    if (etype == ESCROLL) then
        local pos = scene:unproject(ex, ey, 200)
        calcuate_diff(pos.x, pos.y, pos.z)
        scene.write2.particle.emitter_position = pos.x .. "," .. pos.y .. "," .. pos.z
        scene.write2.particle.emit_status = "1"
        return
    end
end

复位状态

双击屏幕或点击快速复位按钮,模型复现在当前最佳手机姿态屏幕位置。

  • 位置及姿态初始化:通过设定复位按钮的方式(该方法仅适用于用户手势交互后,无法转动到初始位置)。

复位按钮图

复位按钮拖入到场景树中,即可在脚本配置中对这个按钮配置复位脚本逻辑。

-- Lua 配置 :
          scene.reset.on_click = function()
          
              	app:relocate_current_scene()

          end  
上一篇
灯光
下一篇
天空盒:顶