/*outsideDiameter, numberOfTeeth
          pitchDiameter, toothThickness, addendum, workingDepth, wholeDepth, circularPitch
          baseCircularPitchAngle, toothThicknessAngle*/
        public void TestCalculateParams(params object[] args)
        {
            var outsideDiameter = (float)args[0];
            var numberOfTeeth = (int)args[1];

            var spurGearEntity = new SpurGearEntity
            {
                CalculationStrategy = new SpurGearCalculationStrategyByNumberOfTeethAndOutsideDiameter()
            };
            var spurGear = SpurGear.Create(1f, 1f, 1f, numberOfTeeth, 0f, 20f);
            spurGearEntity.Geometry = spurGear;

            spurGearEntity.OutsideDiameter = outsideDiameter;

            var pitchDiameter = (float) args[2];
            var toothThickness  = (float) args[3];
            var addendum  = (float) args[4];
            var workingDepth  = (float) args[5];
            var wholeDepth  = (float) args[6];
            var circularPitch = (float)args[7];
            Assert.AreEqual(pitchDiameter, spurGear.PitchDiameter, 0.01);
            Assert.AreEqual(toothThickness, spurGear.ToothThickness, 0.01);
            Assert.AreEqual(addendum, spurGear.Addendum, 0.01);
            Assert.AreEqual(workingDepth, spurGear.WorkingDepth, 0.01);
            Assert.AreEqual(wholeDepth, spurGear.WholeDepth, 0.01);
            Assert.AreEqual(circularPitch, spurGear.CircularPitch, 0.01);
        }
コード例 #2
0
        /*outsideDiameter, numberOfTeeth
         * pitchDiameter, toothThickness, addendum, workingDepth, wholeDepth, circularPitch
         * baseCircularPitchAngle, toothThicknessAngle*/
        public void TestCalculateParams(params object[] args)
        {
            var outsideDiameter = (float)args[0];
            var numberOfTeeth   = (int)args[1];

            var spurGearEntity = new SpurGearEntity
            {
                CalculationStrategy = new SpurGearCalculationStrategyByNumberOfTeethAndOutsideDiameter()
            };
            var spurGear = SpurGear.Create(1f, 1f, 1f, numberOfTeeth, 0f, 20f);

            spurGearEntity.Geometry = spurGear;

            spurGearEntity.OutsideDiameter = outsideDiameter;

            var pitchDiameter  = (float)args[2];
            var toothThickness = (float)args[3];
            var addendum       = (float)args[4];
            var workingDepth   = (float)args[5];
            var wholeDepth     = (float)args[6];
            var circularPitch  = (float)args[7];

            Assert.AreEqual(pitchDiameter, spurGear.PitchDiameter, 0.01);
            Assert.AreEqual(toothThickness, spurGear.ToothThickness, 0.01);
            Assert.AreEqual(addendum, spurGear.Addendum, 0.01);
            Assert.AreEqual(workingDepth, spurGear.WorkingDepth, 0.01);
            Assert.AreEqual(wholeDepth, spurGear.WholeDepth, 0.01);
            Assert.AreEqual(circularPitch, spurGear.CircularPitch, 0.01);
        }
 /// <summary>
 /// Calculate parameters of the gear.
 /// </summary>
 /// <param name="spurGearEntity"></param>
 public override void Calculate(SpurGearEntity spurGearEntity)
 {
     var spurGear = spurGearEntity.SceneElement;
     spurGear.DiametralPitch = (spurGear.NumberOfTeeth + 2) / spurGearEntity.OutsideDiameter;
     spurGear.PitchDiameter = spurGear.NumberOfTeeth / spurGear.DiametralPitch;
     spurGearEntity.SetPitchDiameter(spurGear.PitchDiameter);
     spurGear.ToothThickness = HalfPi / spurGear.DiametralPitch;
     spurGear.Addendum = 1 / spurGear.DiametralPitch;
     spurGear.WorkingDepth = spurGear.Addendum * 2;
     spurGear.WholeDepth = (float)(spurGear.NumberOfTeeth >= 20
         ? 2.2 / spurGear.DiametralPitch + 0.002f
         : 2.157 / spurGear.DiametralPitch);
     spurGear.Dedendum = spurGear.WholeDepth - spurGear.Addendum;
     spurGear.CircularPitch = (float)((Math.PI * spurGear.PitchDiameter) / spurGear.NumberOfTeeth);                
 }
        /// <summary>
        /// Calculate parameters of the gear.
        /// </summary>
        /// <param name="spurGearEntity"></param>
        public override void Calculate(SpurGearEntity spurGearEntity)
        {
            var spurGear = spurGearEntity.SceneElement;

            spurGear.DiametralPitch = (spurGear.NumberOfTeeth + 2) / spurGearEntity.OutsideDiameter;
            spurGear.PitchDiameter  = spurGear.NumberOfTeeth / spurGear.DiametralPitch;
            spurGearEntity.SetPitchDiameter(spurGear.PitchDiameter);
            spurGear.ToothThickness = HalfPi / spurGear.DiametralPitch;
            spurGear.Addendum       = 1 / spurGear.DiametralPitch;
            spurGear.WorkingDepth   = spurGear.Addendum * 2;
            spurGear.WholeDepth     = (float)(spurGear.NumberOfTeeth >= 20
                ? 2.2 / spurGear.DiametralPitch + 0.002f
                : 2.157 / spurGear.DiametralPitch);
            spurGear.Dedendum      = spurGear.WholeDepth - spurGear.Addendum;
            spurGear.CircularPitch = (float)((Math.PI * spurGear.PitchDiameter) / spurGear.NumberOfTeeth);
        }
コード例 #5
0
 /// <summary>
 /// Calculate parameters of the gear.
 /// </summary>
 /// <param name="spurGearEntity"></param>
 public abstract void Calculate(SpurGearEntity spurGearEntity);
コード例 #6
0
 /// <summary>
 /// Calculate parameters of the gear.
 /// </summary>
 /// <param name="spurGearEntity"></param>
 public abstract void Calculate(SpurGearEntity spurGearEntity);
 /// <summary>
 /// Calculate parameters of the gear.
 /// </summary>
 /// <param name="spurGearEntity"></param>
 public override void Calculate(SpurGearEntity spurGearEntity)
 {
     throw new NotImplementedException();
 }
 /// <summary>
 /// Calculate parameters of the gear.
 /// </summary>
 /// <param name="spurGearEntity"></param>
 public override void Calculate(SpurGearEntity spurGearEntity)
 {
     throw new NotImplementedException();
 }