From 89b25e7cc97f6fe221dfd41c4d463500f8a31bc1 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Tue, 25 Jun 2019 23:58:09 -0400
Subject: [PATCH] Edit panel pin state.

---
 Mocap.java |   53 ++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 42 insertions(+), 11 deletions(-)

diff --git a/Mocap.java b/Mocap.java
index fc0ff2e..545c82e 100644
--- a/Mocap.java
+++ b/Mocap.java
@@ -484,6 +484,12 @@
     {
         Object3D hip = get(0);
         
+        if (toParent == null)
+        {
+            toParent = LA.newMatrix();
+            fromParent = LA.newMatrix();
+        }
+        
         LA.matConcat(toParent, hip.get(0).toParent, matrix);
         
         mocaporigin.x = matrix[3][0];
@@ -495,6 +501,7 @@
         centroid.z = matrix[3][2];
 //        this.getCentroid(centroid, true);
         
+        CameraPane.CreateSelectedPoint();
         CameraPane.debugpointG.name = "";
         CameraPane.debugpointG.toParent[3][0] = mocaporigin.x;
         CameraPane.debugpointG.toParent[3][1] = mocaporigin.y;
@@ -638,6 +645,24 @@
 //    transient // aout 2013
             Object3D skeleton;
     
+    void ExtractBigData(Object3D o)
+    {
+        super.ExtractBigData(o);
+        
+        o.bvh = this.bvh;
+        o.skeleton = this.skeleton;
+        this.bvh = null;
+        this.skeleton = null;
+    }
+
+    void RestoreBigData(Object3D o)
+    {
+        super.RestoreBigData(o);
+        
+        this.bvh = o.bvh;
+        this.skeleton = o.skeleton;
+    }
+    
     boolean smoothed;
     
     //boolean touched;
@@ -664,8 +689,8 @@
     double targetdirx;
     double targetdirz;
     
-    double goalposx = -20;
-    double goalposz = -10;
+    double goalposx = 0; // -20;
+    double goalposz = 0; // -10;
     
     boolean followpath;
     
@@ -921,7 +946,7 @@
 //                    //GetFileRoot();
                   
                     // sept 2014: //
-                    GrafreeD.RENDERME = 3; // patch for Merge objects
+                    Grafreed.RENDERME = 3; // patch for Merge objects
                     float[] thedata = bvh.animation.getBoneData(0);
                     
                     os.x = (float) (path.get(i).toParent[3][0]); // - thedata[frame*6]);
@@ -1566,7 +1591,7 @@
 
                         lastsoundtime = Globals.framecount;
                         
-                        GrafreeD.hassound = true;
+                        Grafreed.hassound = true;
                     }
 //                    else
 //                        System.out.println("skipped");
@@ -2797,7 +2822,8 @@
                 //if (bone._rotationEnabled)
                 if (//frame > 0 &&
                     !bone.skipmocap &&
-                    !bone.name.contains("head") // &&
+                    !bone.name.contains("head") &&
+                    !bone.name.contains("Head") // &&
                  //   !bone.name.contains("rFoot") &&
                  //   !bone.name.contains("lFoot") &&
 //                    !bone.name.contains("Pinky") &&
@@ -3233,8 +3259,8 @@
         
 // aout 2013        endframe = 0; // june 2013
         
-        //ResetZero();
-        setPose(frame);
+        ResetZero();
+        //setPose(frame);
     }
     
     static int mocapsupport = 0;
@@ -3300,7 +3326,7 @@
             {
                 if (support == null)
                 {
-                    if (new File(fullname).exists())
+                    if (bvh == null && new File(fullname).exists())
                             ObjEditor.LoadBVHFile(fullname, this, false, beginframe, lastframetest);
                     else
                     {
@@ -3889,17 +3915,22 @@
      //   if (firstframe)
      //       return;
         
-        if (!restarted && /*display.restartframe &&*/
-                Globals.isLIVE() && live && display.DrawMode() == display.SHADOW) // FUCK
+        if (//!restarted && /*display.restartframe &&*/
+                Globals.isLIVE() && live && (display.DrawMode() == iCameraPane.SHADOW || !Globals.RENDERSHADOW || !Globals.COMPUTESHADOWWHENLIVE))
         {
             //display.restartframe = false;
             restarted = true;
+        //System.err.println("restarted = true");
             Step();
         }
         else
         {
-            if (Globals.isLIVE() && live && display.DrawMode() != display.SHADOW)
+        //System.err.println("restarted");
+            if (Globals.isLIVE() && live && display.DrawMode() != iCameraPane.SHADOW)
+            {
                 restarted = false;
+        //System.err.println("restarted = false");
+            }
         }
         
         super.drawSelf(display, root, selected, blocked);

--
Gitblit v1.6.2