Silnik do grafiki 3D
Ostatnio zmodyfikowano 2013-04-27 20:15
pekfos |
» 2013-04-26 17:27:48 Pewnie w Google.. Jakich plików? |
|
Brezniew Temat założony przez niniejszego użytkownika |
» 2013-04-26 17:34:29 Blender nie obsługuje może formatu FBX. @up Formatów do blendera. |
|
MrPoxipol |
» 2013-04-26 21:03:24 |
|
Brezniew Temat założony przez niniejszego użytkownika |
» 2013-04-27 20:15:09 No to się przyda. :D @edit Piszę właśnie zbiór funkcji matematycznych mam taką klasę: class Vector { public: float x, y, z; Vector() { x = 0; y = 0; z = 0; } Vector( float ax, float ay, float az ) { x = ax; y = ay; z = az; } Vector( const Vector & v ) { x = v.x; y = v.y; z = v.z; } void operator =( const Vector & v ) { x = v.x; y = v.y; z = v.z; } void operator =( const float m ) { x = m; y = m; z = m; } Vector operator +( const Vector & v ) { return Vector( x + v.x, y + v.y, z + v.z ); } Vector operator -( const Vector & v ) { return Vector( x - v.x, y - v.y, z - v.z ); } Vector operator *( const Vector & v ) { return Vector( y * v.z - z * v.y, z * v.x - x * v.z, x * v.y - y * v.x ); } float operator %( const Vector & v ) { return x * v.x + y * v.y + z * v.z; } bool operator ^( const Vector & v ) { return * this % v == 0; } bool operator ||( const Vector & v ) { return * this * v == Vector( 0, 0, 0 ); } bool operator ==( const Vector & v ) { return x == v.x && y == v.y && z == v.z; } void operator +=( const Vector & v ) { x += v.x; y += v.y; z += v.z; } void operator -=( const Vector & v ) { x -= v.x; y -= v.y; z -= v.z; } void operator +=( const float m ) { x += m; y += m; z += m; } void operator -=( const float m ) { x -= m; y -= m; z -= m; } void operator *=( const float m ) { x *= m; y *= m; z *= m; } void operator /=( const float m ) { x /= m; y /= m; z /= m; } Vector operator +( const float m ) { return Vector( x + m, y + m, z + m ); } Vector operator -( const float m ) { return Vector( x - m, y - m, z - m ); } Vector operator *( const float m ) { return Vector( x * m, y * m, z * m ); } Vector operator /( const float m ) { return Vector( x / m, y / m, z / m ); } Vector operator !() { return Vector( - x, - y, - z ); } float Length(); void Normalize() { x = 1; y = 1; z = 1; } void Rotate( float angle, const Vector & p ); }; Mam na myśli metodę Rotate() jak ją napisać, obraca ona wektor o angle-stopni w oku wektora &p. |
|
1 2 « 3 » |