资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

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

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

intersects

API起始版本:190

bool intersects(box)

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

Parameters

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

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

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