sgcUI sgcGauges 现已发布

sgcGauges. 每一个读数。 一目了然。

面向仪表盘和 HMI 面板的十种仪表类型,从圆形表盘到报警指示牌。绘制绿色、琥珀色和红色区段,数值越过限值时触发报警,让指针平滑移动到每个新读数,并在服务器上把同一个仪表渲染为 PNG 或 SVG。

  • VCL
  • FireMonkey
  • WinForms
  • WPF
  • Avalonia
  • Delphi 7 至 13
  • 10种仪表类型共用一个模型,从圆形表盘到报警指示牌
  • 6种包含在免费的 .NET Community 版本中
  • 5种指针缓动曲线,默认 300 ms
  • 5个界面框架:VCL、FireMonkey、WinForms、WPF、Avalonia

仪表面板所需的一切。

速度用表盘,液位用条形,频率用数字,水泵用指示灯,报警用图块。sgcGauges 以相同的刻度、指针、区段、阈值和主题绘制所有这些仪表。

  • 十种仪表

    圆形、线性、数字、LED、LED 条、环形、VU 表、时钟、罗盘、报警指示牌。

  • 内置报警

    带迟滞的阈值每次越界只触发一个事件,并在主线程中触发。

  • 实时数据

    可从任意线程设置 Value,也可通过桥接绑定 MQTT、WebSocket 和 SSE。

  • 屏幕或文件

    VCL、FireMonkey 和 .NET 控件,在服务器上还可输出 PNG 和 SVG。

看它运行。

录制自试用版附带的 sgcGauges 演示。

速度表,0 到 260 km/h,带绿、琥珀、红三色区段
刻度与区段

绿、琥珀、红,标明数值应处的位置。

  • Scales[0].Ranges.Add 绘制一个区段,带有自己的 StartValue、EndValue、Color、Thickness 和 Caption。
  • Minimum、Maximum、MajorInterval 和 MinorCount 设置刻度,Reversed 让刻度反向运行。
  • StartAngle 和 SweepAngle 决定圆形仪表的弧形。
动画

指针平滑移动到每个新读数。

  • 每个新值都会在 Animation.Duration 内从旧值过渡,默认 300 ms。
  • Easing 可选五种曲线:geLinear、geQuadOut、geCubicOut、geCubicInOut 或 geBackOut。
  • 适用于所有仪表类型和所有版本;需要立即获得原始值的测试台可将其关闭。
HMIPanel 演示:储罐、水泵、LED 条和报警指示牌
报警与显示

每次越界触发一次报警,持续闪烁直到有人确认。

  • TsgcGaugeThreshold 包含 Value、Direction 和 Hysteresis 区间,因此在临界值附近波动的压力只会触发一次。
  • OnThreshold 始终在主线程中运行,无论由哪个线程写入数值。
  • 数字仪表可绘制 7 段、14 段或点阵数字;报警指示牌会让图块闪烁,直到调用 Acknowledge。
同一个储罐面板的浅色和深色主题
输出与外观

白班、夜班,以及用于报表的 PNG。

  • Theme := utDark 或 utLight 切换表盘、刻度、标签和数值;区段保持各自的颜色。
  • SaveToPNG 和 SaveToSVG 适用于每个模型和控件,无需窗体。
  • 控制台程序、Windows 服务或 Linux64 服务器渲染出的仪表,与操作员看到的完全相同。

几行代码即可完成压力表。

设置刻度,添加红色区段和报警阈值,选择缓动曲线,然后把同一个仪表导出为 PNG。Delphi、C++ Builder 和 C# 使用相同的 API。

dotnet add package esegece.sgcGauges.WinForms

C++ Builder 和 C# 版本

uses
  SysUtils, Classes, Controls, Forms, sgcUICore_Theme,
  sgcGauges_Types, sgcGauges_Model, sgcGauges_VCL;

procedure CreatePressureGauge(aForm: TForm);
var
  oGauge: TsgcVCLRadialGauge;
begin
  oGauge := TsgcVCLRadialGauge.Create(aForm);
  oGauge.Parent := aForm;
  oGauge.SetBounds(16, 16, 240, 240);
  oGauge.Title := 'Pressure';
  oGauge.Units := 'bar';
  oGauge.Theme := utDark;
  oGauge.Scales[0].Maximum := 10;
  oGauge.Scales[0].MajorInterval := 2;
  // a red band from 8 to 10 bar
  with oGauge.Scales[0].Ranges.Add do
  begin
    StartValue := 8;
    EndValue := 10;
    Color := $FFE34948;
  end;
  // OnThreshold fires once per crossing, in the main thread
  with oGauge.Thresholds.Add do
  begin
    Value := 8;
    Hysteresis := 0.5;
    Direction := gtdBoth;
  end;
  oGauge.Animation.Easing := geCubicOut;
  oGauge.Value := 6.5;
  // the same drawing code exports the gauge to PNG at twice its size
  oGauge.SaveToPNG(ExtractFilePath(ParamStr(0)) + 'pressure.png', 2);
end;

sgcUI 的一部分。

可单独购买 sgcGauges,也可在 sgcUI 的 Professional 和 Enterprise 版本中获得它,与共用其主题和运行时的产品一起使用。均附带源代码。

单独购买

sgcGauges

单独的仪表,包含完整源代码和 1 年更新。

€199 / 每位开发者
sgcGauges 价格

Standard

sgcGrid、sgcNavigation、sgcToolbar 和 sgcEditors。

€380 / 每位开发者
查看 Standard
包含 sgcGauges

Professional

Standard 加上 sgcCharts、sgcDashboard 和 sgcGauges。

€529 / 每位开发者
查看 Professional
包含 sgcGauges

Enterprise

全部 16 款 sgcUI 产品。

€699 / 每位开发者
查看 Enterprise

对于 .NET, esegece.sgcGauges.Community 在 NuGet 上免费,包含六种仪表类型。sgcGauges 也包含在 All-Access 套餐。

了解 sgcUI

今天就把 sgcGauges 用到您自己的应用程序中。

下载试用版并运行 Gallery、HMIPanel 和 DashboardGauges 演示,或者先浏览所有功能。

博客最新动态

查看全部文章 →

您正在查看 eSeGeCe 的 sgcGauges 视角。

换个角度看看 →
30 天退款保证不满意?可在购买后 30 天内申请全额退款。 查看退款政策