From f9325048496d7cdbcad233f8a6b84c88e79adcc2 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Tue, 17 Sep 2019 20:11:47 -0400
Subject: [PATCH] Rename link2master to link2support.

---
 BoundaryRep.java |   42 ++++++++++++++++++++++++++++++------------
 1 files changed, 30 insertions(+), 12 deletions(-)

diff --git a/BoundaryRep.java b/BoundaryRep.java
index 36f7b5d..6fecd44 100644
--- a/BoundaryRep.java
+++ b/BoundaryRep.java
@@ -7,7 +7,8 @@
 
 class BoundaryRep implements java.io.Serializable
 {
-    static final long serialVersionUID = -4852664309425035321L;
+    static final long serialVersionUID = // VERY old 2008 -5762968998168738314L;
+                                        -4852664309425035321L;
 
     transient int displaylist = 0;
     
@@ -530,7 +531,7 @@
     static Vertex vertextemp = new Vertex(true);
     static Vertex vertextemp2 = new Vertex(true);
     
-    static double SEUIL = 0.05f; // 0.1 for rag doll; 0.07;
+    static double SEUIL = 0.025f; // 0.1 for rag doll; 0.07;
         
     // Compute weight of point w/r to this
     float ComputeWeight(Vertex v, double[][] toRoot, int k)
@@ -686,6 +687,7 @@
     
     void RecomputeBasis(BoundaryRep other, double[][] toRoot, Vertex v)
     {
+        CameraPane.CreateSelectedPoint();
         CameraPane.selectedpoint.
             getAverage(cStatic.point1, true);
 
@@ -1003,6 +1005,7 @@
             
             v.closestsupport = -1;
             
+        CameraPane.CreateSelectedPoint();
         CameraPane.selectedpoint.
             getAverage(cStatic.point1, true);
 
@@ -1261,6 +1264,7 @@
         for (int wi = v0.weights.length; --wi>=0;)
             v[wi] = 0;
             
+        CameraPane.CreateSelectedPoint();
         CameraPane.selectedpoint.
             getAverage(cStatic.point1, true);
 
@@ -1398,6 +1402,7 @@
         v0.x = v0.y = v0.z = 0;
         v0.norm.x = v0.norm.y = v0.norm.z = 0;
             
+        CameraPane.CreateSelectedPoint();
         CameraPane.selectedpoint.
             getAverage(cStatic.point1, true);
 
@@ -1998,7 +2003,9 @@
                     continue;
                 
                 // Warning: faster but dangerous
-                if (v.weights != null && v.weights[j] == 0) // < 0.001 * v.totalweight)
+                if (v.weights != null && v.weights[j]
+                         == 0)
+                        //< 0.001 * v.totalweight)
                 {
                     //testweight += v.weights[j-1];
                     continue;
@@ -3768,7 +3775,7 @@
         
         //tempRep.Unstripify();
         
-        tempRep.GenerateNormals2(crease);
+        tempRep.GenerateNormals(crease);
         
         boolean keepnormal = Vertex.normalmode;
         boolean epsequal = Grafreed.epsequal;
@@ -3830,6 +3837,9 @@
             //if (n.dot(v.norm) < 0)
             if (n == null)
                 continue;
+            
+            if (v.norm == null)
+                v.norm = new cVector();
             
             LA.vecCopy(n, v.norm);
             
@@ -4020,8 +4030,6 @@
                 //System.out.println("NEW = " + positions.length);
                 uvmap = new float[ta.getVertexCount() * 2];
                 
-                colors = new float[ta.getVertexCount()]; // * 3];
-
                 ta.getCoordinates(0, positions);
                 ta.getNormals(0, normals);
 //                ta.getColors(0, colors);
@@ -4029,6 +4037,14 @@
 
                 System.out.println("UV = " + uvmap[2] + ", " + uvmap[3] + ";");
 
+                colors = null;
+//                colors = new float[ta.getVertexCount()]; // * 3];
+//
+//                for (int i=colors.length; --i>=0;)
+//                {
+//                        colors[i] = 1;
+//                }
+                
                 triangles = new int[ta.getVertexCount()];
 
                 for (int i = 0; i < triangles.length; i++)
@@ -4066,17 +4082,18 @@
                 positions = new float[3 * ga.getVertexCount()];
                 normals = new float[3 * ga.getVertexCount()];
                 uvmap = new float[2 * ga.getVertexCount()];
-                colors = new float[1 * ga.getVertexCount()];
 
                 tsa.getCoordinates(0, positions);
                 tsa.getNormals(0, normals);
                 tsa.getTextureCoordinates(0, 0, uvmap);
            //     tsa.getColors(0, colors);
-                
-                for (int i=colors.length; --i>=0;)
-                {
-                        colors[i] = 1;
-                }
+
+                colors = null;
+//                colors = new float[1 * ga.getVertexCount()];
+//                for (int i=colors.length; --i>=0;)
+//                {
+//                        colors[i] = 1;
+//                }
 
                 int stripcount = tsa.getNumStrips();
                 triangles = new int[stripcount];
@@ -4085,6 +4102,7 @@
                 stripified = true;
             } catch (ClassCastException e)
             {
+                // ??? aug 2019
                 TriangleArray ta = (TriangleArray) ga;
 
                 positions = new float[3 * ga.getVertexCount()];

--
Gitblit v1.6.2