public void ToggleBone(int[] index, PhaseFunction phase)
 {
     for (int i = 0; i < index.Length; i++)
     {
         Bones[index[i]] = !Bones[index[i]];
     }
 }
 public LocalPhaseFunction(string name, int[] index, PhaseModule module)
 {
     Module     = module;
     Name       = name;
     Index      = index;
     Visiable   = true;
     LocalPhase = new PhaseFunction(module);
 }
 public override Module Initialise(MotionData data)
 {
     Data    = data;
     Inspect = true;
     RegularPhaseFunction = new PhaseFunction(this);
     InversePhaseFunction = new PhaseFunction(this);
     Variables            = new bool[Data.Source.Bones.Length];
     return(this);
 }
        public PhaseEvolution(PhaseFunction function)
        {
            Function = function;

            LowerBounds = new float[5];
            UpperBounds = new float[5];

            SetAmplitude(Amplitude);
            SetFrequency(Frequency);
            SetShift(Shift);
            SetOffset(Offset);
            SetSlope(Slope);

            Initialise();
        }
 public Task <byte> PhaseQueryAsync(PhaseFunction phaseFunction, BlockParameter blockParameter = null)
 {
     return(ContractHandler.QueryAsync <PhaseFunction, byte>(phaseFunction, blockParameter));
 }