I have the following lines in my code:
System.out.println("Before:i:j:X: "+i+":"+j+":"+hldx);
// thePoints[0][j] = new Vector3f(hldx, thePoints[0][j].y, hldz);
System.out.println("After:i:j:X: "+i+":"+j+":"+hldx);
Which prints:
Before:i:j:X: 2:1:4.048341
After:i:j:X: 2:1:4.048341
Before:i:j:X: 2:2:4.09195
After:i:j:X: 2:2:4.09195
Before:i:j:X: 2:3:4.1265583
After:i:j:X: 2:3:4.1265583
Before:i:j:X: 2:4:4.148778
After:i:j:X: 2:4:4.148778
If I uncomment the new Vector3f(), I get
System.out.println("Before:i:j:X: "+i+":"+j+":"+hldx);
thePoints[0][j] = new Vector3f(hldx, thePoints[0][j].y, hldz);
System.out.println("After:i:j:X: "+i+":"+j+":"+hldx);
Before:i:j:X: 2:1:4.0
After:i:j:X: 2:1:4.0
Before:i:j:X: 2:2:4.0
After:i:j:X: 2:2:4.0
Before:i:j:X: 2:3:4.0
After:i:j:X: 2:3:4.0
Before:i:j:X: 2:4:4.0
After:i:j:X: 2:4:4.0
How come the new Vector3f() is changing the value of hldx? And changing it
*before* the call to new Vector3f()!!??
Must be some code optimization that puts off doing the println until after
hldx gets screwed up....
I have also tried:
float hldy = thePoints[0][j].y;
System.out.println("Before:i:j:X: "+i+":"+j+":"+hldx);
thePoints[0][j] = new Vector3f(hldx, hldy, hldz);
System.out.println("After:i:j:X: "+i+":"+j+":"+hldx);
as well as:
float hldy = thePoints[0][j].y;
System.out.println("Before:i:j:X: "+i+":"+j+":"+hldx);
thePoints[0][j] = new Vector3f();
thePoints[0][j].set(hldx, hldy, hldz);
System.out.println("After:i:j:X: "+i+":"+j+":"+hldx);
They all change the value of hldx.
Bob Gray
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".