Ejemplo n.º 1
0
        public MultipleScales()
        {
            gauge                        = new SFCircularGauge();
            scale1                       = new SFCircularScale();
            scale1.StartValue            = 0;
            scale1.EndValue              = 240;
            scale1.Interval              = 20;
            scale1.MinorTicksPerInterval = 1;
            scale1.ScaleStartOffset      = 0.7f;
            scale1.ScaleEndOffSet        = 0.69f;
            scale1.LabelOffset           = 0.88f;
            scale1.LabelColor            = UIColor.FromRGB(198, 46, 10);
            scale1.RimColor              = UIColor.FromRGB(198, 46, 10);

            SFTickSettings major = new SFTickSettings();

            major.StartOffset = 0.7f;
            major.EndOffset   = 0.77f;
            major.Width       = 2;
            major.Color       = UIColor.FromRGB(198, 46, 10);

            SFTickSettings minor = new SFTickSettings();

            minor.StartOffset        = 0.7f;
            minor.EndOffset          = 0.77f;
            minor.Width              = 2;
            minor.Color              = UIColor.FromRGB(198, 46, 10);
            scale1.MajorTickSettings = major;
            scale1.MinorTickSettings = minor;

            SFMarkerPointer pointer1 = new SFMarkerPointer();

            pointer1.Value           = 120;
            pointer1.Color           = UIColor.FromRGB(198, 46, 10);
            pointer1.Offset          = 0.69f;
            pointer1.MarkerShape     = MarkerShape.InvertedTriangle;
            pointer1.EnableAnimation = false;
            scale1.Pointers.Add(pointer1);
            gauge.Scales.Add(scale1);

            scale2                       = new SFCircularScale();
            scale2.StartValue            = 0;
            scale2.EndValue              = 160;
            scale2.Interval              = 40;
            scale2.MinorTicksPerInterval = 1;
            scale2.RimColor              = UIColor.FromRGB(51, 51, 51);
            scale2.LabelOffset           = 0.45f;
            scale2.LabelColor            = UIColor.FromRGB(51, 51, 51);
            scale2.ScaleStartOffset      = 0.65f;
            scale2.ScaleEndOffSet        = 0.64f;

            SFTickSettings major1 = new SFTickSettings();

            major1.StartOffset       = 0.64f;
            major1.EndOffset         = 0.57f;
            major1.Width             = 2;
            major1.Color             = UIColor.FromRGB(51, 51, 51);
            scale2.MajorTickSettings = major1;

            SFTickSettings minor1 = new SFTickSettings();

            minor1.StartOffset       = 0.64f;
            minor1.EndOffset         = 0.59f;
            minor1.Width             = 2;
            minor1.Color             = UIColor.FromRGB(51, 51, 51);
            scale2.MinorTickSettings = minor1;

            SFMarkerPointer pointer2 = new SFMarkerPointer();

            pointer2.Value           = 80;
            pointer2.Color           = UIColor.FromRGB(51, 51, 51);
            pointer2.Offset          = 0.65f;
            pointer2.MarkerShape     = MarkerShape.Triangle;
            pointer2.EnableAnimation = false;
            scale2.Pointers.Add(pointer2);

            gauge.Scales.Add(scale2);

            this.AddSubview(gauge);

            CreateOptionView();
            this.OptionView = option;
        }
Ejemplo n.º 2
0
        public Pointers()
        {
            scroll = new UIScrollView();
            gauge1 = new SFCircularGauge();
            SFGaugeHeader header1 = new SFGaugeHeader();

            header1.Position  = new CGPoint(0.5, 0.6);
            header1.TextStyle = UIFont.SystemFontOfSize(14);
            header1.Text      = (Foundation.NSString) "Inverted Triangle";
            header1.TextColor = UIColor.Black;
            gauge1.Headers.Add(header1);

            SFCircularScale scale1 = new SFCircularScale();

            scale1.StartAngle            = 90;
            scale1.SweepAngle            = 270;
            scale1.ScaleStartOffset      = 0.7f;
            scale1.ScaleEndOffSet        = 0.68f;
            scale1.StartValue            = 0;
            scale1.EndValue              = 100;
            scale1.RimColor              = UIColor.Gray;
            scale1.Interval              = 50;
            scale1.ShowLabels            = false;
            scale1.ShowTicks             = false;
            scale1.MinorTicksPerInterval = 0;

            SFMarkerPointer pointer1 = new SFMarkerPointer();

            pointer1.Value       = 80;
            pointer1.Offset      = 0.7f;
            pointer1.MarkerShape = MarkerShape.InvertedTriangle;
            pointer1.Color       = UIColor.FromRGB(0, 180, 174);
            scale1.Pointers.Add(pointer1);

            gauge1.Scales.Add(scale1);


            gauge2 = new SFCircularGauge();
            SFGaugeHeader header2 = new SFGaugeHeader();

            header2.Position  = new CGPoint(0.5, 0.6);
            header2.TextStyle = UIFont.SystemFontOfSize(14);
            header2.Text      = (Foundation.NSString) "Triangle";
            header2.TextColor = UIColor.Black;
            gauge2.Headers.Add(header2);

            SFCircularScale scale2 = new SFCircularScale();

            scale2.StartAngle            = 90;
            scale2.SweepAngle            = 270;
            scale2.ScaleStartOffset      = 0.7f;
            scale2.ScaleEndOffSet        = 0.68f;
            scale2.StartValue            = 0;
            scale2.EndValue              = 100;
            scale2.RimColor              = UIColor.Gray;
            scale2.Interval              = 50;
            scale2.ShowLabels            = false;
            scale2.ShowTicks             = false;
            scale2.MinorTicksPerInterval = 0;

            SFMarkerPointer pointer2 = new SFMarkerPointer();

            pointer2.Value       = 80;
            pointer2.Offset      = 0.68f;
            pointer2.MarkerShape = MarkerShape.Triangle;
            pointer2.Color       = UIColor.Green;
            scale2.Pointers.Add(pointer2);

            gauge2.Scales.Add(scale2);

            gauge3 = new SFCircularGauge();
            SFGaugeHeader header3 = new SFGaugeHeader();

            header3.Position  = new CGPoint(0.5, 0.6);
            header3.TextStyle = UIFont.SystemFontOfSize(14);
            header3.Text      = (Foundation.NSString) "Range Pointer";
            header3.TextColor = UIColor.Black;
            gauge3.Headers.Add(header3);

            SFCircularScale scale3 = new SFCircularScale();

            scale3.StartAngle            = 90;
            scale3.SweepAngle            = 270;
            scale3.ScaleStartOffset      = 0.7f;
            scale3.ScaleEndOffSet        = 0.68f;
            scale3.StartValue            = 0;
            scale3.EndValue              = 100;
            scale3.RimColor              = UIColor.Gray;
            scale3.Interval              = 50;
            scale3.ShowLabels            = false;
            scale3.ShowTicks             = false;
            scale3.MinorTicksPerInterval = 0;

            SFRangePointer pointer3 = new SFRangePointer();

            pointer3.Value  = 60;
            pointer3.Offset = 0.6f;
            pointer3.Width  = 15;
            pointer3.Color  = UIColor.FromRGB(255, 38, 128);
            scale3.Pointers.Add(pointer3);
            gauge3.Scales.Add(scale3);


            gauge4 = new SFCircularGauge();
            SFGaugeHeader header4 = new SFGaugeHeader();

            header4.Position  = new CGPoint(0.5, 0.7);
            header4.TextStyle = UIFont.SystemFontOfSize(14);
            header4.Text      = (Foundation.NSString) "Multiple Needle";
            header4.TextColor = UIColor.Black;
            gauge4.Headers.Add(header4);

            SFCircularScale scale4 = new SFCircularScale();

            scale4.StartAngle            = 90;
            scale4.SweepAngle            = 270;
            scale4.ScaleStartOffset      = 0.7f;
            scale4.ScaleEndOffSet        = 0.68f;
            scale4.StartValue            = 0;
            scale4.EndValue              = 100;
            scale4.RimColor              = UIColor.Gray;
            scale4.Interval              = 50;
            scale4.ShowLabels            = false;
            scale4.ShowTicks             = false;
            scale4.MinorTicksPerInterval = 0;


            SFNeedlePointer pointer4 = new SFNeedlePointer();

            pointer4.Value        = 80;
            pointer4.Color        = UIColor.Purple;
            pointer4.LengthFactor = 0.7f;
            pointer4.KnobRadius   = 0;
            pointer4.Width        = 10;
            pointer4.PointerType  = SFCiruclarGaugePointerType.SFCiruclarGaugePointerTypeTriangle;
            scale4.Pointers.Add(pointer4);

            gauge4.Scales.Add(scale4);

            gauge5 = new SFCircularGauge();
            SFGaugeHeader header5 = new SFGaugeHeader();

            header5.Position  = new CGPoint(0.5, 0.6);
            header5.TextStyle = UIFont.SystemFontOfSize(14);
            header5.Text      = (Foundation.NSString) "Needle Pointer";
            header5.TextColor = UIColor.Black;
            gauge5.Headers.Add(header5);

            SFCircularScale scale5 = new SFCircularScale();

            scale5.StartAngle            = 90;
            scale5.SweepAngle            = 270;
            scale5.ScaleStartOffset      = 0.7f;
            scale5.ScaleEndOffSet        = 0.68f;
            scale5.StartValue            = 0;
            scale5.EndValue              = 100;
            scale5.RimColor              = UIColor.Gray;
            scale5.Interval              = 50;
            scale5.ShowLabels            = false;
            scale5.ShowTicks             = false;
            scale5.MinorTicksPerInterval = 0;


            SFNeedlePointer pointer5 = new SFNeedlePointer();

            pointer5.Value            = 40;
            pointer5.Color            = UIColor.Purple;
            pointer5.LengthFactor     = 0.5f;
            pointer5.KnobRadiusFactor = 0.05f;
            pointer5.Width            = 10;
            pointer5.KnobColor        = UIColor.White;
            pointer5.KnobStrokeColor  = UIColor.FromRGB(237, 125, 49);
            pointer5.KnobStrokeWidth  = 2f;
            pointer5.TailLengthFactor = 0.2f;
            pointer5.TailColor        = UIColor.FromRGB(237, 125, 49);
            pointer5.TailStrokeColor  = UIColor.FromRGB(237, 125, 49);
            pointer5.PointerType      = SFCiruclarGaugePointerType.SFCiruclarGaugePointerTypeTriangle;
            scale5.Pointers.Add(pointer5);

            SFNeedlePointer pointer6 = new SFNeedlePointer();

            pointer6.Value            = 70;
            pointer6.Color            = UIColor.Purple;
            pointer6.LengthFactor     = 0.6f;
            pointer6.KnobRadiusFactor = 0.05f;
            pointer6.Width            = 10;
            pointer6.KnobColor        = UIColor.White;
            pointer6.KnobStrokeColor  = UIColor.FromRGB(237, 125, 49);
            pointer6.KnobStrokeWidth  = 2f;
            pointer6.TailLengthFactor = 0.25f;
            pointer6.TailColor        = UIColor.FromRGB(237, 125, 49);
            pointer6.TailStrokeColor  = UIColor.FromRGB(237, 125, 49);
            pointer6.PointerType      = SFCiruclarGaugePointerType.SFCiruclarGaugePointerTypeTriangle;
            scale5.Pointers.Add(pointer6);

            gauge5.Scales.Add(scale5);

            scroll.AddSubview(gauge1);
            scroll.AddSubview(gauge2);
            scroll.AddSubview(gauge3);
            scroll.AddSubview(gauge4);
            scroll.AddSubview(gauge5);

            this.AddSubview(scroll);
        }
Ejemplo n.º 3
0
        public GradientRange()
        {
            gauge = new SFCircularGauge();
            gauge.BackgroundColor = UIColor.White;

            ObservableCollection <SFCircularScale> scales = new ObservableCollection <SFCircularScale>();

            SFCircularScale scale = new SFCircularScale();

            scale.StartValue = 0;
            scale.EndValue   = 100;
            scale.Interval   = 10;
            scale.ShowRim    = false;
            scale.ShowTicks  = false;
            scale.ShowLabels = false;

            SFCircularRange range = new SFCircularRange();

            range.Offset     = 0.8f;
            range.StartValue = 0;
            range.EndValue   = 100;
            range.Width      = 25;

            GaugeGradientStop color1 = new GaugeGradientStop();

            color1.Value = 0;
            color1.Color = UIColor.FromRGB(240, 62, 62);
            range.GradientStops.Add(color1);

            GaugeGradientStop color2 = new GaugeGradientStop();

            color2.Value = 35;
            color2.Color = UIColor.FromRGB(255, 221, 0);
            range.GradientStops.Add(color2);

            GaugeGradientStop color3 = new GaugeGradientStop();

            color3.Value = 75;
            color3.Color = UIColor.FromRGB(255, 221, 0);
            range.GradientStops.Add(color3);

            GaugeGradientStop color4 = new GaugeGradientStop();

            color4.Value = 100;
            color4.Color = UIColor.FromRGB(48, 179, 45);
            range.GradientStops.Add(color4);
            scale.Ranges.Add(range);

            ObservableCollection <SFMarkerPointer> pointers = new ObservableCollection <SFMarkerPointer>();
            SFMarkerPointer pointer = new SFMarkerPointer();

            pointer.MarkerShape  = MarkerShape.InvertedTriangle;
            pointer.Offset       = 0.8f;
            pointer.Value        = 55;
            pointer.MarkerWidth  = 15;
            pointer.MarkerHeight = 15;
            pointer.Color        = UIColor.Red;
            pointers.Add(pointer);
            scale.Pointers.Add(pointer);

            SFGaugeHeader header1 = new SFGaugeHeader();

            header1.Text      = (Foundation.NSString) "0";
            header1.TextColor = UIColor.FromRGB(240, 62, 62);
            header1.Position  = new CGPoint(0.28, 0.86);
            header1.TextStyle = UIFont.BoldSystemFontOfSize(12);
            gauge.Headers.Add(header1);

            SFGaugeHeader header2 = new SFGaugeHeader();

            header2.Text      = (Foundation.NSString) "100";
            header2.TextColor = UIColor.FromRGB(48, 179, 45);
            header2.Position  = new CGPoint(0.75, 0.86);
            header2.TextStyle = UIFont.BoldSystemFontOfSize(12);
            gauge.Headers.Add(header2);

            SFGaugeHeader header3 = new SFGaugeHeader();

            header3.Text      = (Foundation.NSString) "55%";
            header3.TextColor = UIColor.FromRGB(240, 62, 62);
            header3.Position  = new CGPoint(0.5, 0.5);
            header1.TextStyle = UIFont.BoldSystemFontOfSize(16);
            gauge.Headers.Add(header3);

            scales.Add(scale);


            gauge.Scales = scales;
            this.AddSubview(gauge);
        }
Ejemplo n.º 4
0
        public PointerDragging()
        {
            gauge = new SFCircularGauge();

            header           = new SFGaugeHeader();
            header.Position  = new CGPoint(0.5, 0.5);
            header.TextStyle = UIFont.FromName("Helvetica", 25f);
            header.TextColor = UIColor.FromRGB(255, 69, 0);
            header.Text      = (NSString)("08" + " h" + " 00" + " min");
            gauge.Headers.Add(header);

            SFCircularScale scale = new SFCircularScale();

            scale.StartValue            = 0;
            scale.EndValue              = 12;
            scale.StartAngle            = 180;
            scale.SweepAngle            = 540;
            scale.Interval              = 1;
            scale.LabelOffset           = 0.67f;
            scale.ShowFirstLabel        = false;
            scale.ScaleStartOffset      = 0.9f;
            scale.ScaleEndOffSet        = 0.8f;
            scale.MinorTicksPerInterval = 4;

            SFTickSettings majorTickSetting = new SFTickSettings();

            majorTickSetting.StartOffset = 0.8f;
            majorTickSetting.EndOffset   = 0.72f;
            majorTickSetting.Width       = 2;
            majorTickSetting.Color       = UIColor.DarkGray;

            SFTickSettings minorTickSetting = new SFTickSettings();

            minorTickSetting.StartOffset = 0.8f;
            minorTickSetting.EndOffset   = 0.75f;

            scale.MajorTickSettings = majorTickSetting;
            scale.MinorTickSettings = minorTickSetting;

            markerPointer1 = new SFMarkerPointer();
            markerPointer1.EnableAnimation = false;
            markerPointer1.EnableDragging  = true;
            markerPointer1.Offset          = 0.9f;
            markerPointer1.Value           = firstMarkerValue;
            markerPointer1.MarkerShape     = MarkerShape.Circle;
            markerPointer1.Color           = UIColor.FromRGB(247, 206, 114);
            markerPointer1.ValueChanging  += MarkerPointer1_ValueChanging;

            markerPointer2 = new SFMarkerPointer();
            markerPointer2.EnableAnimation = false;
            markerPointer2.EnableDragging  = true;
            markerPointer2.Offset          = 0.9f;
            markerPointer2.Value           = secondMarkerValue;
            markerPointer2.MarkerShape     = MarkerShape.Circle;
            markerPointer2.Color           = UIColor.FromRGB(247, 206, 114);
            markerPointer2.ValueChanging  += MarkerPointer2_ValueChanging;;

            scale.Pointers.Add(markerPointer1);
            scale.Pointers.Add(markerPointer2);

            range                  = new SFCircularRange();
            range.StartValue       = markerPointer1.Value;
            range.EndValue         = markerPointer2.Value;
            range.InnerEndOffset   = 0.8f;
            range.InnerStartOffset = 0.8f;
            range.OuterEndOffset   = 0.9f;
            range.OuterStartOffset = 0.9f;
            range.Color            = UIColor.FromRGB(229, 121, 130);

            gauge.PointerPositionChange += Gauge_PointerPositionChange;

            scale.Ranges.Add(range);
            gauge.Scales.Add(scale);
            this.AddSubview(gauge);
        }