Updating Geometry

I'm writing an application which must plot a 3D curve. It has 3 panels, each of which has a 2D projection of the curve (xy, xz, yz). Moving the points on the panels will change the properties of the underlying 3D curve.

When I start the application, The 3D curve is shown correctly, but when I move the points, the 3D curve doesn't change.

I have added a custom behavior to the BranchGroup, which is woken up with a postId. This occurs every time the user moves the points on the 2D panels.

The behavior has references to the 3 lines making up the curve, and in the processStimulus, it calls an updatePoints method on each line, passing it the new coordinates.

The line object's updatePoints method calls setGeometry(createGeometry...) to update the underlying geometry of the line.

All the methods get called correctly (i.e. when the points are moved, the behavior's processStimulus is called, and the updatePoints methods of each line are called.)

No exceptions are thrown. However, the view of the 3D curve doesn't change!!!

Any idea why this happens?

As a test, I added a rotation to the behavior when the points are moved, and this rotation took place, but still the curve didn't change!!

Thanks,

Jim

[1286 byte] By [Jim_Cross] at [2007-9-26 13:08:07]
# 1
Are you sure that the canvas3d is actually being redrawn? Try resizing the 3d window manually to force it to redraw the canvas and see if it shows the changes then...
OrangyTang at 2007-7-2 13:06:43 > top of Java-index,Security,Cryptography...
# 2
Resizing the whole frame (which contains the panel containing the 3D canvas) doesn't cause the updated geometry to be reflected in the curve. So I guess the canvas3D is being redrawn. Any other ideas?
Jim_Cross at 2007-7-2 13:06:43 > top of Java-index,Security,Cryptography...