40 lines
911 B
Markdown
40 lines
911 B
Markdown
|
|
# Vector3::operator*
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
Vector3 operator*(float scalar) const
|
||
|
|
Vector3 operator*(const Vector3& other) const
|
||
|
|
```
|
||
|
|
|
||
|
|
向量乘法。支持向量与标量相乘,以及向量分量对应相乘。
|
||
|
|
|
||
|
|
**参数:**
|
||
|
|
- `scalar` - 标量值(用于第一个重载)
|
||
|
|
- `other` - 向量(用于第二个重载,分量相乘)
|
||
|
|
|
||
|
|
**返回:** `Vector3` - 乘法结果
|
||
|
|
|
||
|
|
**线程安全:** ✅
|
||
|
|
|
||
|
|
**复杂度:** O(1)
|
||
|
|
|
||
|
|
**示例:**
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
Vector3 v(1.0f, 2.0f, 3.0f);
|
||
|
|
|
||
|
|
// 标量乘法
|
||
|
|
Vector3 scaled = v * 2.0f; // (2.0f, 4.0f, 6.0f)
|
||
|
|
|
||
|
|
// 分量相乘
|
||
|
|
Vector3 a(1.0f, 2.0f, 3.0f);
|
||
|
|
Vector3 b(2.0f, 3.0f, 4.0f);
|
||
|
|
Vector3 componentwise = a * b; // (2.0f, 6.0f, 12.0f)
|
||
|
|
```
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [Vector3 类总览](vector3.md) - 返回类总览
|
||
|
|
- [`operator/`](operator_div.md) - 除法运算
|
||
|
|
- [`operator*=`](operator_mul_assign.md) - 乘法赋值
|
||
|
|
- [Quaternion * Vector3](quaternion-multiply.md) - 四元数旋转向量
|