Siticone Orbit Gauge
The SiticoneOrbitGauge is a futuristic, multi-layered radial display.
It presents a primary data value alongside two secondary rings and various status indicators, making it ideal for complex system monitoring (e.g., CPU/RAM/Network) or sci-fi game HUDs.
Data Values
Control the primary and secondary data points displayed by the gauge.
| Property | Type | Description & Usage Example |
|---|---|---|
PrimaryDataValue |
float | orbit.PrimaryDataValue = 85.5f; The main value displayed by the largest ring/indicator. |
SecondaryRingValue |
float | orbit.SecondaryRingValue = 40f; The value for the middle ring. |
TertiaryRingValue |
float | orbit.TertiaryRingValue = 20f; The value for the outermost ring. |
MinimumValue |
float | orbit.MinimumValue = 0; Start of the scale. |
MaximumValue |
float | orbit.MaximumValue = 100; End of the scale. |
HUD Appearance
Configure the Head-Up Display styling and colors.
| Property | Type | Description & Usage Example |
|---|---|---|
HudTheme |
OrbitHUDTheme |
orbit.HudTheme = OrbitHUDTheme.Cyan;
Presets: Amber, Cyan, Green, Red, Blue.
|
HudBackgroundColor |
Color | orbit.HudBackgroundColor = Color.FromArgb(10, 10, 20); Background color of the gauge circle. |
PrimaryRingColor |
Color | orbit.PrimaryRingColor = Color.Orange; Color of the main data ring. |
ShowGridLines |
bool | orbit.ShowGridLines = true; Displays a background grid/radar effect. |
Status & Indicators
Manage status icons and text readouts.
| Property | Type | Description & Usage Example |
|---|---|---|
ShowStatusIndicators |
bool | orbit.ShowStatusIndicators = true; Shows small icons (e.g., warning, fuel) in the gauge. |
ShowStatusText |
bool | orbit.ShowStatusText = true; Displays text labels like "HIGH", "LOW". |
StatusTextHigh |
string | orbit.StatusTextHigh = "CRITICAL"; Text for the high status position. |
Public Methods
// Sets the primary value, optionally animating.
orbit.SetDataValue(75.5f, true);
// Adds to the current value.
orbit.AddDataValue(5.0f, true);
// Adds a status icon to the display.
orbit.AddStatusIcon(OrbitIconType.Warning, true);
Events
// 1. DataValueChanged Event
orbit.DataValueChanged += (s, e) =>
{
Console.WriteLine($"Data: {e.NewValue}");
};
// 2. AnimationCompleted Event
orbit.AnimationCompleted += (s, e) =>
{
// Animation logic
};
Designer & Smart Tags
Visual Studio integration.
| Feature | Description |
|---|---|
Themes |
Amber HUD: Classic monochrome monitor style. Cyber Cyan: Modern sci-fi look. Matrix Green: Digital rain aesthetic. |
Actions |
Reset: Returns all values to defaults. |
Detailed Usage Examples
Example 1: System Monitor HUD
Configures the gauge to show CPU, RAM, and Network usage on three rings.
private void SetupSystemMonitor()
{
orbit.HudTheme = OrbitHUDTheme.Cyan;
orbit.PrimaryUnitLabel = "CPU %";
// Configure Rings
orbit.ShowMultipleRings = true;
orbit.PrimaryDataValue = 0; // CPU
orbit.SecondaryRingValue = 0; // RAM
orbit.TertiaryRingValue = 0; // NET
// Status text
orbit.StatusTextHigh = "OVERLOAD";
orbit.StatusTextMedium = "BUSY";
orbit.StatusTextLow = "IDLE";
}
public void UpdateStats(float cpu, float ram, float net)
{
orbit.SetDataValue(cpu, true);
orbit.SecondaryRingValue = ram;
orbit.TertiaryRingValue = net;
}
Example 2: Spacecraft Navigation
A navigation display using the "Amber" theme with status icons.
private void SetupNavDisplay()
{
orbit.HudTheme = OrbitHUDTheme.Amber;
orbit.CentralTitle = "VELOCITY";
orbit.PrimaryUnitLabel = "m/s";
// Add Icons
orbit.AddStatusIcon(OrbitIconType.Navigation, true);
orbit.AddStatusIcon(OrbitIconType.Fuel, false);
orbit.AddStatusIcon(OrbitIconType.Warning, false);
orbit.ShowGridLines = true;
orbit.EnablePulseAnimation = true;
}