From Gary Chernega (IBM)

This patch adds x, y, and z offsets to the load-xml command.
If you had a prim at 100,100,20 thats where it would get loaded everytime. 
This patch lets you place it at an offset from 100,100,20.. as such:

        load-xml <filespec> -newUI 3 1 2

Loading the prim at 103, 101, 22
This commit is contained in:
Sean Dague
2007-12-05 18:45:05 +00:00
parent 71fd737a66
commit 9c81b8a430
4 changed files with 22 additions and 10 deletions

View File

@@ -42,6 +42,7 @@ using OpenSim.Region.Environment;
using OpenSim.Region.Environment.Interfaces;
using OpenSim.Region.Environment.Scenes;
using OpenSim.Region.Physics.Manager;
using libsecondlife;
using Mono.Addins;
using Mono.Addins.Description;
@@ -664,6 +665,7 @@ namespace OpenSim
break;
case "load-xml":
LLVector3 loadOffset = new LLVector3(0, 0, 0);
if (cmdparams.Length > 0)
{
bool generateNewIDS = false;
@@ -672,13 +674,20 @@ namespace OpenSim
if (cmdparams[1] == "-newUID")
{
generateNewIDS = true;
}
}
if (cmdparams.Length > 2)
{
loadOffset.X = (float)Convert.ToDecimal(cmdparams[2]);
if (cmdparams.Length > 3) { loadOffset.Y = (float)Convert.ToDecimal(cmdparams[3]); }
if (cmdparams.Length > 4) { loadOffset.Z = (float)Convert.ToDecimal(cmdparams[4]); }
m_log.Error("loadOffsets <X,Y,Z> = <" + loadOffset.X + "," + loadOffset.Y + "," + loadOffset.Z + ">");
}
}
m_sceneManager.LoadCurrentSceneFromXml(cmdparams[0], generateNewIDS);
m_sceneManager.LoadCurrentSceneFromXml(cmdparams[0], generateNewIDS, loadOffset);
}
else
{
m_sceneManager.LoadCurrentSceneFromXml(DEFAULT_PRIM_BACKUP_FILENAME, false);
m_sceneManager.LoadCurrentSceneFromXml(DEFAULT_PRIM_BACKUP_FILENAME, false, loadOffset);
}
break;