GLKVector3参考
PDFCompanion文件
下一个
GLKVector3参考
骨架 | GLKit / GLKMath.h |
|---|---|
宣称 | GLKMathTypes.h GLKVector3.h |
概观
该GLKVector3类型定义了一个组件3浮点向量以及通常用于操纵向量的许多数学运算。图形编程广泛使用向量来表示位置,法线,颜色和其他数据结构。
操作GLKVector3结构的函数将输入视为不可变的,而返回一个代表操作结果的新向量。
功能按任务
创建向量
GLKVector3MakeGLKVector3MakeWithArray
检索关于矢量的信息
GLKVector3LengthGLKVector3Distance
向量执行的数学操作
GLKVector3NegateGLKVector3NormalizeGLKVector3AddScalarGLKVector3SubtractScalarGLKVector3MultiplyScalarGLKVector3DivideScalarGLKVector3AddGLKVector3SubtractGLKVector3MultiplyGLKVector3DivideGLKVector3DotProductGLKVector3CrossProductGLKVector3LerpGLKVector3ProjectGLKVector3MaximumGLKVector3Minimum
比较操作
GLKVector3AllEqualToScalarGLKVector3AllEqualToVector3GLKVector3AllGreaterThanOrEqualToScalarGLKVector3AllGreaterThanOrEqualToVector3GLKVector3AllGreaterThanScalarGLKVector3AllGreaterThanVector3
功能
GLKVector3Add
返回两个向量的和。
代码语言:javascript复制GLKVector3 GLKVector3Add(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
一个新向量,其分量各自表示在两个源向量的相同位置中发现的两个分量之和。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AddScalar
返回通过向向量的每个组件添加标量值创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3AddScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量值。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AllEqualToScalar
返回一个布尔值,指示源向量的所有组件是否等于标量值。
代码语言:javascript复制bool GLKVector3AllEqualToScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量
回报值
YES如果所有矢量的分量都等于值,NO否则。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AllEqualToVector3
返回一个布尔值,指示第一个向量的每个分量是否等于第二个向量的相应分量。
代码语言:javascript复制bool GLKVector3AllEqualToVector3(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
YES如果所有的矢量组件相同,NO否则。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AllGreaterThanOrEqualToScalar
返回一个布尔值,指示源向量的所有组件是否大于或等于标量值。
代码语言:javascript复制bool GLKVector3AllGreaterThanOrEqualToScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量
回报值
YES如果所有矢量的分量都大于或等于标量值,NO否则。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AllGreaterThanOrEqualToVector3
返回一个布尔值,指示第一个向量的每个分量是否大于或等于第二个向量的相应分量。
代码语言:javascript复制bool GLKVector3AllGreaterThanOrEqualToVector3(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
YES如果第一向量中的每个分量大于或等于第二向量的相应分量,NO否则。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AllGreaterThanScalar
返回一个布尔值,指示源向量的所有组件是否大于标量值。
代码语言:javascript复制bool GLKVector3AllGreaterThanScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量
回报值
YES如果所有矢量的分量都大于标量值,NO否则。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3AllGreaterThanVector3
返回一个布尔值,指示第一个向量的每个分量是否大于第二个向量的相应分量。
代码语言:javascript复制bool GLKVector3AllGreaterThanVector3(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
YES如果第一矢量中的每个分量大于第二矢量的相应分量,NO否则。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3CrossProduct
返回两个向量的交叉乘积。
代码语言:javascript复制GLKVector3 GLKVector3CrossProduct(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Distance
返回两点之间的距离。
代码语言:javascript复制float GLKVector3Distance(GLKVector3 vectorStart,GLKVector3 vectorEnd);参数
- vectorStart
- 提供起点坐标的向量。
- vectorEnd
- 提供终点坐标的向量。
回报值
两点之间的距离。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Divide
返回通过将一个向量除以另一个矢量创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3Divide(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 股息
回报值
通过将在第一矢量的相同位置中找到的分量除以在第二矢量的相同位置中找到的分量,分别计算其分量的新向量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3DivideScalar
返回通过将向量的每个分量除以标量值创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3DivideScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量值。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3DotProduct
返回两个向量的点积。
代码语言:javascript复制float GLKVector3DotProduct(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
两个向量的点积。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Length
返回向量的长度。
代码语言:javascript复制float GLKVector3Length(GLKVector3 vector);参数
- 向量
- 一个矢量。
回报值
矢量的长度。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Lerp
返回通过两个向量之间的线性解释创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3Lerp(GLKVector3 vectorStart,GLKVector3 vectorEnd,float t);参数
- vectorStart
- 起始矢量。
- vectorEnd
- 结束向量。
- 内插常数。
回报值
一个新的矢量。
讨论
的值吨通常应该之间0.0和1.0。的值0.0返回初始向量和的值1.0返回结束矢量。t的任何其他值导致两点之间的线性插值。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Make
返回从各个组件值创建的新的三分量向量。
代码语言:javascript复制GLKVector3 GLKVector3Make(float x,float y,float z);参数
- X
- 第一个组件。
- 第二个组件。
- 第三部分。
回报值
初始化矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3MakeWithArray
返回从组件数组创建的新的三分量向量。
代码语言:javascript复制GLKVector3 GLKVector3MakeWithArray(float values [3]);参数
- 值
- 数组包含组件值。
回报值
数组。
讨论
初始化矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Maximum
返回一个新向量,其中每个位置的分量值是源向量中相同位置处的最大分量值。
代码语言:javascript复制GLKVector3 GLKVector3Maximum(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Minimum
返回一个新向量,其中每个位置的分量值是源向量中相同位置处的最小分量值。
代码语言:javascript复制GLKVector3 GLKVector3Minimum(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Multiply
返回两个向量的乘积。
代码语言:javascript复制GLKVector3 GLKVector3Multiply(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 第一个矢量。
- vectorRight
- 第二个矢量。
回报值
一个新向量,其分量各自表示在两个源向量的相同位置中发现的分量的乘积。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3MultiplyScalar
返回通过将向量的每个分量乘以标量值创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3MultiplyScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量值。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Negate
返回通过否定另一个向量的组件值创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3Negate(GLKVector3 vector);参数
- 向量
- 一个矢量。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Normalize
返回通过将输入向量归一化为一段长度创建的新向量1.0。
GLKVector3 GLKVector3Normalize(GLKVector3 vector);参数
- 向量
- 一个矢量。
回报值
一个新的矢量。
讨论
所得到的向量指向与输入向量相同的方向,但具有长度1.0。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Project
返回通过将向量投影到另一个向量上创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3Project(GLKVector3 vectorToProject,GLKVector3 projectionVector);参数
- vectorToProject
- 正在投影的矢量。
- projectionVector
- 投影向量。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3Subtract
返回两个向量之间的差异。
代码语言:javascript复制GLKVector3 GLKVector3Subtract(GLKVector3 vectorLeft,GLKVector3 vectorRight);参数
- vectorLeft
- 起始矢量。
- vectorRight
- 向量减去。
回报值
一个新向量,其分量各自表示在两个源向量的相同位置中发现的分量之间的差异。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
GLKVector3SubtractScalar
返回通过从矢量的每个分量中减去标量值创建的新向量。
代码语言:javascript复制GLKVector3 GLKVector3SubtractScalar(GLKVector3 vector,float value);参数
- 向量
- 一个矢量。
- 值
- 标量值。
回报值
一个新的矢量。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKVector3.h
数据类型
GLKVector3
3分量矢量的表示。
代码语言:javascript复制union _GLKVector3 {struct {float x,y,z; }; struct {float r,g,b; }; struct {float s,t,p; }; float v [3];}; typedef union _GLKVector3 GLKVector3;字段
x- 矢量中的第一个组件。通常在矢量指的是位置或正常时使用。
y- 向量中的第二个组件。通常在矢量指的是位置或正常时使用。
z- 向量中的第三个组件。通常在矢量指的是位置或正常时使用。
r- 矢量中的第一个组件。通常在矢量指的是颜色值时使用。
g- 向量中的第二个组件。通常在矢量指的是颜色值时使用。
b- 向量中的第三个组件。通常在矢量指的是颜色值时使用。
s- 矢量中的第一个组件。通常在矢量指纹理坐标时使用。
t- 向量中的第二个组件。通常在矢量指纹理坐标时使用。
p- 向量中的第三个组件。通常在矢量指纹理坐标时使用。
v- 向量的元素表示为数组。
可用性
- 适用于iOS 5.0及更高版本。
声明在
GLKMathTypes.h


