查看: 1200|回复: 0
打印 上一主题 下一主题

Unity3D脚本中文教程2.6

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-5-16 14:32:57 |只看该作者 |倒序浏览
Bounds 结构


代表一个轴对齐包围盒。

一个轴对齐包围盒,简称为AABB,是与坐标轴对齐的box并且完全包围一些物体。因为这个box不会绕着轴旋转,所以它可以只用center和extents定义,或者用min和max点定义。

Bounds被Collider.bounds,Mesh.bounds,Renderer.bounds使用。


变量


◆var center : Vector3


描述:包围盒子的中心


◆var extents : Vector3


描述:box的宽度。这个总是size的一半


◆var max : Vector3


描述:box的最大点。这个总是等于center + extents。


◆var min : Vector3


描述:box的最小点。这个总是等于center - extents。


◆var size : Vector3


描述:box的总大小。这个总是extents的二倍。

size.x是宽度, size.y 是高度, size.z 是长度。


构造函数


◆static function Bounds ( center : Vector3 , size : Vector3 ) : Bounds


描述:用给定的center和总size创建新的Bounds。Bounds extents将是给定size的一半。

var bounds = Bounds ( Vector3.zero , Vector3(1,2,1));//在原点常见柱状包围盒


函数


◆function Contains ( point : Vector3 ) : bool


描述:point 包含在这个包围盒中吗 ?


◆function Encapsulate ( point : Vector3 ) : void


描述:增大Bounds以包含这个point.


◆function Encapsulate ( bounds : Bounds ) : void


描述:增大bounds来封装另一个bounds。


◆function Expand ( amount : float ) : void


描述:沿着每个面按照amount增加它的size来扩展这个bounds。


◆function Expand ( amount : Vector3 ) : void


描述:沿着每个面按照amount增加它的size来扩展这个bounds。


◆function IntersectRay ( ray : Ray ) : bool


描述:ray与这个包围盒相交吗?


◆function IntersectRay ( ray : Ray , out distance : float ) : bool


描述:ray与这个包围盒相交吗?

当IntersectRay返回真,distance将是到射线源点的距离。


◆function SetMinMax ( min : Vector3, max : Vector3 ) : void


描述:设定边界为盒子的min和max值。

使用这个函数要比分别指定min和max更快。


◆function SqrDistance ( point : Vector3 ) : float


描述: 点到这个包围盒的最小平方距离。


◆function ToString ( ) : string


描述:返回一个格式化好的字符串
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-6-15 19:00 , Processed in 0.062815 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部