From e8acf1cca92592fea38208dbfe4137555431434d Mon Sep 17 00:00:00 2001
From: Adam Frisby
Date: Mon, 9 Jul 2007 15:29:39 +0000
Subject: * Begun work on Primitive Duplication. Not hooked up yet, but
theoretically could be done so. In practice, more work needs to be done.
---
OpenSim/Region/Environment/Scenes/SceneObject.cs | 28 ++++++++++++++++++++++++
1 file changed, 28 insertions(+)
(limited to 'OpenSim/Region/Environment/Scenes/SceneObject.cs')
diff --git a/OpenSim/Region/Environment/Scenes/SceneObject.cs b/OpenSim/Region/Environment/Scenes/SceneObject.cs
index 452502b..2b80d57 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObject.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObject.cs
@@ -78,6 +78,15 @@ namespace OpenSim.Region.Environment.Scenes
///
///
///
+ /// Need a null constructor for duplication
+ public SceneObject()
+ {
+
+ }
+
+ ///
+ ///
+ ///
///
///
///
@@ -100,6 +109,25 @@ namespace OpenSim.Region.Environment.Scenes
///
///
///
+ /// A complete copy of the object
+ public SceneObject Copy()
+ {
+ SceneObject dupe = new SceneObject();
+
+ Primitive newRoot = this.rootPrimitive.Copy((EntityBase)dupe, dupe);
+
+ foreach (EntityBase child in this.children)
+ {
+ EntityBase newChild = child.Copy();
+ dupe.children.Add(newChild);
+ }
+
+ return dupe;
+ }
+
+ ///
+ ///
+ ///
public void DeleteAllChildren()
{
this.children.Clear();
--
cgit v1.1