From 12beaccec79319186ae2a7bf3663510584117a63 Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Wed, 3 Sep 2008 18:04:37 +0000 Subject: Merge branch 'cms' of http://pokgsa.ibm.com/~jbongio/public/opensim --- .../ContentManagementSystem/PointMetaEntity.cs | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 OpenSim/Region/Environment/Modules/ContentManagementSystem/PointMetaEntity.cs (limited to 'OpenSim/Region/Environment/Modules/ContentManagementSystem/PointMetaEntity.cs') diff --git a/OpenSim/Region/Environment/Modules/ContentManagementSystem/PointMetaEntity.cs b/OpenSim/Region/Environment/Modules/ContentManagementSystem/PointMetaEntity.cs new file mode 100644 index 0000000..55365ac --- /dev/null +++ b/OpenSim/Region/Environment/Modules/ContentManagementSystem/PointMetaEntity.cs @@ -0,0 +1,81 @@ +// PointMetaEntity.cs created with MonoDevelop +// User: bongiojp at 3:03 PMĀ 8/6/2008 +// +// To change standard headers go to Edit->Preferences->Coding->Standard Headers +// + +using System; +using System.Collections.Generic; +using System.Drawing; +using libsecondlife; +using Nini.Config; +using OpenSim.Framework; +using OpenSim.Region.Environment.Interfaces; +using OpenSim.Region.Environment.Scenes; +using log4net; +using OpenSim.Region.Physics.Manager; +using Axiom.Math; + +namespace OpenSim.Region.Environment.Modules.ContentManagement +{ + + + public class PointMetaEntity : MetaEntity + { + + public PointMetaEntity(Scene scene, uint LocalId, LLVector3 groupPos, float transparency) : base() + { + CreatePointEntity(scene, LLUUID.Random(), LocalId, groupPos); + SetPartTransparency(m_Entity.RootPart, transparency); + } + + public PointMetaEntity(Scene scene, LLUUID uuid, uint LocalId, LLVector3 groupPos, float transparency) : base() + { + CreatePointEntity(scene, uuid, LocalId, groupPos); + SetPartTransparency(m_Entity.RootPart, transparency); + } + + private void CreatePointEntity(Scene scene, LLUUID uuid, uint LocalId, LLVector3 groupPos) + { + SceneObjectGroup x = new SceneObjectGroup(); + SceneObjectPart y = new SceneObjectPart(); + + //Initialize part + y.Name = "Very Small Point"; + y.RegionHandle = scene.RegionInfo.RegionHandle; + y.CreationDate = (Int32) (DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; + y.OwnerID = LLUUID.Zero; + y.CreatorID = LLUUID.Zero; + y.LastOwnerID = LLUUID.Zero; + y.UUID = uuid; + + y.LocalId = LocalId; + + y.Shape = PrimitiveBaseShape.CreateBox(); + y.Scale = new LLVector3(0.01f,0.01f,0.01f); + y.LastOwnerID = LLUUID.Zero; + y.GroupPosition = groupPos; + y.OffsetPosition = new LLVector3(0, 0, 0); + y.RotationOffset = new LLQuaternion(0,0,0,0); + y.Velocity = new LLVector3(0, 0, 0); + y.RotationalVelocity = new LLVector3(0, 0, 0); + y.AngularVelocity = new LLVector3(0, 0, 0); + y.Acceleration = new LLVector3(0, 0, 0); + + y.Flags = 0; + y.TrimPermissions(); + + //Initialize group and add part as root part + x.SetScene(scene); + y.SetParent(x); + y.ParentID = 0; + y.LinkNum = 0; + x.Children.Add(y.UUID, y); + x.RootPart = y; + x.RegionHandle = scene.RegionInfo.RegionHandle; + x.SetScene(scene); + + m_Entity = x; + } + } +} -- cgit v1.1