소스 검색

Polyhedron: fix warnings

1vanK 3 년 전
부모
커밋
aa3432e489
2개의 변경된 파일19개의 추가작업 그리고 20개의 파일을 삭제
  1. 17 18
      Source/Urho3D/Math/Polyhedron.cpp
  2. 2 2
      Source/Urho3D/Math/Polyhedron.h

+ 17 - 18
Source/Urho3D/Math/Polyhedron.cpp

@@ -75,15 +75,14 @@ void Polyhedron::Clip(const Plane& plane)
 {
     clippedVertices_.Clear();
 
-    for (unsigned i = 0; i < faces_.Size(); ++i)
+    for (Vector<Vector3>& face : faces_)
     {
-        Vector<Vector3>& face = faces_[i];
         Vector3 lastVertex;
         float lastDistance = 0.0f;
 
         outFace_.Clear();
 
-        for (unsigned j = 0; j < face.Size(); ++j)
+        for (i32 j = 0; j < face.Size(); ++j)
         {
             float distance = plane.Distance(face[j]);
             if (distance >= 0.0f)
@@ -162,7 +161,7 @@ void Polyhedron::Clip(const Plane& plane)
             float bestDistance = M_INFINITY;
             unsigned bestIndex = 0;
 
-            for (unsigned i = 0; i < clippedVertices_.Size(); ++i)
+            for (i32 i = 0; i < clippedVertices_.Size(); ++i)
             {
                 float distance = (clippedVertices_[i] - lastAdded).LengthSquared();
                 if (distance < bestDistance)
@@ -213,21 +212,19 @@ void Polyhedron::Clear()
 
 void Polyhedron::Transform(const Matrix3& transform)
 {
-    for (unsigned i = 0; i < faces_.Size(); ++i)
+    for (Vector<Vector3>& face : faces_)
     {
-        Vector<Vector3>& face = faces_[i];
-        for (unsigned j = 0; j < face.Size(); ++j)
-            face[j] = transform * face[j];
+        for (Vector3& vertex : face)
+            vertex = transform * vertex;
     }
 }
 
 void Polyhedron::Transform(const Matrix3x4& transform)
 {
-    for (unsigned i = 0; i < faces_.Size(); ++i)
+    for (Vector<Vector3>& face : faces_)
     {
-        Vector<Vector3>& face = faces_[i];
-        for (unsigned j = 0; j < face.Size(); ++j)
-            face[j] = transform * face[j];
+        for (Vector3& vertex : face)
+            vertex = transform * vertex;
     }
 }
 
@@ -236,13 +233,13 @@ Polyhedron Polyhedron::Transformed(const Matrix3& transform) const
     Polyhedron ret;
     ret.faces_.Resize(faces_.Size());
 
-    for (unsigned i = 0; i < faces_.Size(); ++i)
+    for (i32 i = 0; i < faces_.Size(); ++i)
     {
         const Vector<Vector3>& face = faces_[i];
         Vector<Vector3>& newFace = ret.faces_[i];
         newFace.Resize(face.Size());
 
-        for (unsigned j = 0; j < face.Size(); ++j)
+        for (i32 j = 0; j < face.Size(); ++j)
             newFace[j] = transform * face[j];
     }
 
@@ -254,21 +251,22 @@ Polyhedron Polyhedron::Transformed(const Matrix3x4& transform) const
     Polyhedron ret;
     ret.faces_.Resize(faces_.Size());
 
-    for (unsigned i = 0; i < faces_.Size(); ++i)
+    for (i32 i = 0; i < faces_.Size(); ++i)
     {
         const Vector<Vector3>& face = faces_[i];
         Vector<Vector3>& newFace = ret.faces_[i];
         newFace.Resize(face.Size());
 
-        for (unsigned j = 0; j < face.Size(); ++j)
+        for (i32 j = 0; j < face.Size(); ++j)
             newFace[j] = transform * face[j];
     }
 
     return ret;
 }
 
-void Polyhedron::SetFace(unsigned index, const Vector3& v0, const Vector3& v1, const Vector3& v2)
+void Polyhedron::SetFace(i32 index, const Vector3& v0, const Vector3& v1, const Vector3& v2)
 {
+    assert(index >= 0);
     Vector<Vector3>& face = faces_[index];
     face.Resize(3);
     face[0] = v0;
@@ -276,8 +274,9 @@ void Polyhedron::SetFace(unsigned index, const Vector3& v0, const Vector3& v1, c
     face[2] = v2;
 }
 
-void Polyhedron::SetFace(unsigned index, const Vector3& v0, const Vector3& v1, const Vector3& v2, const Vector3& v3)
+void Polyhedron::SetFace(i32 index, const Vector3& v0, const Vector3& v1, const Vector3& v2, const Vector3& v3)
 {
+    assert(index >= 0);
     Vector<Vector3>& face = faces_[index];
     face.Resize(4);
     face[0] = v0;

+ 2 - 2
Source/Urho3D/Math/Polyhedron.h

@@ -90,9 +90,9 @@ public:
 
 private:
     /// Set a triangle face by index.
-    void SetFace(unsigned index, const Vector3& v0, const Vector3& v1, const Vector3& v2);
+    void SetFace(i32 index, const Vector3& v0, const Vector3& v1, const Vector3& v2);
     /// Set a quadrilateral face by index.
-    void SetFace(unsigned index, const Vector3& v0, const Vector3& v1, const Vector3& v2, const Vector3& v3);
+    void SetFace(i32 index, const Vector3& v0, const Vector3& v1, const Vector3& v2, const Vector3& v3);
     /// Internal vector for clipped vertices.
     Vector<Vector3> clippedVertices_;
     /// Internal vector for the new face being constructed.