* Sorted members for great justice
parent
f1c2dca7c1
commit
ed314e19ff
|
@ -68,76 +68,33 @@ namespace OpenSim.Framework
|
||||||
public class PrimitiveBaseShape
|
public class PrimitiveBaseShape
|
||||||
{
|
{
|
||||||
private static readonly LLObject.TextureEntry m_defaultTexture;
|
private static readonly LLObject.TextureEntry m_defaultTexture;
|
||||||
|
public byte[] ExtraParams;
|
||||||
|
private byte[] m_textureEntry;
|
||||||
|
|
||||||
public byte State;
|
|
||||||
public byte PCode;
|
|
||||||
public ushort PathBegin;
|
public ushort PathBegin;
|
||||||
|
public byte PathCurve;
|
||||||
public ushort PathEnd;
|
public ushort PathEnd;
|
||||||
|
public sbyte PathRadiusOffset;
|
||||||
|
public byte PathRevolutions;
|
||||||
public byte PathScaleX;
|
public byte PathScaleX;
|
||||||
public byte PathScaleY;
|
public byte PathScaleY;
|
||||||
public byte PathShearX;
|
public byte PathShearX;
|
||||||
public byte PathShearY;
|
public byte PathShearY;
|
||||||
public sbyte PathSkew;
|
public sbyte PathSkew;
|
||||||
public ushort ProfileBegin;
|
|
||||||
public ushort ProfileEnd;
|
|
||||||
public LLVector3 Scale;
|
|
||||||
public byte PathCurve;
|
|
||||||
|
|
||||||
[XmlIgnore] // -- this one is re-constructed from ProfileShape and ProfileHollow
|
|
||||||
public byte ProfileCurve;
|
|
||||||
|
|
||||||
public ushort ProfileHollow;
|
|
||||||
public sbyte PathRadiusOffset;
|
|
||||||
public byte PathRevolutions;
|
|
||||||
public sbyte PathTaperX;
|
public sbyte PathTaperX;
|
||||||
public sbyte PathTaperY;
|
public sbyte PathTaperY;
|
||||||
public sbyte PathTwist;
|
public sbyte PathTwist;
|
||||||
public sbyte PathTwistBegin;
|
public sbyte PathTwistBegin;
|
||||||
|
public byte PCode;
|
||||||
|
public ushort ProfileBegin;
|
||||||
|
|
||||||
[XmlIgnore]
|
[XmlIgnore] // -- this one is re-constructed from ProfileShape and ProfileHollow
|
||||||
public LLObject.TextureEntry Textures
|
public byte ProfileCurve;
|
||||||
{
|
|
||||||
get { return new LLObject.TextureEntry(m_textureEntry, 0, m_textureEntry.Length); }
|
|
||||||
|
|
||||||
set { m_textureEntry = value.ToBytes(); }
|
|
||||||
}
|
|
||||||
|
|
||||||
private byte[] m_textureEntry;
|
|
||||||
|
|
||||||
public byte[] TextureEntry
|
|
||||||
{
|
|
||||||
get { return m_textureEntry; }
|
|
||||||
|
|
||||||
set { m_textureEntry = value; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public byte[] ExtraParams;
|
|
||||||
|
|
||||||
public ProfileShape ProfileShape
|
|
||||||
{
|
|
||||||
get { return (ProfileShape)(ProfileCurve & 0xf); }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
byte oldValueMasked = (byte)(ProfileCurve & 0xf0);
|
|
||||||
ProfileCurve = (byte)(oldValueMasked | (byte)value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public HollowShape HollowShape
|
|
||||||
{
|
|
||||||
get { return (HollowShape)(ProfileCurve & 0xf0); }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
byte oldValueMasked = (byte)(ProfileCurve & 0x0f);
|
|
||||||
ProfileCurve = (byte)(oldValueMasked | (byte)value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public LLVector3 PrimScale
|
|
||||||
{
|
|
||||||
get { return Scale; }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
public ushort ProfileEnd;
|
||||||
|
public ushort ProfileHollow;
|
||||||
|
public LLVector3 Scale;
|
||||||
|
public byte State;
|
||||||
|
|
||||||
static PrimitiveBaseShape()
|
static PrimitiveBaseShape()
|
||||||
{
|
{
|
||||||
|
@ -147,40 +104,49 @@ namespace OpenSim.Framework
|
||||||
|
|
||||||
public PrimitiveBaseShape()
|
public PrimitiveBaseShape()
|
||||||
{
|
{
|
||||||
PCode = (byte)PCodeEnum.Primitive;
|
PCode = (byte) PCodeEnum.Primitive;
|
||||||
ExtraParams = new byte[1];
|
ExtraParams = new byte[1];
|
||||||
Textures = m_defaultTexture;
|
Textures = m_defaultTexture;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PrimitiveBaseShape Create()
|
[XmlIgnore]
|
||||||
|
public LLObject.TextureEntry Textures
|
||||||
{
|
{
|
||||||
PrimitiveBaseShape shape = new PrimitiveBaseShape();
|
get { return new LLObject.TextureEntry(m_textureEntry, 0, m_textureEntry.Length); }
|
||||||
return shape;
|
|
||||||
|
set { m_textureEntry = value.ToBytes(); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PrimitiveBaseShape CreateBox()
|
public byte[] TextureEntry
|
||||||
{
|
{
|
||||||
PrimitiveBaseShape shape = Create();
|
get { return m_textureEntry; }
|
||||||
|
|
||||||
shape.PathCurve = (byte)Extrusion.Straight;
|
set { m_textureEntry = value; }
|
||||||
shape.ProfileShape = ProfileShape.Square;
|
|
||||||
shape.PathScaleX = 100;
|
|
||||||
shape.PathScaleY = 100;
|
|
||||||
|
|
||||||
return shape;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PrimitiveBaseShape CreateCylinder()
|
public ProfileShape ProfileShape
|
||||||
{
|
{
|
||||||
PrimitiveBaseShape shape = Create();
|
get { return (ProfileShape) (ProfileCurve & 0xf); }
|
||||||
|
set
|
||||||
|
{
|
||||||
|
byte oldValueMasked = (byte) (ProfileCurve & 0xf0);
|
||||||
|
ProfileCurve = (byte) (oldValueMasked | (byte) value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
shape.PathCurve = (byte)Extrusion.Curve1;
|
public HollowShape HollowShape
|
||||||
shape.ProfileShape = ProfileShape.Square;
|
{
|
||||||
|
get { return (HollowShape) (ProfileCurve & 0xf0); }
|
||||||
|
set
|
||||||
|
{
|
||||||
|
byte oldValueMasked = (byte) (ProfileCurve & 0x0f);
|
||||||
|
ProfileCurve = (byte) (oldValueMasked | (byte) value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
shape.PathScaleX = 100;
|
public LLVector3 PrimScale
|
||||||
shape.PathScaleY = 100;
|
{
|
||||||
|
get { return Scale; }
|
||||||
return shape;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PrimitiveBaseShape Default
|
public static PrimitiveBaseShape Default
|
||||||
|
@ -195,6 +161,38 @@ namespace OpenSim.Framework
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static PrimitiveBaseShape Create()
|
||||||
|
{
|
||||||
|
PrimitiveBaseShape shape = new PrimitiveBaseShape();
|
||||||
|
return shape;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static PrimitiveBaseShape CreateBox()
|
||||||
|
{
|
||||||
|
PrimitiveBaseShape shape = Create();
|
||||||
|
|
||||||
|
shape.PathCurve = (byte) Extrusion.Straight;
|
||||||
|
shape.ProfileShape = ProfileShape.Square;
|
||||||
|
shape.PathScaleX = 100;
|
||||||
|
shape.PathScaleY = 100;
|
||||||
|
|
||||||
|
return shape;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static PrimitiveBaseShape CreateCylinder()
|
||||||
|
{
|
||||||
|
PrimitiveBaseShape shape = Create();
|
||||||
|
|
||||||
|
shape.PathCurve = (byte) Extrusion.Curve1;
|
||||||
|
shape.ProfileShape = ProfileShape.Square;
|
||||||
|
|
||||||
|
shape.PathScaleX = 100;
|
||||||
|
shape.PathScaleY = 100;
|
||||||
|
|
||||||
|
return shape;
|
||||||
|
}
|
||||||
|
|
||||||
public void SetScale(float side)
|
public void SetScale(float side)
|
||||||
{
|
{
|
||||||
Scale = new LLVector3(side, side, side);
|
Scale = new LLVector3(side, side, side);
|
||||||
|
@ -207,7 +205,7 @@ namespace OpenSim.Framework
|
||||||
|
|
||||||
public void SetRadius(float radius)
|
public void SetRadius(float radius)
|
||||||
{
|
{
|
||||||
Scale.X = Scale.Y = radius * 2f;
|
Scale.X = Scale.Y = radius*2f;
|
||||||
}
|
}
|
||||||
|
|
||||||
//void returns need to change of course
|
//void returns need to change of course
|
||||||
|
@ -217,29 +215,29 @@ namespace OpenSim.Framework
|
||||||
|
|
||||||
public PrimitiveBaseShape Copy()
|
public PrimitiveBaseShape Copy()
|
||||||
{
|
{
|
||||||
return (PrimitiveBaseShape)MemberwiseClone();
|
return (PrimitiveBaseShape) MemberwiseClone();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PrimitiveBaseShape CreateCylinder(float radius, float heigth)
|
public static PrimitiveBaseShape CreateCylinder(float radius, float heigth)
|
||||||
{
|
{
|
||||||
PrimitiveBaseShape shape = CreateCylinder( );
|
PrimitiveBaseShape shape = CreateCylinder();
|
||||||
|
|
||||||
shape.SetHeigth( heigth );
|
shape.SetHeigth(heigth);
|
||||||
shape.SetRadius( radius );
|
shape.SetRadius(radius);
|
||||||
|
|
||||||
return shape;
|
return shape;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetPathRange( LLVector3 pathRange )
|
public void SetPathRange(LLVector3 pathRange)
|
||||||
{
|
{
|
||||||
PathBegin = LLObject.PackBeginCut(pathRange.X);
|
PathBegin = LLObject.PackBeginCut(pathRange.X);
|
||||||
PathEnd = LLObject.PackEndCut(pathRange.Y);
|
PathEnd = LLObject.PackEndCut(pathRange.Y);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetProfileRange( LLVector3 profileRange )
|
public void SetProfileRange(LLVector3 profileRange)
|
||||||
{
|
{
|
||||||
ProfileBegin = LLObject.PackBeginCut(profileRange.X);
|
ProfileBegin = LLObject.PackBeginCut(profileRange.X);
|
||||||
ProfileEnd = LLObject.PackEndCut(profileRange.Y);
|
ProfileEnd = LLObject.PackEndCut(profileRange.Y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue