How to dynamically extend PickCanvas object for MouseListener click event in a Java Applet (using Java3D)? -
i developing java applet using java3d. starts branchgroup object (containing set of points) added locale object. pickcanvas created starting locale , class implementing mouselistener constructed starting said pickcanvas.
mouse clicks being detected correctly @ stage. issue having whenever start adding more points applet (by creating new branchgroup object each set of points loaded , appending object initial locale object) mouse clicks not being registered when newly added points selected.
i wrong when refresh pickcanvas of mouselistener implementing object after adding new branchgroup objs. how can make points added in branchgroups after startup picked mouse clicks?
here's how locale, first branchgroup , mouselistener created:
setlayout(new borderlayout()); graphicsconfiguration gc = simpleuniverse.getpreferredconfiguration(); canvas3d canvas3d = new canvas3d(gc); utm_coord_3d observerpoint = new utm_coord_3d(); branchgroup scene=loadpoints(geopathid, startsequenceid, endsequenceid, observerpoint); locale mlocale = new locale(simpleu); mlocale.addbranchgraph(scene); pickcanvas pickcanvas = new pickcanvas(canvas3d, mlocale); pickcanvas.setmode(pickcanvas.bounds); mousemethodspoints mymouseeventlistener = new mousemethodspoints(simpleu, viewt3d, pickcanvas); canvas3d.addmouselistener(mymouseeventlistener); canvas3d.addmousemotionlistener(mymouseeventlistener); canvas3d.addmousewheellistener(mymouseeventlistener); keymethodspoints mykeyeventlistener = new keymethodspoints(canvas3d, simpleu, viewt3d, geopathid, startsequenceid, endsequenceid, tiltx, scene,mlocale, mymouseeventlistener); canvas3d.addkeylistener(mykeyeventlistener); canvas3d.requestfocus(); and how add branchgroups locale object updating pickcanvas:
branchgroup newbranchgroup=mainpoints.loadpoints(geopathid, upperbound+1, upperbound+nfilesloaded, null); newbranchgroup.compile(); mlocale.addbranchgraph(newbranchgroup); pickcanvas pickcanvas = new pickcanvas(canvas3d,mlocale); pickcanvas.setmode(pickcanvas.bounds); mmousemethodspoints.setpickcanvas(pickcanvas); where setpickcanvas() sets pickcanvas in mouselistener implementing class object. tried creating new mousemethodspoints object every time add branchgroup clicks still find no points in areas of new branchgroups.
thank time!
Comments
Post a Comment