From 7b6b5ba546450e71ecc812356952b594acc5add5 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Sun, 16 Jun 2019 12:44:54 -0400
Subject: [PATCH] Fix shadow touched.

---
 CameraPane.java |   35 ++++++++++++++++++++++-------------
 1 files changed, 22 insertions(+), 13 deletions(-)

diff --git a/CameraPane.java b/CameraPane.java
index b4be4fc..cfdc3d3 100644
--- a/CameraPane.java
+++ b/CameraPane.java
@@ -1890,7 +1890,7 @@
     void PushMatrix(double[][] matrix)
     {
     //    GrafreeD.tracein(matrix);
-        PushMatrix(matrix,1);
+        PushMatrix(matrix, 1);
     }
     
     void PushMatrix()
@@ -9335,7 +9335,7 @@
         
         if (renderCamera != lightCamera)
         //for (int count = parentcam.GetTransformCount(); --count>=0;)
-            LA.matConcat(matrix, parentcam.GlobalTransformInv(), matrix);
+            LA.matConcat(matrix, parentcam.GlobalTransform(), matrix);
         
 //            LA.matConcat(renderCamera.toScreen, renderCamera.toParent, matrix);
             
@@ -9351,7 +9351,7 @@
             
         if (renderCamera != lightCamera)
         //for (int count = parentcam.GetTransformCount(); --count>=0;)
-            LA.matConcat(parentcam.GlobalTransform(), matrix, matrix);
+            LA.matConcat(parentcam.GlobalTransformInv(), matrix, matrix);
 
 //            LA.matConcat(renderCamera.fromParent, renderCamera.fromScreen, matrix);
             
@@ -10550,7 +10550,7 @@
 //        if (parentcam != renderCamera) // not a light
         if (cam != lightCamera)
             //for (int count = parentcam.GetTransformCount(); --count>=0;)
-                LA.matConcat(matrix, parentcam.GlobalTransformInv(), matrix);
+                LA.matConcat(matrix, parentcam.GlobalTransform(), matrix);
             
             for (int j = 0; j < 4; j++)
             {
@@ -10565,7 +10565,7 @@
 //        if (parentcam != renderCamera) // not a light
         if (cam != lightCamera)
             //for (int count = parentcam.GetTransformCount(); --count>=0;)
-                LA.matConcat(parentcam.GlobalTransform(), matrix, matrix);
+                LA.matConcat(parentcam.GlobalTransformInv(), matrix, matrix);
         
             //LA.matConcat(cam.fromScreen, parentcam.fromParent, matrix);
             
@@ -10959,7 +10959,7 @@
 
 //            if (cam != lightCamera)
             //for (int count = parentcam.GetTransformCount(); --count>=0;)
-                LA.xformDir(lightposition, parentcam.GlobalTransformInv(), lightposition); // may 2013
+                LA.xformDir(lightposition, parentcam.GlobalTransform(), lightposition); // may 2013
         }
         
         LA.xformDir(lightposition, cam.toScreen, lightposition);
@@ -10981,7 +10981,7 @@
             {
                 if (cam != lightCamera)
                 //for (int count = parentcam.GetTransformCount(); --count>=0;)
-                   LA.xformDir(light0, parentcam.GlobalTransformInv(), light0); // may 2013
+                   LA.xformDir(light0, parentcam.GlobalTransform(), light0); // may 2013
             }
             
             LA.xformPos(light0, cam.toScreen, light0);
@@ -11894,7 +11894,7 @@
             for (int i = tp.size(); --i >= 0;)
             {
                 //for (int count = tp.get(i).GetTransformCount(); --count>=0;)
-                    LA.xformPos(light, tp.get(i).GlobalTransformInv(), light);
+                    LA.xformPos(light, tp.get(i).GlobalTransform(), light);
             }
 
 
@@ -11912,7 +11912,7 @@
             }
             
         //for (int count = parentcam.GetTransformCount(); --count>=0;)
-            LA.xformPos(light, parentcam.GlobalTransformInv(), light); // may 2013
+            LA.xformPos(light, parentcam.GlobalTransform(), light); // may 2013
 
             LA.xformPos(light, renderCamera.toScreen, light);
             
@@ -13833,6 +13833,8 @@
     
     public void mouseDragged(MouseEvent e)
     {
+        Globals.MOUSEDRAGGED = true;
+        
         //System.out.println("mouseDragged: " + e);
         if (isRenderer)
             movingcamera = true;
@@ -14398,6 +14400,8 @@
 
     public void mouseReleased(MouseEvent e)
     {
+        Globals.MOUSEDRAGGED = false;
+        
         movingcamera = false;
         X = Y = 0;
         //System.out.println("mouseReleased: " + e);
@@ -15513,12 +15517,17 @@
                 {
                     switch (object.selection.get(0).hitSomething)
                     {
-                        case Object3D.hitCenter: gr.setColor(Color.pink); break;
-                        case Object3D.hitRotate: gr.setColor(Color.green); break;
-                        case Object3D.hitScale: gr.setColor(Color.cyan); break;
+                        case Object3D.hitCenter: gr.setColor(Color.pink);
+                            gr.drawLine(X, Y, info.bounds.width/2, info.bounds.height/2);
+                            break;
+                        case Object3D.hitRotate: gr.setColor(Color.yellow);
+                            gr.drawLine(X, Y, info.bounds.width/2, info.bounds.height/2);
+                        break;
+                        case Object3D.hitScale: gr.setColor(Color.cyan);
+                            gr.drawLine(X, Y, info.bounds.width/2, info.bounds.height/2);
+                        break;
                     }
                     
-                    gr.drawLine(X, Y, info.bounds.width/2, info.bounds.height/2);
                 }
             }
         }

--
Gitblit v1.6.2