From 05de3b0797ea2e41462a3a419bccc998c77a30dd Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Mon, 10 Apr 2023 06:05:41 +0200 Subject: GraphUI: Container (Group, Scene): Add removeAllShapes() and expose frustum-culling get/set --- src/graphui/classes/com/jogamp/graph/ui/Scene.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/graphui/classes/com/jogamp/graph/ui/Scene.java') diff --git a/src/graphui/classes/com/jogamp/graph/ui/Scene.java b/src/graphui/classes/com/jogamp/graph/ui/Scene.java index e1ee538ab..d4c981e62 100644 --- a/src/graphui/classes/com/jogamp/graph/ui/Scene.java +++ b/src/graphui/classes/com/jogamp/graph/ui/Scene.java @@ -180,10 +180,10 @@ public final class Scene implements Container, GLEventListener { /** Returns the {@link GL#glClear(int) glClear(..)} mask, see {@link #setClearParams(float[], int)}. */ public final int getClearMask() { return clearMask; } - /** Enable or disable {@link PMVMatrix#getFrustum()} culling per {@link Shape}. Default is disabled. */ + @Override public final void setFrustumCullingEnabled(final boolean v) { doFrustumCulling = v; } - /** Return whether {@link #setFrustumCullingEnabled(boolean) frustum culling} is enabled. */ + @Override public final boolean isFrustumCullingEnabled() { return doFrustumCulling; } public void attachInputListenerTo(final GLWindow window) { @@ -246,6 +246,18 @@ public final class Scene implements Container, GLEventListener { removeShape(gl, s); } } + @Override + public void removeAllShapes() { + shapes.clear(); + } + /** Removes all given shapes and destroys them. */ + public void removeAllShapes(final GL2ES2 gl) { + final int count = shapes.size(); + for(int i=count-1; i>=0; --i) { + removeShape(gl, shapes.get(i)); + } + } + @Override public boolean contains(final Shape s) { return false; -- cgit v1.2.3