OpenSim
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
SceneObjectResizeTests.cs
Go to the documentation of this file.
1 /*
2  * Copyright (c) Contributors, http://opensimulator.org/
3  * See CONTRIBUTORS.TXT for a full list of copyright holders.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  * * Redistributions of source code must retain the above copyright
8  * notice, this list of conditions and the following disclaimer.
9  * * Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  * * Neither the name of the OpenSimulator Project nor the
13  * names of its contributors may be used to endorse or promote products
14  * derived from this software without specific prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19  * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26  */
27 
28 using System;
29 using System.Reflection;
30 using NUnit.Framework;
31 using OpenMetaverse;
32 using OpenSim.Framework;
33 using OpenSim.Region.Framework.Scenes;
34 using OpenSim.Tests.Common;
35 
36 namespace OpenSim.Region.Framework.Scenes.Tests
37 {
41  [TestFixture]
43  {
47  [Test]
48  public void TestResizeSceneObject()
49  {
50  TestHelpers.InMethod();
51 // log4net.Config.XmlConfigurator.Configure();
52 
53  Scene scene = new SceneHelpers().SetupScene();
54  SceneObjectGroup g1 = SceneHelpers.AddSceneObject(scene);
55 
56  g1.GroupResize(new Vector3(2, 3, 4));
57 
58  SceneObjectGroup g1Post = scene.GetSceneObjectGroup(g1.UUID);
59 
60  Assert.That(g1Post.RootPart.Scale.X, Is.EqualTo(2));
61  Assert.That(g1Post.RootPart.Scale.Y, Is.EqualTo(3));
62  Assert.That(g1Post.RootPart.Scale.Z, Is.EqualTo(4));
63 
64 // Assert.That(g1Post.RootPart.UndoCount, Is.EqualTo(1));
65  }
66 
70  [Test]
72  {
73  TestHelpers.InMethod();
74  //log4net.Config.XmlConfigurator.Configure();
75 
76  Scene scene = new SceneHelpers().SetupScene();
77  UUID owner = UUID.Random();
78  SceneObjectGroup g1 = SceneHelpers.CreateSceneObject(2, owner);
79  g1.RootPart.Scale = new Vector3(2, 3, 4);
80  g1.Parts[1].Scale = new Vector3(5, 6, 7);
81 
82  scene.AddSceneObject(g1);
83 
84  SceneObjectGroup g1Post = scene.GetSceneObjectGroup(g1.UUID);
85 
86  g1Post.Parts[1].Resize(new Vector3(8, 9, 10));
87 
88  SceneObjectGroup g1PostPost = scene.GetSceneObjectGroup(g1.UUID);
89 
90  SceneObjectPart g1RootPart = g1PostPost.RootPart;
91  SceneObjectPart g1ChildPart = g1PostPost.Parts[1];
92 
93  Assert.That(g1RootPart.Scale.X, Is.EqualTo(2));
94  Assert.That(g1RootPart.Scale.Y, Is.EqualTo(3));
95  Assert.That(g1RootPart.Scale.Z, Is.EqualTo(4));
96 
97  Assert.That(g1ChildPart.Scale.X, Is.EqualTo(8));
98  Assert.That(g1ChildPart.Scale.Y, Is.EqualTo(9));
99  Assert.That(g1ChildPart.Scale.Z, Is.EqualTo(10));
100  }
101  }
102 }
A scene object group is conceptually an object in the scene. The object is constituted of SceneObject...
void TestResizeSceneObjectPart()
Test resizing an individual part in a scene object.
Helpers for setting up scenes.
Definition: SceneHelpers.cs:60