Blazor 방사형 게이지 개요

    Blazor 방사형 게이지 구성 요소는 미리 정의된 모양과 배율을 만들기 위해 바늘, 눈금 표시, 범위, 레이블과 같은 다양한 시각적 요소를 제공합니다. IgbRadialGauge 애니메이션 전환에 대한 지원도 내장되어 있습니다. 이 애니메이션은 TransitionDuration 속성을 설정하여 쉽게 사용자 정의할 수 있습니다.

    Blazor Radial Gauge Example

    다음 샘플은 동일한 IgbRadialGauge에 여러 속성을 설정하여 이를 완전히 다른 방사형 게이지로 변환하는 방법을 보여줍니다.

    IgniteUI.Blazor 패키지 추가에 대해서는 다음 항목을 참조하세요.

    이후에 다음 네임스페이스를 추가하여 컨트롤 구현을 시작할 수 있습니다.

    @using IgniteUI.Blazor.Controls
    

    Component Modules

    IgbRadialGauge 에는 다음 모듈이 필요합니다.

    // in Program.cs file
    
    builder.Services.AddIgniteUIBlazor(typeof(IgbRadialGaugeModule));
    

    Usage

    다음 코드는 바늘과 눈금의 세 가지 비교 범위를 포함하는 방사형 게이지를 만드는 방법을 보여줍니다.

    <IgbRadialGauge Height="100%" Width="100%"
          MinimumValue="0" Value="25"
          MaximumValue="100" Interval="5" >
        <IgbRadialGaugeRange
              StartValue="0"
              EndValue="30"
              Brush="red">
        </IgbRadialGaugeRange>
        <IgbRadialGaugeRange
              StartValue="30"
              EndValue="60"
              Brush="Yellow" >
        </IgbRadialGaugeRange>
        <IgbRadialGaugeRange
              StartValue="60"
              EndValue="100"
              Brush="Green">
        </IgbRadialGaugeRange>
    </IgbRadialGauge>
    

    Backing

    방사형 게이지 구성 요소는 방사형 게이지의 배경 역할을 하는 눈금 뒤에 그려진 뒷면 모양과 함께 제공됩니다.

    뒷면 요소는 방사형 게이지 구성 요소의 배경과 테두리를 나타냅니다. 이는 항상 렌더링되는 첫 번째 요소이며 바늘, 레이블, 눈금 표시와 같은 나머지 모든 요소는 그 위에 오버레이됩니다.

    뒷면은 원형이거나 장착될 수 있습니다. 원형 모양은 360도 원형 게이지를 만드는 반면, 맞춤 모양은 ScaleStartAngleScaleEndAngle 속성을 둘러싸는 채워진 호 세그먼트를 만듭니다. 이는 BackingShape 속성을 설정하여 설정할 수 있습니다.

     <IgbRadialGauge Height="100%" Width="100%"
        BackingShape="RadialGaugeBackingShape.Fitted"
        BackingBrush="#FCFCFC"
        BackingOutline="DodgerBlue"
        BackingOversweep="5"
        BackingCornerRadius="10"
        BackingStrokeThickness="5"
        BackingOuterExtent="0.8"
        BackingInnerExtent="0.15"
    
        ScaleStartAngle="135"
        ScaleEndAngle="45"
        MinimumValue="0"
        MaximumValue="80"
        Value="50"
        Interval="10">
    </IgbRadialGauge>
    

    Scale

    눈금은 MinimumValueMaximumValue 값을 제공하여 생성할 수 있는 게이지의 전체 값 범위를 강조하는 시각적 요소입니다. 백킹과 함께 게이지의 전체적인 모양을 정의합니다. ScaleStartAngleScaleEndAngle 속성은 눈금의 호 경계를 정의합니다. 반면 ScaleSweepDirection 속성은 눈금이 시계 방향 또는 시계 반대 방향으로 스윕할지 여부를 지정합니다. ScaleBrush, ScaleStartExtentScaleEndExtent 속성을 설정하여 배율의 모양을 사용자 지정할 수 있습니다.

    <IgbRadialGauge
      ScaleStartAngle="135"
      ScaleEndAngle="45"
      ScaleBrush="DodgerBlue"
      ScaleSweepDirection="SweepDirection.Clockwise"
      ScaleOversweep="1"
      ScaleOversweepShape="RadialGaugeScaleOversweepShape.Fitted"
      ScaleStartExtent="0.45"
      ScaleEndExtent="0.575"
      MinimumValue="0"
      MaximumValue="80"
      Value="50"
      Interval="10">
    </IgbRadialGauge>
    

    Labels

    방사형 게이지 레이블은 MinimumValueMaximumValue 속성 값 사이의 지정된 간격으로 숫자 값을 표시하는 시각적 요소입니다. LabelExtent 속성을 분수로 설정하여 레이블 위치를 지정할 수 있습니다. 여기서 0은 게이지 중심을 나타내고 1은 게이지 뒷면의 외부 범위를 나타냅니다. 또한 FontBrushFont와 같은 다양한 스타일 속성을 설정하여 레이블을 사용자 정의할 수 있습니다.

    <IgbRadialGauge
      Height="100%" Width="100%"
      LabelInterval="10"
      LabelInterval="10"
      Font="11px Verdana"
      FontBrush="DodgerBlue"
      MinimumValue="0"
      MaximumValue="80"
      Value="50"
      Interval="10">
    </IgbRadialGauge>
    

    Optical Scaling

    방사형 계기의 레이블과 제목은 배율을 변경할 수 있습니다. 이 기능을 사용하려면 먼저 true로 설정합니다 OpticalScalingEnabled. 그런 다음 레이블이 100% 광학 배율을 갖는 크기를 관리하는 항목을 설정할 OpticalScalingSize 수 있습니다. 레이블은 게이지의 크기가 클 때 더 큰 글꼴을 갖습니다. 예를 들어 이 속성이 500으로 설정되고 게이지 px 크기가 두 배가 될 때 레이블의 글꼴 크기가 200% 더 커집니다. 1000.

    Tick Marks

    눈금 표시는 방사형 게이지의 중심에서 방사되는 가는 선입니다. 눈금 표시에는 메이저와 마이너의 두 가지 유형이 있습니다. 주요 눈금 표시는 MinimumValueMaximumValue 속성 사이의 Interval에 표시됩니다. MinorTickCount 속성을 사용하여 각 주요 눈금 사이에 표시되는 보조 눈금 수를 지정합니다. TickStartExtent, TickEndExtent, MinorTickStartExtentMinorTickEndExtent 속성에 분수(0과 1 사이)를 설정하여 눈금 표시의 길이를 제어할 수 있습니다.

     <IgbRadialGauge Height="100%" Width="100%"
        TickStartExtent="0.5"
        TickEndExtent="0.57"
        TickStrokeThickness="2"
        TickBrush="DodgerBlue"
        MinorTickCount="4"
        MinorTickEndExtent="0.520"
        MinorTickStartExtent="0.57"
        MinorTickStrokeThickness="1"
        MinorTickBrush="DarkViolet"
        MinimumValue="0"
        MaximumValue="80"
        Value="50"
        Interval="10">
    </IgbRadialGauge>
    

    Ranges

    범위는 지정된 MinimumValueMaximumValue 속성으로 묶인 연속 값 집합을 강조 표시합니다. 시작 및 끝 값을 지정하여 방사형 게이지에 여러 범위를 추가할 수 있습니다. 각 범위에는 BrushOutline과 같은 몇 가지 사용자 정의 속성이 있습니다. 또는 RangeBrushesRangeOutlines 속성을 범위의 색상 목록으로 설정할 수 있습니다.

    <IgbRadialGauge Height="100%" Width="100%"
          MinimumValue="0" Value="50"
          MaximumValue="80" Interval="10"
          RangeBrushes="#A4BD29, #F86232"
          RangeOutlines="#A4BD29, #F86232">
        <IgbRadialGaugeRange StartValue="10"
              EndValue="25"
              InnerStartExtent="0.50"
              InnerEndExtent="0.50"
              OuterStartExtent="0.57"
              OuterEndExtent="0.57">
        </IgbRadialGaugeRange>
        <IgbRadialGaugeRange StartValue="25"
              EndValue="40"
              InnerStartExtent="0.50"
              InnerEndExtent="0.50"
              OuterStartExtent="0.57"
              OuterEndExtent="0.57">
        </IgbRadialGaugeRange>
    </IgbRadialGauge>
    

    Needle

    방사형 게이지 바늘은 게이지 설정 값을 나타내는 데 사용되는 시각적 요소입니다. 바늘은 미리 정의된 여러 모양 중 하나로 제공됩니다. 바늘은 게이지 중앙에 위치하는 피벗 모양을 가질 수 있습니다. 또한 피벗 모양은 미리 정의된 모양 중 하나를 사용합니다. 오버레이 또는 언더레이를 포함하는 피벗 모양에는 모양에 적용되는 별도의 피벗 브러시가 있을 수 있습니다.

    지원되는 바늘 모양과 캡은 NeedleShapeNeedlePivotShape 속성을 사용하여 설정됩니다.

    IsNeedleDraggingEnabled 속성을 사용하여 게이지의 대화형 모드를 활성화할 수 있으며 최종 사용자는 MinimumValueMaximumValue 속성 값 사이에서 바늘을 끌어 값을 변경할 수 있습니다.

    <IgbRadialGauge Height="100%" Width="100%"
        IsNeedleDraggingEnabled="true"
        IsNeedleDraggingConstrained="true"
        NeedleShape="RadialGaugeNeedleShape.NeedleWithBulb"
        NeedleBrush="DodgerBlue"
        NeedleOutline="DodgerBlue"
        NeedleEndExtent="0.475"
        NeedleStrokeThickness="1"
        NeedlePivotShape="RadialGaugePivotShape.CircleOverlay"
        NeedlePivotBrush="#9F9FA0"
        NeedlePivotOutline="#9F9FA0"
        NeedlePivotWidthRatio="0.2"
        NeedlePivotStrokeThickness="1"
        Value="50"
        MinimumValue="0"
        MaximumValue="80"
        Interval="10">
    </IgbRadialGauge>
    

    Summary

    편의를 위해 위의 모든 코드 조각은 아래의 하나의 코드 블록으로 결합되어 프로젝트에 쉽게 복사하고 모든 기능과 시각적 개체가 활성화된 방사형 게이지를 볼 수 있습니다.

    <IgbRadialGauge Height="100%" Width="100%"
                 MinimumValue="0"
                 MaximumValue="80"
                 Value="50"
                 Interval="10"
    
                 ScaleStartAngle="135"
                 ScaleEndAngle="45"
                 ScaleBrush="DodgerBlue"
                 ScaleSweepDirection="SweepDirection.Clockwise"
                 ScaleOversweep="1"
                 ScaleOversweepShape="RadialGaugeScaleOversweepShape.Fitted"
                 ScaleStartExtent="0.45"
                 ScaleEndExtent="0.575"
    
                 IsNeedleDraggingEnabled="true"
                 IsNeedleDraggingConstrained="true"
                 NeedleShape="RadialGaugeNeedleShape.NeedleWithBulb"
                 NeedleBrush="DodgerBlue"
                 NeedleOutline="DodgerBlue"
                 NeedleEndExtent="0.475"
                 NeedleStrokeThickness="1"
                 NeedlePivotShape="RadialGaugePivotShape.CircleOverlay"
                 NeedlePivotBrush="#9F9FA0"
                 NeedlePivotOutline="#9F9FA0"
                 NeedlePivotWidthRatio="0.2"
                 NeedlePivotStrokeThickness="1"
                 TickStartExtent="0.5"
                 TickEndExtent="0.57"
                 TickStrokeThickness="2"
                 TickBrush="DodgerBlue"
    
                 MinorTickCount="4"
                 MinorTickEndExtent="0.520"
                 MinorTickStartExtent="0.57"
                 MinorTickStrokeThickness="1"
                 MinorTickBrush="DarkViolet"
    
                 LabelExtent="0.65"
                 LabelInterval="10"
                 Font="11px Verdana"
                 FontBrush="Black"
                 BackingShape="RadialGaugeBackingShape.Fitted"
                 BackingBrush="#FCFCFC"
                 BackingOutline="DodgerBlue"
                 BackingOversweep="5"
                 BackingCornerRadius="10"
                 BackingStrokeThickness="5"
                 BackingOuterExtent="0.8"
                 BackingInnerExtent="0.15"
    
                 RangeBrushes="#A4BD29, #F86232"
                 RangeOutlines="#A4BD29, #F86232">
        <IgbRadialGaugeRange StartValue="20"
            EndValue="40"
            InnerStartExtent="0.50"
            InnerEndExtent="0.50"
            OuterStartExtent="0.57"
            OuterEndExtent="0.57">
        </IgbRadialGaugeRange>
        <IgbRadialGaugeRange StartValue="40"
            EndValue="60"
            InnerStartExtent="0.50"
            InnerEndExtent="0.50"
            OuterStartExtent="0.57"
            OuterEndExtent="0.57">
        </IgbRadialGaugeRange>
    </IgbRadialGauge>
    

    API References

    다음은 위 섹션에서 언급된 API 멤버 목록입니다.

    Additional Resources

    다음 주제에서 다른 유형의 게이지에 대한 자세한 정보를 찾을 수 있습니다.