From d5d6485126da83b06645e90e3e4ce66659a56009 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Sat, 17 Aug 2019 13:56:24 -0400
Subject: [PATCH] Reset transform, fix loop versioning.

---
 Object3D.java |   44 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/Object3D.java b/Object3D.java
index c1e3334..aba2406 100644
--- a/Object3D.java
+++ b/Object3D.java
@@ -271,6 +271,50 @@
 //        
 //        return null;
 //    }
+    
+    transient boolean tag;
+
+    void TagObjects(Object3D o, boolean tag)
+    {
+        if (blockloop)
+            return;
+
+        o.tag = tag;
+        
+        if (o == this)
+            return;
+        
+        blockloop = true;
+
+        for (int i=0; i<Size(); i++)
+        {
+            get(i).TagObjects(o, tag);
+        }
+        
+        blockloop = false;
+    }
+
+    boolean HasTags()
+    {
+        if (blockloop)
+            return false;
+
+        blockloop = true;
+
+        boolean hasTags = false;
+        
+        for (int i=0; i<Size(); i++)
+        {
+            hasTags |= get(i).tag || get(i).HasTags();
+            
+            if (hasTags)
+                break;
+        }
+        
+        blockloop = false;
+        
+        return hasTags;
+    }
 
     void RestoreBigData(java.util.Hashtable<java.util.UUID, Object3D> hashtable)
     {

--
Gitblit v1.6.2