Normand Briere
2019-10-04 57c5b6cd8d12ffdaa3e0b099451e3c031012750a
CameraPane.java
....@@ -1,4 +1,5 @@
11
2
+import com.bulletphysics.dynamics.RigidBody;
23 import java.awt.*;
34 import java.awt.event.*;
45 import java.awt.image.*;
....@@ -123,7 +124,7 @@
123124 static boolean LOCALTRANSFORM = false;
124125 static boolean FULLSCREEN = false;
125126 static boolean SUPPORT = true;
126
-static boolean INERTIA = true;
127
+static boolean INERTIA = false; // true;
127128 static boolean FAST = false;
128129 static boolean SLOWPOSE = false;
129130 static boolean FOOTCONTACT = true;
....@@ -249,7 +250,7 @@
249250
250251 public javax.media.opengl.GL GetGL0()
251252 {
252
- return null;
253
+ return currentGL;
253254 }
254255
255256 public int GenList()
....@@ -1529,7 +1530,7 @@
15291530 }
15301531 }
15311532 float b = 0;
1532
- if (obj.support != null && obj.link2support)
1533
+ if (obj.support != null && obj.Link2Support())
15331534 {
15341535 b = 1;
15351536 }
....@@ -6961,30 +6962,30 @@
69616962 short residu = 0;
69626963
69636964 // wraparound workarounds
6964
- short fuck = (short) (buffer[i] & 0xFF);
6965
+ short ww = (short) (buffer[i] & 0xFF);
69656966 /*
6966
- residu += (fuck%2);
6967
- if(fuck/2 < 256-residu/2)
6967
+ residu += (ww%2);
6968
+ if(ww/2 < 256-residu/2)
69686969 {
6969
- fuck = (short)((fuck/2) + residu/2);
6970
+ ww = (short)((ww/2) + residu/2);
69706971 if(residu == 2)
69716972 residu = 0;
69726973 }
69736974 else
69746975 {
69756976 residu = 0;
6976
- fuck /= 2;
6977
+ ww /= 2;
69776978 }
69786979 */
6979
- if (i < imglength / 3 || rnd.nextFloat() < 0.5 || fuck >= 254)
6980
+ if (i < imglength / 3 || rnd.nextFloat() < 0.5 || ww >= 254)
69806981 {
6981
- fuck /= 2;
6982
+ ww /= 2;
69826983 } else
69836984 {
6984
- fuck = (short) ((fuck / 2) + fuck % 2);
6985
+ ww = (short) ((ww / 2) + ww % 2);
69856986 }
69866987
6987
- buffer[i] = (byte) fuck;
6988
+ buffer[i] = (byte) ww;
69886989 }
69896990 //System.out.print(bytes[i] + " ");
69906991 //if(buffer[i] >= 0 && buffer[i]<=eps-1) buffer[i] = eps;
....@@ -10760,7 +10761,9 @@
1076010761 }
1076110762 /**/
1076210763
10763
- if (selection)
10764
+ boolean control = ((modifiers & CTRL) != 0);
10765
+
10766
+ if (selection && (!Globals.isLIVE() || control))
1076410767 {
1076510768 selectbuffer.display();
1076610769 return;
....@@ -14340,6 +14343,7 @@
1434014343 public void mouseClicked(MouseEvent e)
1434114344 {
1434214345 System.out.println("mouseClicked: " + e);
14346
+ System.exit(0);
1434314347 }
1434414348
1434514349 public void mousePressed(MouseEvent e)
....@@ -14651,7 +14655,7 @@
1465114655 boolean jump;
1465214656 boolean live;
1465314657
14654
- boolean mute;
14658
+ boolean mute = false;
1465514659
1465614660 // void JumpToTarget()
1465714661 // {
....@@ -14667,6 +14671,28 @@
1466714671 // only one thread!? synchronized
1466814672 void StepToTarget(boolean jump)
1466914673 {
14674
+ RigidBody.pos.x = 0;
14675
+ RigidBody.pos.y = 0;
14676
+ RigidBody.pos.z = 0;
14677
+ if (RigidBody.justclicked)
14678
+ {
14679
+// RigidBody.pos.x = (float)manipCamera.lookAt.x;
14680
+// RigidBody.pos.y = (float)manipCamera.lookAt.y;
14681
+// RigidBody.pos.z = (float)manipCamera.lookAt.z;
14682
+ // System.err.println("selected point = " + Trunk(selectedpoint.toParent[3][0]) + " " + Trunk(selectedpoint.toParent[3][1]) + " " + Trunk(selectedpoint.toParent[3][2]));
14683
+ CreateSelectedPoint();
14684
+
14685
+ RigidBody.pos.x = (float)selectedpoint.toParent[3][0];
14686
+ RigidBody.pos.y = (float)selectedpoint.toParent[3][1];
14687
+ RigidBody.pos.z = (float)selectedpoint.toParent[3][2];
14688
+
14689
+ RigidBody.wind.set(RigidBody.pos);
14690
+ RigidBody.wind.x -= (float)manipCamera.location.x;
14691
+ RigidBody.wind.y -= (float)manipCamera.location.y;
14692
+ RigidBody.wind.z -= (float)manipCamera.location.z;
14693
+ RigidBody.wind.normalize();
14694
+ }
14695
+
1467014696 if (mute)
1467114697 return;
1467214698
....@@ -15013,6 +15039,8 @@
1501315039
1501415040 void GoUp(int mod)
1501515041 {
15042
+ RigidBody.justclicked = true;
15043
+
1501615044 MODIFIERS |= COMMAND;
1501715045 /**/
1501815046 boolean isVR = (mouseMode&VR)!=0;
....@@ -15346,6 +15374,12 @@
1534615374
1534715375 public void mouseReleased(MouseEvent e)
1534815376 {
15377
+ if (isRenderer && !movingcamera)
15378
+ {
15379
+ RigidBody.justclicked = true;
15380
+ System.out.println("justclicked: " + e);
15381
+ }
15382
+
1534915383 Globals.MOUSEDRAGGED = false;
1535015384
1535115385 movingcamera = false;
....@@ -16743,7 +16777,8 @@
1674316777
1674416778 public boolean mouseDrag(Event evt, int x, int y)
1674516779 {
16746
- //System.out.println("mouseDrag: " + evt);
16780
+ System.out.println("mouseDrag: " + evt);
16781
+ System.exit(0);
1674716782 /*
1674816783 drag = true;
1674916784 //System.out.println("Mouse DRAG");
....@@ -16862,6 +16897,7 @@
1686216897 public boolean mouseUp(Event evt, int x, int y)
1686316898 {
1686416899 System.out.println("mouseUp: " + evt);
16900
+ System.exit(0);
1686516901 /*
1686616902 locked = false;
1686716903 if (isRenderer)
....@@ -17132,7 +17168,7 @@
1713217168 return;
1713317169 }
1713417170
17135
- if (WIREFRAME)
17171
+ //if (WIREFRAME)
1713617172 gl.glPolygonMode(gl.GL_FRONT_AND_BACK, gl.GL_FILL);
1713717173
1713817174 gl.glDisable(gl.GL_CULL_FACE);
....@@ -17232,6 +17268,8 @@
1723217268
1723317269 if (WIREFRAME)
1723417270 gl.glPolygonMode(gl.GL_FRONT_AND_BACK, gl.GL_LINE);
17271
+ else
17272
+ gl.glPolygonMode(gl.GL_FRONT_AND_BACK, gl.GL_FILL);
1723517273 }
1723617274
1723717275 private void DrawChecker(GL gl)