public Jeu() { func = new PeriodicFunction(function); flose = new AudioFile(); fwin = new AudioFile(); fmusic = new AudioFile(); lose = new PeriodicFunction(losing); lose.Enable = false; addgems = new PeriodicFunction(function); MouseImg = new Image(); mousecol = new BoundingBox(); text = new TextWriter(); func.Initialize(new TimeSpan(0, 0, 10)); //Decrementé avec le temp func.Enable = true; addgems.Initialize(new TimeSpan(0, 0, 10)); //Decrementé avec le temp addgems.Enable = true; lose.Initialize(new TimeSpan(0, 0, 1)); gems = new List <Image>(); gemscol = new List <BoundingBox>(); lifes = new List <Image>(); gemsvect = new List <Microsoft.Xna.Framework.Vector2>(); for (int i = 0; i < 3; i++) { gemscol.Add(new BoundingBox()); gems.Add(new Image()); gemsvect.Add(new Microsoft.Xna.Framework.Vector2()); } for (int i = 0; i < 13; i++) { lifes.Add(new Image()); } }
protected SpriteKernel(IConvertible initialVersion) { SourceList = new Dictionary<IConvertible, SpriteSource>(); Animation = new PeriodicFunction<SpriteTransformation>(stage => new SpriteTransformation(0)); RegisteredVersion = new Collection<IConvertible>(); Version = initialVersion; }
public void TestMethod1() { PeriodicFunction func = new PeriodicFunction((x) => (x)); int period = 0; double step = 0.1; List <double> expected = new List <double>(); for (double i = -Math.PI; i < Math.PI; i += step) { expected.Add(i); } List <double> lists = PeriodicFunction.GetPeriod(period, step); //Assert.Collection(expected, lists); }
protected void SetAnimation(Orientation reference, SpriteTransformation[] transformation) { ReferenceOrientation = reference; Animation = new PeriodicFunction<SpriteTransformation>(stage => transformation[stage], transformation.Length); }
private void UpdateImagePlot() { //set range of system //XRange = new List<double>(); //XRange.AddRange(PeriodicFunction.GetRange(fourierSeries.XMin, fourierSeries.XMax, Tick)); //XRange.RemoveAt(0); XRange = new List <List <double> >(); XRange.AddRange(PeriodicFunction.GetRange(fourierSeries.Period, Tick)); //---------------------------------------------- var pm = SetPlot(); //set periods int periods = 20; int left = periods / 2 * (-1) - 1; int right = periods / 2 + 1; //for(int i = left; i < right; i++) //{ // var polyLineAnnotation = new PolylineAnnotation(); // polyLineAnnotation.Points.Add(new DataPoint(i * Math.PI, -50)); // polyLineAnnotation.Points.Add(new DataPoint(i * Math.PI, 50)); // if(i != 0) // polyLineAnnotation.Text = String.Format($"{i}Pi"); // polyLineAnnotation.TextLinePosition = 0.48; // polyLineAnnotation.TextOrientation = AnnotationTextOrientation.Horizontal; // pm.Annotations.Add(polyLineAnnotation); //} // initialize function plot YValues = new List <double>(); bool titleFlag = false; // initialize approximation plot var approximation = new LineSeries(); approximation.Title = "Fourier Series"; YAproximation = new List <double>(); fourierSeries.file.Write($"\n\nF(x) = x, -PI < x < PI \n Порядок {fourierSeries.N} \n Approximation\n"); fourierSeries.CalculateElements(); //--------------------------------- foreach (var itemPeriod in XRange.ToList()) { var function = new LineSeries(); if (!titleFlag) { function.Title = "f(x) = x"; titleFlag = true; } foreach (var item in itemPeriod) { double tempY = fourierSeries.Function(item); YValues.Add(tempY); function.Points.Add(new OxyPlot.DataPoint(Convert.ToDouble(item), Convert.ToDouble(tempY))); //approximation double tempAprox = fourierSeries.Approximate(item); YAproximation.Add(tempAprox); approximation.Points.Add(new OxyPlot.DataPoint(Convert.ToDouble(item), Convert.ToDouble(tempAprox))); } pm.Series.Add(function); } pm.Series.Add(approximation); #endregion FourierSeriesImage = pm; }