Consider Normalizing Constraint constructors.
Posted: Wed Aug 25, 2010 5:11 am
Hi!
I had to write this code to get dynamic constraint creation / editing working in my editor -
All of these classes can validly have empty constructors overloads. I need these constructors to be consistent so I can use reflection to instantiate these classes via simple string definitions in my editor. Could you consider writing those so that I can get rid of these gnarly sub-classes?
Thanks!
I had to write this code to get dynamic constraint creation / editing working in my editor -
Code: Select all
using BEPUphysics.Constraints;
using Microsoft.Xna.Framework;
namespace ProjectY
{
public class AngularMotorY : AngularMotor
{
public AngularMotorY() : base(null, null) { }
}
public class BallSocketJointY : BallSocketJoint
{
public BallSocketJointY() : base(null, null, Vector3.Zero) { }
}
public class DistanceJointY : DistanceJoint
{
public DistanceJointY() : base(null, null, Vector3.Zero, Vector3.Zero) { }
}
public class DistanceLimitY : DistanceLimit
{
public DistanceLimitY() : base(null, null, Vector3.Zero, Vector3.Zero, 0, float.MaxValue) { }
}
public class EllipseSwingLimitY : EllipseSwingLimit
{
public EllipseSwingLimitY() : base(null, null, Vector3.Up, float.MaxValue, float.MaxValue) { }
}
public class LinearAxisLimitY : LinearAxisLimit
{
public LinearAxisLimitY() : base(null, null, Vector3.Zero, Vector3.Zero, Vector3.Up, 0, float.MaxValue) { }
}
public class LinearAxisMotorY : LinearAxisMotor
{
public LinearAxisMotorY() : base(null, null, Vector3.Zero, Vector3.Zero, Vector3.Up) { }
}
public class LineSliderJointY : LineSliderJoint
{
public LineSliderJointY() : base(null, null, Vector3.Zero, Vector3.Up, Vector3.Zero) { }
}
public class MaximumAngularSpeedConstraintY : MaximumAngularSpeedConstraint
{
public MaximumAngularSpeedConstraintY() : base(null, float.MaxValue) { }
}
public class MaximumLinearSpeedConstraintY : MaximumLinearSpeedConstraint
{
public MaximumLinearSpeedConstraintY() : base(null, float.MaxValue) { }
}
public class NoRotationJointY : NoRotationJoint
{
public NoRotationJointY() : base(null, null) { }
}
public class PointOnLineJointY : PointOnLineJoint
{
public PointOnLineJointY() : base(null, null, Vector3.Zero, Vector3.Up, Vector3.Zero) { }
}
public class PointOnPlaneJointY : PointOnPlaneJoint
{
public PointOnPlaneJointY() : base(null, null, Vector3.Zero, Vector3.Up, Vector3.Zero) { }
}
public class RevoluteAngularJointY : RevoluteAngularJoint
{
public RevoluteAngularJointY() : base(null, null, Vector3.Up) { }
}
public class RevoluteLimitY : RevoluteLimit
{
public RevoluteLimitY() : base(null, null) { }
}
public class RevoluteMotorY : RevoluteMotor
{
public RevoluteMotorY() : base(null, null, Vector3.Up) { }
}
public class SingleEntityAngularMotorY : SingleEntityAngularMotor
{
public SingleEntityAngularMotorY() : base() { }
}
public class SingleEntityLinearMotorY : SingleEntityLinearMotor
{
public SingleEntityLinearMotorY() : base() { }
}
public class SwingLimitY : SwingLimit
{
public SwingLimitY() : base(null, null, Vector3.Zero, Vector3.Zero, float.MaxValue) { }
}
public class SwivelHingeAngularJointY : SwivelHingeAngularJoint
{
public SwivelHingeAngularJointY() : base(null, null, Vector3.Up, Vector3.Up) { }
}
public class TwistJointY : TwistJoint
{
public TwistJointY() : base(null, null, Vector3.Up, Vector3.Up) { }
}
public class TwistLimitY : TwistLimit
{
public TwistLimitY() : base(null, null, Vector3.Up, Vector3.Up, 0, float.MaxValue) { }
}
public class TwistMotorY : TwistMotor
{
public TwistMotorY() : base(null, null, Vector3.Up, Vector3.Up) { }
}
}
Thanks!