当前位置: 首页 > news >正文

域名网站建设dedecms中英文网站

域名网站建设,dedecms中英文网站,网上书店网站建设毕业设计范文,制作小程序的平台AR Quick Look 功能强大,但在应用中嵌入并使用它实现 AR体验却非常简单,如其他所有QuickLook使用一样,简单到只需要提供一个文件名就可以达到目标。 AR Quick Look 支持.usdz 和.reality 两种格式文件,如果在 Xcode 工程中引入了 …

      AR Quick Look 功能强大,但在应用中嵌入并使用它实现 AR体验却非常简单,如其他所有QuickLook使用一样,简单到只需要提供一个文件名就可以达到目标。

      AR Quick Look 支持.usdz 和.reality 两种格式文件,如果在 Xcode 工程中引入了 Reality Composer 工程文件(.rcproject),在 Xcode 编译时会自动将.reproject 文件转换成. realtiy 格式打包进应用程序包中。

      在应用中嵌人并使用 AR Quick Look 时需要遵循 QLPreviewControllerDataSource 协议并实现该协议定的两方法,如表1所示。

表1QLPreviewControllerDataSource 协议方法

numberOfPreviewItems (in: QLPreviewController) -> Int

AR Quick Look 需要知道浏览的模型数目,通常返回1

previewController (QLPreviewController, previewItemAt: Int) -> QLPreviewItem

提供給 AR Quick Look 具体需要展示的模型

描述

方法名称

      在 previewController ()方法中,我们可以直接返回 QLPreviewltem 类型实例,也可以返回ARQuickLookPreviewltem类型实例。ARQuickLookFreviewltem 类继承自 QLPreviewItem类,是专为AR 展示定制的类型,该类提供了两个 AR 专用属性:allowsContentScaling 和 canonical WebPageURL,其中 allowsContentScaling 为布尔值,用于设置是否允许缩放模型,这在一些实物展示类应用场合会比较有用 如家具展示,一般没有必要允许使用者缩放模型;canonicalWebPageURL用于设置分享的文件 URL,如果设置了该值,在使用 AR Quick Look 分享时会分享该链接地址,而如果没有设置则会直接分享模型文件(.usdz或.reality 文件)。

    下面模拟实际使用场景进行演示,为简单起见,我们只在主场景中设置一个按钮,当用户单击这个按钮时会调用 AR Quick Look展示指定的模型,并设置是否允许缩放和分享链接属性。

    (1) 新建一个 SwiftUI View 文件,命名为 ARQuickLookView,具体代码如下。

import SwiftUI
import QuickLook
import ARKitstruct ARQuickLookViewController: UIViewControllerRepresentable {var fileName: Stringvar allowScaling: Boolfunc makeCoordinator() -> ARQuickLookViewController.Coordinator {Coordinator(self)}func makeUIViewController(context: Context) -> UIViewController {let controller = QLPreviewController()controller.dataSource = context.coordinatorreturn controller}func updateUIViewController(_ controller: UIViewController,context: Context) {}class Coordinator: NSObject, QLPreviewControllerDataSource {let parent: ARQuickLookViewControllerprivate lazy var fileURL: URL = Bundle.main.url(forResource: parent.fileName,withExtension: "usdz")!init(_ parent: ARQuickLookViewController) {self.parent = parentsuper.init()}func numberOfPreviewItems(in controller: QLPreviewController) -> Int {return 1}func previewController(_ controller: QLPreviewController,previewItemAt index: Int) -> QLPreviewItem {guard let filePath = Bundle.main.url(forResource: parent.fileName, withExtension: "usdz") else {fatalError("无法加载模型")}let item = ARQuickLookPreviewItem(fileAt: filePath)item.allowsContentScaling = parent.allowScalingitem.canonicalWebPageURL = URL(string: "https://www.example.com/example.usdz")return item}}
}

     在上述代码中,我们首先定义了 fileName、allowScaling 两个变量用于存储 ARQuickLookPreviewItem属性信息,然后遵循了 QLPreviewControllerDataSource 协议并实现了该协议的两个方法。将该类独立出来是为了更好地组织代码、方便使用、简化主代码逻辑。

    (2)在主场景中放置一个按钮,并设置当按钮单击时启用 AR Quick Look 并显示实例化的ARQuickLookView 场景。代码如下所示。

struct ARQuickLookView : View {@State var showingPreview = falsevar body: some View {ARQuickLookViewController(fileName: "fender_stratocaster",allowScaling:true).edgesIgnoringSafeArea(.all).navigationTitle("AR Quick Look")}
}

    在代码中,由于 AR Quick Look 使用代码已封装到 ARQuickLookView 结构体中,因此在主代码中直接调用即可,效果如图所示。​​​​​​​

     在iOS 13及以上版本系统中,AR Quick Look 还支持多模型展示,并支持环境光照明,这大大地拓宽了其使用领域,可以实现诸如家具布置、模型对比等功能。另外,AR Quick Look 与 Reality Composer 的结合,对设计人员非常友好,可以快速开发出AR 应用原型。

http://www.yayakq.cn/news/404726/

相关文章:

  • 大淘客优惠券网站是怎么做的中小型教育网站的开发与建设
  • 如何写网站建设方案书网站数据统计
  • 可以网上做单的网站有哪些宿迁市区建设局网站
  • 网站开发面试题创建网站忘记了怎么办
  • 网站建设服务清单网页设计基础教程视频教程
  • c 做网站实例石家庄网站制作找谁
  • 免费企业自助建站成都最有名的设计公司
  • 专业的移动网站建设公wordpress 菜单 导出
  • 简单网站建设推荐网站搜索条怎么做
  • 能绑定域名的免费网站做室内装修的网站
  • 专做和田玉的网站网站建设费用5万入账
  • 有固定ip自己做网站营销型外贸网站建设软件
  • 给前端做网站的图片叫什么软件开发工程师简历范文
  • 当建设部门网站做跨境电商的网站
  • 设计网站推荐html聚美优品网站建设项目规划书
  • 云数据库可以做网站吗企业所得税怎么申报
  • 免费观看行情软件网站进入帮客户做违法网站违法么
  • 如何验证网站西宁做网站好的公司
  • 岳阳网站开发收费专业微网站哪家专业
  • 手机网站打不开生鲜超市店面设计
  • 电商网站开发北京兰州网站维护
  • 程序_做彩票源码网站开发建湖做网站的公司
  • 百度爱采购网站个人网站模板 免费
  • 网站iis安全配置常州网站制作工具
  • 龙口建网站价格南宁网站开发培训学校
  • 在哪里可以建设网站joomla! 1.5 网站建设基础教程 :宁皓网
  • 网站调优技能国外风格网站
  • 网站做飘浮怎么做个人永久免费自助建站
  • 官方网站内容更新需要怎么做最好的手表网站
  • 地方门户网站建设方案用五百丁做名字的简历网站