commit 98bfe573b377c9535ad1268ba04530d913f5b55c
Author: LeszekKoltunski <leszek@koltunski.pl>
Date:   Fri May 23 14:08:44 2025 +0200

    fixes for MeshBase

diff --git a/src/main/java/org/distorted/library/mesh/MeshBase.kt b/src/main/java/org/distorted/library/mesh/MeshBase.kt
index 22c9c6c..9eb4e3c 100644
--- a/src/main/java/org/distorted/library/mesh/MeshBase.kt
+++ b/src/main/java/org/distorted/library/mesh/MeshBase.kt
@@ -394,7 +394,8 @@ abstract class MeshBase
         var mesh: MeshBase
         var comp: TexComponent
         val numMeshes = meshes.size
-        var origVertices = this.numVertices
+        var origVertices = numVertices
+        var numVert: Int
         val origTexComponents: Int
         var numTexComponents: Int
         var origEffComponents = 0
@@ -403,10 +404,10 @@ abstract class MeshBase
         if (origVertices>0)
         {
             origTexComponents = mTexComponent!!.size
-            this.numVertices += (if (this.numVertices%2==1) 2 else 1)
-            mTexComponent!![origTexComponents-1].mEndIndex = this.numVertices-1
+            numVertices += (if (numVertices%2==1) 2 else 1)
+            mTexComponent!![origTexComponents-1].mEndIndex = numVertices-1
             origEffComponents = mEffComponent!!.size
-            mEffComponent!![origEffComponents-1] = this.numVertices-1
+            mEffComponent!![origEffComponents-1] = numVertices-1
         }
 
         for (i in 0 until numMeshes)
@@ -414,15 +415,15 @@ abstract class MeshBase
             mesh = meshes[i]
             numTexComponents = mesh.mTexComponent!!.size
             numEffComponents = mesh.mEffComponent!!.size
-            numVertices = mesh.numVertices
+            numVert = mesh.numVertices
 
-            val extraVerticesBefore = if (this.numVertices==0) 0 else 1
-            val extraVerticesAfter = if ((i==numMeshes-1)) 0 else (if (numVertices%2==1) 2 else 1)
+            val extraVerticesBefore = if (numVertices==0) 0 else 1
+            val extraVerticesAfter  = if ((i==numMeshes-1)) 0 else (if (numVert%2==1) 2 else 1)
 
             for (j in 0 until numTexComponents)
             {
                 comp = TexComponent(mesh.mTexComponent!![j])
-                comp.mEndIndex += (extraVerticesBefore+this.numVertices)
+                comp.mEndIndex += (extraVerticesBefore+numVertices)
                 if (j==numTexComponents-1) comp.mEndIndex += extraVerticesAfter
                 mTexComponent!!.add(comp)
             }
@@ -430,7 +431,7 @@ abstract class MeshBase
             for (j in 0 until numEffComponents)
             {
                 var index = mesh.mEffComponent!![j]
-                index += (extraVerticesBefore+this.numVertices)
+                index += (extraVerticesBefore+numVertices)
                 if (j==numEffComponents-1) index += extraVerticesAfter
                 mEffComponent!!.add(index)
 
@@ -442,12 +443,12 @@ abstract class MeshBase
                 }
             }
 
-            this.numVertices += (extraVerticesBefore+numVertices+extraVerticesAfter)
+            numVertices += (extraVerticesBefore+numVert+extraVerticesAfter)
         }
 
-        val newAttribs1 = FloatArray(VERT1_ATTRIBS*this.numVertices)
-        val newAttribs2 = FloatArray(VERT2_ATTRIBS*this.numVertices)
-        numVertices = origVertices
+        val newAttribs1 = FloatArray(VERT1_ATTRIBS*numVertices)
+        val newAttribs2 = FloatArray(VERT2_ATTRIBS*numVertices)
+        numVert = origVertices
 
         if (origVertices>0)
         {
@@ -459,15 +460,13 @@ abstract class MeshBase
             mVertAttribs2?.copyInto(newAttribs2, 0               , 0 , v2)
             mVertAttribs2?.copyInto(newAttribs2, v2-VERT2_ATTRIBS, v2, v2+VERT2_ATTRIBS)
 */
-
-            System.arraycopy(mVertAttribs1, 0, newAttribs1, 0, v1)
-            System.arraycopy(mVertAttribs1, v1-VERT1_ATTRIBS, newAttribs1, v1, VERT1_ATTRIBS)
-            System.arraycopy(mVertAttribs2, 0, newAttribs2, 0, v2)
-            System.arraycopy(mVertAttribs2, v2-VERT2_ATTRIBS, newAttribs2, v2, VERT2_ATTRIBS)
-
+            System.arraycopy(mVertAttribs1,                0, newAttribs1,  0, VERT1_ATTRIBS*numVert);
+            System.arraycopy(mVertAttribs1, v1-VERT1_ATTRIBS, newAttribs1, v1, VERT1_ATTRIBS        );
+            System.arraycopy(mVertAttribs2,                0, newAttribs2,  0, VERT2_ATTRIBS*numVert);
+            System.arraycopy(mVertAttribs2, v2-VERT2_ATTRIBS, newAttribs2, v2, VERT2_ATTRIBS        );
             origVertices++
 
-            if (numVertices%2==1)
+            if (numVert%2==1)
             {
                 val w1 = VERT1_ATTRIBS*origVertices
                 val w2 = VERT2_ATTRIBS*origVertices
@@ -475,10 +474,8 @@ abstract class MeshBase
                 mVertAttribs1?.copyInto(newAttribs1,w1-VERT1_ATTRIBS,w1,w1+VERT1_ATTRIBS)
                 mVertAttribs2?.copyInto(newAttribs2,w2-VERT2_ATTRIBS,w2,w2+VERT2_ATTRIBS)
 */
-
                 System.arraycopy(mVertAttribs1, w1-VERT1_ATTRIBS, newAttribs1, w1, VERT1_ATTRIBS)
                 System.arraycopy(mVertAttribs2, w2-VERT2_ATTRIBS, newAttribs2, w2, VERT2_ATTRIBS)
-
                 origVertices++
             }
         }
@@ -486,7 +483,7 @@ abstract class MeshBase
         for (i in 0 until numMeshes)
         {
             mesh = meshes[i]
-            numVertices = mesh.numVertices
+            numVert = mesh.numVertices
 
             if (origVertices>0)
             {
@@ -496,10 +493,8 @@ abstract class MeshBase
                 mesh.mVertAttribs1?.copyInto(newAttribs1,0, v1, v1+VERT1_ATTRIBS)
                 mesh.mVertAttribs2?.copyInto(newAttribs2,0, v2, v2+VERT2_ATTRIBS)
 */
-
-                System.arraycopy(mesh.mVertAttribs1, 0, newAttribs1, VERT1_ATTRIBS*origVertices, VERT1_ATTRIBS)
-                System.arraycopy(mesh.mVertAttribs2, 0, newAttribs2, VERT2_ATTRIBS*origVertices, VERT2_ATTRIBS)
-
+                System.arraycopy(mesh.mVertAttribs1, 0, newAttribs1, v1, VERT1_ATTRIBS)
+                System.arraycopy(mesh.mVertAttribs2, 0, newAttribs2, v2, VERT2_ATTRIBS)
                 origVertices++
             }
             val v1 = VERT1_ATTRIBS*origVertices
@@ -508,18 +503,11 @@ abstract class MeshBase
             mesh.mVertAttribs1?.copyInto(newAttribs1,0, v1, v1+VERT1_ATTRIBS*numVertices)
             mesh.mVertAttribs2?.copyInto(newAttribs2,0, v2, v2+VERT2_ATTRIBS*numVertices)
 */
-android.util.Log.e("D", "from: 0 to: "+(VERT1_ATTRIBS*origVertices)+" num: "+(VERT1_ATTRIBS*numVertices) );
-android.util.Log.e("D", "from len: "+mesh.mVertAttribs1?.size +" to len: "+newAttribs1.size);
-
-            System.arraycopy(mesh.mVertAttribs1, 0, newAttribs1, VERT1_ATTRIBS*origVertices, VERT1_ATTRIBS*numVertices)
-
-android.util.Log.e("D", "DONE ");
-
-            System.arraycopy(mesh.mVertAttribs2, 0, newAttribs2, VERT2_ATTRIBS*origVertices, VERT2_ATTRIBS*numVertices)
-
-            origVertices += numVertices
+            System.arraycopy(mesh.mVertAttribs1, 0, newAttribs1, v1, VERT1_ATTRIBS*numVert)
+            System.arraycopy(mesh.mVertAttribs2, 0, newAttribs2, v2, VERT2_ATTRIBS*numVert)
+            origVertices += numVert
 
-            if (i<numMeshes-1&&numVertices>0)
+            if( i<numMeshes-1 && numVert>0 )
             {
                 val w1 = VERT1_ATTRIBS*origVertices
                 val w2 = VERT2_ATTRIBS*origVertices
@@ -527,11 +515,11 @@ android.util.Log.e("D", "DONE ");
                 mesh.mVertAttribs1?.copyInto(newAttribs1, VERT1_ATTRIBS*(numVertices-1), w1, w1+VERT1_ATTRIBS)
                 mesh.mVertAttribs2?.copyInto(newAttribs2, VERT2_ATTRIBS*(numVertices-1), w2, w2+VERT2_ATTRIBS)
 */
-                System.arraycopy(mesh.mVertAttribs1, VERT1_ATTRIBS*(numVertices-1), newAttribs1, VERT1_ATTRIBS*origVertices, VERT1_ATTRIBS)
-                System.arraycopy(mesh.mVertAttribs2, VERT2_ATTRIBS*(numVertices-1), newAttribs2, VERT2_ATTRIBS*origVertices, VERT2_ATTRIBS)
+                System.arraycopy(mesh.mVertAttribs1, VERT1_ATTRIBS*(numVert-1), newAttribs1, w1, VERT1_ATTRIBS)
+                System.arraycopy(mesh.mVertAttribs2, VERT2_ATTRIBS*(numVert-1), newAttribs2, w2, VERT2_ATTRIBS)
                 origVertices++
 
-                if (numVertices%2==1)
+                if (numVert%2==1)
                 {
                     val z1 = VERT1_ATTRIBS*origVertices
                     val z2 = VERT2_ATTRIBS*origVertices
@@ -539,16 +527,16 @@ android.util.Log.e("D", "DONE ");
                     mesh.mVertAttribs1?.copyInto(newAttribs1, VERT1_ATTRIBS*(numVertices-1), z1, z1+VERT1_ATTRIBS)
                     mesh.mVertAttribs2?.copyInto(newAttribs2, VERT2_ATTRIBS*(numVertices-1), z2, z2+VERT2_ATTRIBS)
 */
-                    System.arraycopy(mesh.mVertAttribs1, VERT1_ATTRIBS*(numVertices-1), newAttribs1, VERT1_ATTRIBS*origVertices, VERT1_ATTRIBS)
-                    System.arraycopy(mesh.mVertAttribs2, VERT2_ATTRIBS*(numVertices-1), newAttribs2, VERT2_ATTRIBS*origVertices, VERT2_ATTRIBS)
+                    System.arraycopy(mesh.mVertAttribs1, VERT1_ATTRIBS*(numVert-1), newAttribs1, z1, VERT1_ATTRIBS)
+                    System.arraycopy(mesh.mVertAttribs2, VERT2_ATTRIBS*(numVert-1), newAttribs2, z2, VERT2_ATTRIBS)
                     origVertices++
                 }
             }
         }
 
-        if (origVertices!=this.numVertices)
+        if( origVertices!=numVertices )
         {
-            DistortedLibrary.logMessage("MeshBase: join: origVertices: "+origVertices+" numVertices: "+this.numVertices)
+            DistortedLibrary.logMessage("MeshBase: join: origVertices: "+origVertices+" numVertices: "+numVertices)
         }
 
         var endIndex: Int
