Example #1
0
        public async void GenerateBitmap()
        {
            var observatorPosition = new Vector(0, 0, 2);
            var observator         = new Observator(observatorPosition,
                                                    new Frame(observatorPosition, 1, new Vector(0, 1, 0), 2, 1));
            var matrix = new Matrix(observator, new List <IObject>
            {
                new Sphere(new Surface(0.8, new Colour(0x0, 0xA0, 0x8)), 2,
                           new Vector(0, 10, 2)),
                new Sphere(new Surface(0.8, new Colour(0xA0, 0x8, 0x0)), 1,
                           new Vector(-4, 10, 2)),
                new Plain(new Surface(0.5, new Colour(0x42, 0x42, 0x42)),
                          new Vector(-10, 30, 0),
                          new Vector(10, 30, 0), new Vector(10, 0, 0),
                          new Vector(-10, 0, 0)),
                //new Cube (new Plain (new Surface (0.8, new Colour (0x0, 0x80, 0xFF)),
                //                     new Vector (3.3, 7.6, 3), new Vector (3.6, 7.6, 3),
                //                     new Vector (3.6, 7.3, 3),
                //                     new Vector (3.3, 7.3, 3))),
                //new Plain (new Surface (0.8, new Colour (0x0, 0x0, 0xF0)),
                //           new Vector (3.3, 7.6, 3), new Vector (3.3, 7.3, 3), new Vector (3.3, 7.3, 3.3),
                //           new Vector (3.3, 7.6, 3.3))
                //new CubicalLightSource (
                //    new Plain (new Surface (0, new Colour (0xFF, 0xFF, 0xFF)),
                //               new Vector (4, 4, 9), new Vector (6, 4, 9),
                //               new Vector (6, 2, 9),
                //               new Vector (4, 2, 9)), 200),
                //new SphericalLightSource (1, new Vector (5, 3, 10), new Colour (0xFF, 0xFF, 0xFF), 200),
            }.Concat(
                                        CubicalLightSource.GenerateLightSources(
                                            new Plain(new Surface(0, new Colour(0xFF, 0xFF, 0xFF)),
                                                      new Vector(4, 4, 9), new Vector(6, 4, 9),
                                                      new Vector(6, 2, 9),
                                                      new Vector(4, 2, 9)), 4, 200)).ToArray()
                                    );

            var width = 1000;

            ProgressMaximum = width * width / 2;
            await Task.Run(() =>
            {
                var bmp = matrix.GenerateBitmap(3, width, i => Progress = i);

                using (var memory = new MemoryStream())
                {
                    bmp.Save(memory, System.Drawing.Imaging.ImageFormat.Bmp);
                    memory.Position = 0;
                    var bitmapimage = new BitmapImage();
                    bitmapimage.BeginInit();
                    bitmapimage.StreamSource = memory;
                    bitmapimage.CacheOption  = BitmapCacheOption.OnLoad;
                    bitmapimage.EndInit();
                    bitmapimage.Freeze();

                    BitmapImage = bitmapimage;
                }

                bmp.Save(@"C:\Users\Meta Colon\Desktop\Rendered.bmp");
            });
        }
        public Task <int> Handle(ImportObserversRequest message)
        {
            var pathToFile = message.FilePath;
            var counter    = 0;
            var startId    = GetMaxIdObserver();

            using (var reader = File.OpenText(pathToFile))
            {
                while (reader.Peek() >= 0)
                {
                    var fileContent = reader.ReadLine();

                    var data   = fileContent.Split('\t');
                    var hashed = _hashService.GetHash(data[1]);

                    var observer = new Observator
                    {
                        IdObservator = startId + counter,
                        IdOng        = message.IdOng,
                        NumarTelefon = data[0],
                        NumeIntreg   = data[message.NameIndexInFile],
                        Pin          = hashed
                    };
                    _context.Observator.Add(observer);
                    counter++;
                }
                _context.SaveChanges();
            }

            return(Task.FromResult(counter));
        }
Example #3
0
 private void onObservationRemoved(Observator observer, DirectObservation observation)
 {
     //Debug.Log("Schussskizze - Observation removed! Name: " + observation.Entity.Name + " (total: " + playerShip.GetObservationsDirect().Count + ")");
     if (observations.Contains(observation))
     {
         //Debug.Log("Observation in list removed!");
         //Do nothing
     }
 }
Example #4
0
        public void RayCount()
        {
            var observator =
                new Observator(new Vector(1, 2, 3), new Frame(new Vector(2, 3, 4), new Vector(4, 4, 2)));
            var pixelsHorizontal = 10;
            var pixelsVertical   = 10;
            var expected         = 100;
            var actual           = observator.GetRays(pixelsHorizontal, pixelsVertical).Count;

            Assert.AreEqual(expected, actual);
        }
        public Task <int> Handle(NewObserverRequest message)
        {
            var id       = GetMaxIdObserver();
            var observer = new Observator
            {
                IdObservator = id,
                IdOng        = message.IdOng,
                NumarTelefon = message.NumarTelefon,
                NumeIntreg   = message.Nume,
                Pin          = _hashService.GetHash(message.PIN)
            };

            _context.Observator.Add(observer);
            return(_context.SaveChangesAsync());
        }
Example #6
0
        private void onObservationAdded(Observator observer, DirectObservation observation)
        {
            var cat = observation.Entity.Category;

            // ignore aircraft for now
            if (cat == "Aircraft" || cat == "Carrier-Borne Aircraft")
            {
                return;
            }

            if (observation.Entity.Country.GetRelationWith(playerShip.Country) == Country.Relation.Enemy)
            {
                observation.Changed += onObservationChanded;
                observations.Add(observation);
                determineMostDistance(observation.Entity);
                if (OnObservationAdded != null)
                {
                    OnObservationAdded(observation);
                }
            }
        }