BoundingBox
所有文档

          AR开放平台

          BoundingBox

          此类封装BoundingBox相关数据与操作,BoundingBox代表平行世界坐标轴的AABB包围盒,主要数据有三轴最小点、三轴最大点、中心点等。

          Public methods
          BoundingBox BoundingBox
          AABB包围盒的无参构造函数
          BoundingBox BoundingBox(ARVec3 min, ARVec3 max)
          AABB包围盒的有参构造函数
          BoundingBox center
          获取包围盒的中心
          BoundingBox half_extent
          获取包围盒的三轴长度的一半
          BoundingBox merge
          合并目标包围盒到当前包围盒
          BoundingBox intersects(box)
          判定和目标包围盒是否相交
          BoundingBox set(ARVec3 min, ARVec3 max)
          设定包围盒的最小最大点
          BoundingBox set(box)
          用目标包围盒设定当前包围盒的数据
          Demo
          BoundingBox Demo BoundingBox BoundingBoxDemo ()
          Demo示例

          BoundingBox Demo

          BoundingBox BoundingBoxDemo ()

          demo示例

          sample:
          local box = scene.node:get_bounding_box()
          local center = box:center()
          local half_extent = box:half_extent()
          local min = center - half_extent
          local max = center + half_extent

          BoundingBox

          API起始版本:190

          BoundingBox BoundingBox()

          Returns

          • BoundingBox:默认参数构造的AABB包围盒

          AABB包围盒的无参构造函数

          sample:
          local BoundingBox = ae.BoundingBox:new_local()

          BoundingBox(ARVec3 min, ARVec3 max)

          API起始版本:190

          BoundingBox BoundingBox(ARVec3 min, ARVec3 max)

          AABB包围盒的有参构造函数

          Parameters

          • min | ARVec3:包围盒坐标轴最小点
          • max | ARVec3:包围盒坐标轴最大点

          Returns

          • BoundingBox:AABB包围盒
          sample:
          local bounding_box = ae.BoundingBox:new_local(ae.ARVec3:new_local(0,0,0),ae.ARVec3:new_local(5,5,5))

          center

          API起始版本:190

          ARVec3 center()

          获取包围盒的中心

          Returns

          • ARVec3:包围盒的中心点
          sample:
          local box_center = bounding_box:center()

          half_extent

          API起始版本:190

          ARVec3 half_extent()

          获取包围盒的三轴长度的一半

          Returns

          • ARVec3:包围盒的三轴长度的一半
          sample:
          local box_half_extent = bounding_box:half_extent()

          merge

          API起始版本:190

          void merge(box)

          合并目标包围盒到当前包围盒

          Parameters

          • BoundingBox | box:待合并包围盒
          sample:
          box:merge(target_box)

          intersects

          API起始版本:190

          bool intersects(box)

          判定和目标包围盒是否相交

          Parameters

          • BoundingBox | box:待判定是否相交的包围盒

          Returns

          • bool:是否相交
          sample:
          local success = box:intersects(box1)

          set(ARVec3 min, ARVec3 max)

          API起始版本:190

          void set(ARVec3 min, ARVec3 max)

          设定包围盒的最小最大点

          Parameters

          • min | ARVec3:包围盒坐标轴最小点
          • max | ARVec3:包围盒坐标轴最大点
          sample:
          box:set(ae.ARVec3:new_local(0,0,0),ae.ARVec3:new_local(5,5,5))

          set(box)

          API起始版本:190

          void set(box)

          用目标包围盒设定当前包围盒的数据

          Parameters

          • BoundingBox | box:目标包围盒
          sample:
          box:set(box1)
          上一篇
          动画
          下一篇
          Plane