示例#1
0
        protected override void Init()
        {
            // this one should be an instersection of ranger buffer and current road buffer
            fineGraphic.Geometry = GeoUtil.GetBuffer(ranger.Graphic.Geometry, meters);
#if true
            fineGraphic.Symbol = new SimpleFillSymbol(SimpleFillSymbolStyle.Solid, Color.FromArgb(defaultAlpha, 0, 0, 0), null);
#else
            fineGraphic.Symbol = GeneralRenderers.DollarPicSymbol.Clone();
#endif
            ranger.Graphic.GraphicsOverlay.Graphics.Add(fineGraphic);
        }
示例#2
0
        protected override void Update(double elapsedSeconds)
        {
            double maxRadius = Sensor.Range * 3;
            double pcRadious = Math.Abs(Math.Sin(1.75 * Math.PI * elapsedSeconds));
            double pcOpacity = elapsedSeconds / DurationSeconds;

            //SimpleFillSymbol s = sensor.AlarmGraphic.Symbol as SimpleFillSymbol;
            //var curColor = s.Color;
            //curColor.A = (byte) ((1.0 - Math.Sqrt(pcOpacity)) * 255);
            //Console.WriteLine("new color = {0}", curColor.A);
            //s.Color = curColor;
            sensor.AlarmGraphic.Geometry = GeoUtil.GetBuffer(sensor.Graphic.Geometry, pcRadious * maxRadius);
        }
示例#3
0
        protected override void Update(double elapsedSeconds)
        {
            double perc = elapsedSeconds / DurationSeconds;

#if true
            fineGraphic.Geometry = GeoUtil.GetBuffer(ranger.Graphic.Geometry, meters);

            SimpleFillSymbol symbol = fineGraphic.Symbol as SimpleFillSymbol;
            var curColor            = symbol.Color;
            curColor.A   = (byte)((1.0 - Math.Sqrt(perc)) * defaultAlpha);
            symbol.Color = curColor;
#else
            var    sym = fineGraphic.Symbol as PictureMarkerSymbol;
            double nv  = 1.0 - Math.Sqrt(perc);
            nv          = Math.Min(1.0, nv);
            nv          = Math.Max(0.0, nv);
            sym.Opacity = nv;
#endif
        }