Java3D Applet flackert wenn ein Button(HTML) gedrückt wird

mattn

Aktives Mitglied
wie der titel schon sagt flackert das applet wenn ich nen html button drück...
laut output des unten stehenden codes ist DoubleBuffering aktiviert...
warum flackert es dennoch
Java:
		//Double Buffering Check
		if (c.getDoubleBufferAvailable()== true) System.out.println("c.getDoubleBufferAvailable() =  TRUE"); 	else System.out.println("c.getDoubleBufferAvailable() =  FALSE");
		if (c.getDoubleBufferEnable() == true) System.out.println("getDoubleBufferEnable() =  TRUE"); 			else System.out.println("getDoubleBufferEnable() =  FALSE");
 
Zuletzt bearbeitet:

Marco13

Top Contributor
Abgesehen von
Code:
System.out.println("c.getDoubleBufferAvailable() = "+c.getDoubleBufferAvailable());
bräuchte man da mehr infos.
 

L-ectron-X

Gesperrter Benutzer
Was für ein Objekt ist 'c'? Hast du ein Applet oder ein JApplet?
Kann man sich das Applet mal irgendwo ansehen und ausprobieren, damit man mal sieht, was passiert?
 

mattn

Aktives Mitglied
c ist mein canvas objekt...


new node wird via javascript aufgerufen

Java:
public class index extends Applet{
	
	private SimpleUniverse u = null;
	GraphicsConfiguration config;
	Canvas3D c;
	BranchGroup rootBG, boxBG, lineBG;
	BoundingSphere BigBounds = new BoundingSphere(new Point3d(),100000);
	
	Box box;
	TransformGroup boxTG;
	Point3d bar;
	Point3f[] plaPts;
	Point3f tmpPt;
	Color3f white = new Color3f(1.0f, 1.0f, 1.0f);
	TransformGroup BoxTG, BoxTG2;
	Transform3D BoxT3D, BoxT3D2;
	Shape3D plShape;
	Appearance boxAppearance;

/*************************************************************/	
	
	public void init(){
		System.out.println("init");
		setLayout(new BorderLayout());
		config = SimpleUniverse.getPreferredConfiguration();
		c= new Canvas3D(config);
		add("Center", c);
		u = new SimpleUniverse(c);	
		u.getViewingPlatform().setNominalViewingTransform();
		u.addBranchGraph(createSceneGraph());
	}
	
	public void licht(){
		AmbientLight ALgt = new AmbientLight(new Color3f(1f,1f,1f));
		DirectionalLight DLgt = new DirectionalLight(new Color3f(1f,1f,1f),
													 new Vector3f(-0.5f,-0.5f,-1f));
		ALgt.setInfluencingBounds(BigBounds);
		DLgt.setInfluencingBounds(BigBounds);
		rootBG.addChild(ALgt);
		rootBG.addChild(DLgt);
	}
	
	public void newNode(){
		System.out.println("newNode");
		boxBG = new BranchGroup();
		boxTG = new TransformGroup();
		box= new Box(0.01f,0.01f,0.01f, boxAppearance);
	
		boxTG.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
		boxTG.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
		boxTG.setCapability(TransformGroup.ENABLE_PICK_REPORTING);
		
		boxTG.addChild(box);
		boxBG.addChild(boxTG);
		rootBG.addChild(boxBG);
	
	}

	
	
	public class MyCallbackClass extends Object implements PickingCallback{
        public void transformChanged(int type, TransformGroup tg) {
        	//todo
        }
	} 

	
	
	
	
	private BranchGroup createSceneGraph() {
		
			System.out.println("createSceneGraph");
			rootBG = new BranchGroup();
			rootBG.setCapability(BranchGroup.ALLOW_CHILDREN_WRITE);
			rootBG.setCapability(BranchGroup.ALLOW_CHILDREN_READ);
			rootBG.setCapability(BranchGroup.ALLOW_CHILDREN_EXTEND);
			//PickTranslateBehavior
			PickTranslateBehavior pickT = new PickTranslateBehavior(rootBG, c, BigBounds);
			PickingCallback myCallback = new MyCallbackClass();
			pickT.setupCallback(myCallback);
			
			boxAppearance = new Appearance();
			boxAppearance.setMaterial(	new Material(new Color3f(0f,0f,1f),
					   					new Color3f(0f,0f,0f),
					   					new Color3f(1f,0f,0f),
					   					new Color3f(1f,1f,1f), 
					   					100f));		
			
			licht(); 
			rootBG.addChild(pickT);
			rootBG.compile();
			return rootBG;	 
		}
	
	public void destroy(){
		System.out.println("destroy");
		u.cleanup();
	}
	

}

allerdings werd ich später evtl. JApplet benuzen müssen
 
Zuletzt bearbeitet:

L-ectron-X

Gesperrter Benutzer
Dann baue das Ganze gleich als Swing-Applet auf, da hast du das DoubleBuffering bereits inclusive.
Canvas ist eine AWT-Komponente, da müsste das DoubleBuffering vom Programmierer implementiert werden.
 

mattn

Aktives Mitglied
geht leider nicht so ohne weiteres... da die komponenten, wie z.b. PickTranslateBehavior explizit das canvas object brauchen... jcanvas geht auch nicht

das kuriose ist aber... das nur die buttons das flackern verursachen.... radiobuttons nicht ???:L
 
Zuletzt bearbeitet:

L-ectron-X

Gesperrter Benutzer
Von welchem Typ sind die Buttons? Hast du an irgendeiner Stelle noch andere AWT-Komponenten?
Swing und AWT sollten nicht gemischt werden.
 

mattn

Aktives Mitglied
das ganze ist so aufgebaut...
tablelayout(statt frames)
im oberen teil wird das applet via <applet> tag eingbunden.
im unteren teil habe ich normale html buttons und radiobuttons...
wenn ich auf einen button klick, wird eine javascriptfunktion aufgerufen, welche die methoden im applet auruft(evtl noch parameter übergibt)

wie gesagt bei klick auf den button "neu" oder "lösche" flackert das ganze plugin.... wenn ich aber die radiobox anklick... flackert garnichts....

wie oben schon gepostet... kann man ja canvas3d nach doublebuffering abfragen.. und wenn ich das mache... sagt mir java "true"

hier nen snipplet
HTML:
<script language="JavaScript">
<!--
    function newNode() {
      document.j3dApplet.newNode();
    }

     function chkMode(){
      var i;
      /* jeden Radiobutton abchecken : */
      for (i=0;i<document.modeForm.elements.length;i++){
        if (document.modeForm.elements[i].checked){
         document.j3dApplet.chkMode(document.modeForm.elements[i].value);
        }
      }
    }


//-->
</script>

<form name="form">
  <input type="button" name="neu" value="neu" onClick="newNode();">
  <input type="button" name="lösche" value="lösche" onClick="deleteNode();">   
</form>


<form name="modeForm">
  view: <input type="radio" name="mode" value="view" onClick="chkMode()"  checked="true"> <br>
  manipulate <input type="radio" name="mode" value="manipulate" onClick="chkMode()">  <br>
</form>

im applet benutz ich folgende Komponenten...
String, Vector...
Java:
SimpleUniverse
GraphicsConfiguration - awt
Canvas3D
BranchGroup
TransformGroup
Transform3D
BoundingSphere
PickCanvas
Appearance
PolygonAttributes
Primitive
Box - swing
Point3d
Point3f
BoundingBox
PickTranslateBehavior
PickZoomBehavior
DirectionalLight
AmbientLight
Shape3D
 
Zuletzt bearbeitet:

mattn

Aktives Mitglied
so hier hab ich die klassen gezipt...
bitte auch das readme lesen...
achja...
verschieben der würfel geht mit der rechten bzw mittlerren(klick aufs rad) maustaste - manipulate
im view modus... rotieren mit der linken... verschieben mit der rechteun und zoomen mit der

edit
die html seite liegt dann im odner bin
 

Anhänge

  • Project.zip
    10,8 KB · Aufrufe: 2
  • readme.txt
    718 Bytes · Aufrufe: 4
Zuletzt bearbeitet:

mattn

Aktives Mitglied
so hier hab ich die klassen gezipt...
bitte auch das readme lesen...
achja...
verschieben der würfel geht mit der rechten bzw mittlerren(klick aufs rad) maustaste - manipulate
im view modus... rotieren mit der linken... verschieben mit der rechteun und zoomen mit der

edit
die html seite liegt dann im odner bin

da keine lösung gefunden wurde habe ich einfach nen panel mit awt komponenten ans applet gehängt welche ohne flackern funktionieren
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Ant Build File, wie ist der Java3D Native Code einzubinden? Tools - Maven, Gradle, Ant & mehr 6
M Java3D in Eclipse einbinden Tools - Maven, Gradle, Ant & mehr 4
M Java3d Linie mit Antialiasing geht nicht ??? Tools - Maven, Gradle, Ant & mehr 15
B java3d und webstart Tools - Maven, Gradle, Ant & mehr 4
B Applet: com.sun.deploy.security.BlockedException :-( Tools - Maven, Gradle, Ant & mehr 0
M Applet Applet legt Browser lahm Tools - Maven, Gradle, Ant & mehr 3
J Applet Aus anderer Browserinstanz Applet abfragen Tools - Maven, Gradle, Ant & mehr 2
P Linux Applet/Webstart Schriftunterschiede Tools - Maven, Gradle, Ant & mehr 3
E JMol -Applet Einbindung Tools - Maven, Gradle, Ant & mehr 0
T Applet Applet und IText wirft Incompatible magic value 1008813135 Fehler Tools - Maven, Gradle, Ant & mehr 6
P Applet Java Applet läuft im Browser nicht mehr (HTTPClient - NoClassDefFoundError) Tools - Maven, Gradle, Ant & mehr 3
P Applet Applet Signatur auf Server mit SSL-Zertifikat? Tools - Maven, Gradle, Ant & mehr 7
H Applet Applet wird nicht angezeigt Tools - Maven, Gradle, Ant & mehr 2
M Applet Applet funktioniert in Google Chrome nicht Tools - Maven, Gradle, Ant & mehr 2
O Applet "Anwendung kann nicht ausgeführt werden" Tools - Maven, Gradle, Ant & mehr 6
Q Applet Fehlermeldung bei Applet-Wechsel Tools - Maven, Gradle, Ant & mehr 4
T Daten per POST-Methode aus Java-Applet nach php-Script senden Tools - Maven, Gradle, Ant & mehr 3
R Applet friert Adresszeile des Firefox ein Tools - Maven, Gradle, Ant & mehr 2
K Applet als Jar-Datei in HTML einbinden Tools - Maven, Gradle, Ant & mehr 14
H Applet-Fehlermeldung Tools - Maven, Gradle, Ant & mehr 10
H Applet läuft nicht im Browser Tools - Maven, Gradle, Ant & mehr 3
Q Applet Applet läuft nicht im Browser Tools - Maven, Gradle, Ant & mehr 14
J Applet URL mittels TTS als Applet lesen lassen Tools - Maven, Gradle, Ant & mehr 40
F Applet verwischt, wenn Seite gescrollt wird Tools - Maven, Gradle, Ant & mehr 16
S Applet Applet mit C# öffnen: java.lang.SecurityException: Permission denied (WinXP) Tools - Maven, Gradle, Ant & mehr 8
J Applet-Quellcode einsehen Tools - Maven, Gradle, Ant & mehr 6
E Applet Applet und Datenbank Konzept Tools - Maven, Gradle, Ant & mehr 4
A Applet: Html Datei und Class Datei nicht im selben Verzeichnis Tools - Maven, Gradle, Ant & mehr 2
S Applet soll Textdatei von fremdem Server öffnen Tools - Maven, Gradle, Ant & mehr 8
E Java Applet bearbeiten Tools - Maven, Gradle, Ant & mehr 8
Quasar Wie signiere ich mein Applet richtig? Tools - Maven, Gradle, Ant & mehr 6
M mit Applet Javascript Aufrufen Tools - Maven, Gradle, Ant & mehr 2
S Applet and stop() method und gui blocked Tools - Maven, Gradle, Ant & mehr 4
A Applet Applet startet nach Einbinden auf Website nicht Tools - Maven, Gradle, Ant & mehr 4
A Applet, xxx.jar und hsqldb Tools - Maven, Gradle, Ant & mehr 4
T Webstart oder Applet Tools - Maven, Gradle, Ant & mehr 2
H Applet applet neu laden im browser Tools - Maven, Gradle, Ant & mehr 10
M Applet neustart Tools - Maven, Gradle, Ant & mehr 5
S Applet request unter Linux Tools - Maven, Gradle, Ant & mehr 14
S Applet GUI nicht im Webbrowser sichtbar Tools - Maven, Gradle, Ant & mehr 5
S Mittel Applet Datei an ein Webserver übertragen Tools - Maven, Gradle, Ant & mehr 2
M Applet in ClientServer J2EE Anwendung debugen Tools - Maven, Gradle, Ant & mehr 6
H Java Applet Problem beim einbinden in HTML Tools - Maven, Gradle, Ant & mehr 3
S Policy mit Signiertem Applet verteilen Tools - Maven, Gradle, Ant & mehr 9
F Applet findet include nicht Tools - Maven, Gradle, Ant & mehr 15
L PHP + Java Applet Kommunikation Tools - Maven, Gradle, Ant & mehr 9
C Probleme mit Applet mit SQL im Browser Tools - Maven, Gradle, Ant & mehr 4
G Java-Applet Probleme beim Browser Tools - Maven, Gradle, Ant & mehr 14
G Textfile in Applet laden möglich? Tools - Maven, Gradle, Ant & mehr 2
A Java-Applet Sandbox deaktiviren? Tools - Maven, Gradle, Ant & mehr 2
B Java-Applet geht nicht (auf dem Webserver) Tools - Maven, Gradle, Ant & mehr 9
P Applet läuft nicht in Browser Tools - Maven, Gradle, Ant & mehr 21
V JAR-Datei eines (J)Applet funktioniert nicht - Help! Tools - Maven, Gradle, Ant & mehr 19
S Java Applet per Klick starten? Tools - Maven, Gradle, Ant & mehr 6
S Applet geht nicht Tools - Maven, Gradle, Ant & mehr 25
J Applet signieren Tools - Maven, Gradle, Ant & mehr 2
H Applet - Geschicklichkeitsspiel programmieren Tools - Maven, Gradle, Ant & mehr 16
U Jar funktioniert nicht als Applet Tools - Maven, Gradle, Ant & mehr 3
C Applet Frage Tools - Maven, Gradle, Ant & mehr 4
M Java Applet - enforce use of older JRE Tools - Maven, Gradle, Ant & mehr 3
N Wie Java-Programm zu Applet machen?! Tools - Maven, Gradle, Ant & mehr 2
W Webseite aus Applet öffnen Tools - Maven, Gradle, Ant & mehr 3
lumo Applet - resize Tools - Maven, Gradle, Ant & mehr 7
Icewind Applet reagiert nach neu laden der Webseite nicht mehr verlässlich auf KeyEvents Tools - Maven, Gradle, Ant & mehr 6
R Applet mit MySQL Tools - Maven, Gradle, Ant & mehr 3
A jar datei trotz zertifikat nich aus applet ausführbar Tools - Maven, Gradle, Ant & mehr 4
F Fehlende Applet Rechte Tools - Maven, Gradle, Ant & mehr 12
N [Applet] Button wir nach 5 secs Unsichtbar Tools - Maven, Gradle, Ant & mehr 2
N jar -> applet wie setzt man das am leichtesten um Tools - Maven, Gradle, Ant & mehr 7
V applet Java 1.6 -> 1.5 Problem ... wie mit Ant zu lösen? Tools - Maven, Gradle, Ant & mehr 7
F applet als JAR -> AccessControlException Tools - Maven, Gradle, Ant & mehr 3
grudge File in Applet laden Tools - Maven, Gradle, Ant & mehr 4
E Java Applet - Double Buffering Problem (Flackern) Tools - Maven, Gradle, Ant & mehr 6
R Applet mit bestimmter JRE ausführen Tools - Maven, Gradle, Ant & mehr 9
traysa Wie binde ich ein applet in eine jsp Tools - Maven, Gradle, Ant & mehr 3
D Mit dem Applet das DOM manipulieren? Tools - Maven, Gradle, Ant & mehr 3
ABstraCT Applet getCodeBase() Zugriff auf darüberliegendenden Ordner ? Tools - Maven, Gradle, Ant & mehr 1
S Java-Applet Steuerung IO Karte am Drucker-Port Tools - Maven, Gradle, Ant & mehr 4
P URL aus Applet öffnen? Tools - Maven, Gradle, Ant & mehr 7
ABstraCT Mit Applet in ne Datei auf seinem Server schreiben. Tools - Maven, Gradle, Ant & mehr 10
E Verzögerung beim Refresh (F5) mit einem Applet verursachen Tools - Maven, Gradle, Ant & mehr 16
deetee Applet Frage Tools - Maven, Gradle, Ant & mehr 2
S Fehler in einem Upload - Applet (nicht gelöst!!) Tools - Maven, Gradle, Ant & mehr 2
G Variable an zweites Applet übergeben Tools - Maven, Gradle, Ant & mehr 3
M Dringend: Sehr kompliziertes Applet Problem Tools - Maven, Gradle, Ant & mehr 4
O Javascript kommuniziert mit Applet? Tools - Maven, Gradle, Ant & mehr 2
H Spracherkennung mit Applet / Policy bzw. Security Fehler Tools - Maven, Gradle, Ant & mehr 2
zilti Nerviger Hinweis bei Applet- und WS-Fenstern - wieso? Tools - Maven, Gradle, Ant & mehr 3
S Datei-/Verzeichniszugriff von signiertem Applet Tools - Maven, Gradle, Ant & mehr 6
G Signiertes Applet installieren? Tools - Maven, Gradle, Ant & mehr 3
G Applet mit Parameter aus JavaScript Tools - Maven, Gradle, Ant & mehr 5
A Applet Maus Koordinaten ohne MouseMotionListener Tools - Maven, Gradle, Ant & mehr 3
K Applet in Eclipse funktioniert, im Browser nicht Tools - Maven, Gradle, Ant & mehr 7
T Applet soll Java Programm starten Tools - Maven, Gradle, Ant & mehr 2
S Applet pai.nt? Tools - Maven, Gradle, Ant & mehr 3
S Applet und File-Object? Tools - Maven, Gradle, Ant & mehr 9
T Applet soll Datei lesen (darf es aber nicht.) Tools - Maven, Gradle, Ant & mehr 3
P Java-Applet funktioniert unter WINXP nicht Tools - Maven, Gradle, Ant & mehr 2
N Java 1.6 Applet auf älteren Versionen ausführbar? Tools - Maven, Gradle, Ant & mehr 4
G Signiertes Applet prüfen? Tools - Maven, Gradle, Ant & mehr 3

Ähnliche Java Themen

Neue Themen


Oben