Lines Matching defs:SkV3
51 struct SK_API SkV3 {
54 bool operator==(const SkV3& v) const {
57 bool operator!=(const SkV3& v) const { return !(*this == v); }
59 static SkScalar Dot(const SkV3& a, const SkV3& b) { return a.x*b.x + a.y*b.y + a.z*b.z; }
60 static SkV3 Cross(const SkV3& a, const SkV3& b) {
63 static SkV3 Normalize(const SkV3& v) { return v * (1.0f / v.length()); }
65 SkV3 operator-() const { return {-x, -y, -z}; }
66 SkV3 operator+(const SkV3& v) const { return { x + v.x, y + v.y, z + v.z }; }
67 SkV3 operator-(const SkV3& v) const { return { x - v.x, y - v.y, z - v.z }; }
69 SkV3 operator*(const SkV3& v) const {
72 friend SkV3 operator*(const SkV3& v, SkScalar s) {
75 friend SkV3 operator*(SkScalar s, const SkV3& v) { return v*s; }
77 void operator+=(SkV3 v) { *this = *this + v; }
78 void operator-=(SkV3 v) { *this = *this - v; }
79 void operator*=(SkV3 v) { *this = *this * v; }
85 SkScalar dot(const SkV3& v) const { return Dot(*this, v); }
86 SkV3 cross(const SkV3& v) const { return Cross(*this, v); }
87 SkV3 normalize() const { return Normalize(*this); }
223 static SkM44 Rotate(SkV3 axis, SkScalar radians) {
232 static SkM44 LookAt(const SkV3& eye, const SkV3& center, const SkV3& up);
308 SkM44& setRotateUnitSinCos(SkV3 axis, SkScalar sinAngle, SkScalar cosAngle);
316 SkM44& setRotateUnit(SkV3 axis, SkScalar radians) {
327 SkM44& setRotate(SkV3 axis, SkScalar radians);
386 SkV3 operator*(SkV3 v) const {