PIDSTACK

Rudder angle indicator

Free

gauge-rudder-angle · Gauges · Marine indicators · 48×48 grid units

XI-101

Five states

  • Running
  • Warning
  • Failure
  • Stopped
  • No data

Four themes

Rudder angle indicator in each theme (rows) and state (columns)
ThemeRunningWarningFailureStoppedNo data
Day
Bright
Dusk
Night

About this symbol

Meaning
rudder angle port and starboard
Convention
ISA-101 / IEC 61924 style indicator (ISA (opens in a new tab), IEC (opens in a new tab))
Tags
Access
Free: code and SVG for everyone.

Drawn from scratch. The convention names the meaning the symbol stands for; no standard text or figure is reproduced.

Install with the shadcn CLI
npx shadcn@latest add "https://pidstack.com/r/gauge-rudder-angle.json"
Use in React
import { GaugeRudderAngle } from "@/components/pidstack/gauge-rudder-angle"
import "@/components/pidstack/pidstack.css"

<div data-theme="day">
  <GaugeRudderAngle state="running" label="XI-101" size="medium" />
</div>
SVG source
<svg xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Rudder angle indicator" class="sym" data-state="running" data-sym="gauge-rudder-angle" viewBox="0 0 48 48" width="48" height="48" focusable="false"><title>Rudder angle indicator</title><style>.sym{color:var(--sym-state-running,#12803a);--a:var(--sym-state-running,#12803a);--_f:var(--sym-fill-running,#d3f0dc);overflow:visible;display:block;flex:none}
.sym[data-state=warning]{color:var(--sym-state-warning,#d99a00);--a:var(--sym-state-warning,#d99a00);--_f:var(--sym-fill-warning,#fff0b0)}
.sym[data-state=failure]{color:var(--sym-state-failure,#d0021b);--a:var(--sym-state-failure,#d0021b);--_f:var(--sym-fill-failure,#fcd3d7)}
.sym[data-state=stopped]{color:var(--sym-state-stopped-line,#000000);--a:var(--sym-state-stopped-line,#000000);--_f:var(--sym-state-stopped-fill,#ffffff);filter:var(--sym-state-stopped-halo,none)}
.sym[data-state=stopped] text:not(.tb){fill:var(--sym-state-stopped-line,#000000)}
.sym[data-state=unknown]{color:var(--sym-off,#66727f);--a:var(--sym-off,#66727f);--_f:var(--sym-bg,#ffffff)}
.sym *{stroke-linecap:round;stroke-linejoin:round}
.sym .k{fill:none;stroke:currentColor;stroke-width:2}
.sym .b{fill:var(--_f);stroke:currentColor;stroke-width:2}
.sym .a{fill:none;stroke:var(--a);stroke-width:2}
.sym .ab{fill:var(--_f);stroke:var(--a);stroke-width:2}
.sym .s{fill:currentColor;stroke:none}
.sym .as{fill:var(--a);stroke:none}
.sym .th{stroke-width:4}
.sym .lv{fill:var(--a);opacity:.4;stroke:none}
.sym .halo{fill:var(--sym-bg,#ffffff);stroke:var(--sym-bg,#ffffff);stroke-width:2}
.sym .bg{stroke:var(--sym-bg,#ffffff);stroke-width:1.8;fill:none}
.sym .bgf{fill:var(--sym-bg,#ffffff);stroke:none}
.sym .flow{fill:none;stroke:var(--a);stroke-width:3.4;stroke-dasharray:0.1 20}
.sym text,.sym .x{font-family:var(--sym-font,system-ui,"Segoe UI",Roboto,sans-serif);font-weight:700;text-anchor:middle;fill:var(--sym-text,#1f2933);stroke:none}
.sym text.tb{fill:var(--sym-bg,#ffffff)}
.sym[data-state=unknown] .k,.sym[data-state=unknown] .b{stroke-dasharray:4 3}
.sym .nd{fill:none;stroke:currentColor;stroke-width:2.4;transition:transform .7s cubic-bezier(.34,1.56,.64,1)}
.sym .zk-ok,.sym .zk-warning,.sym .zk-failure{fill:none;stroke-width:4;stroke-linecap:butt}
.sym .zk-ok{stroke:var(--sym-state-running,#12803a)}
.sym .zk-warning{stroke:var(--sym-state-warning,#d99a00);stroke-dasharray:5 2.5}
.sym .zk-failure{stroke:var(--sym-state-failure,#d0021b);stroke-dasharray:2 2}
.sym[data-state=stopped] [class^=zk-]{opacity:.55}
.sym .g-led{stroke:none}</style><g><path class="b" d="M2 44 A30 30 0 0 1 46 44 Z"></path><path class="k" stroke-width="1.6" d="M-2.31 34.42 L3.33 36.48 M2.55 26 L4.85 27.93 M10 19.75 L11.5 22.35 M19.14 16.43 L20.18 22.33 M28.86 16.43 L27.82 22.33 M38 19.75 L36.5 22.35 M45.45 26 L43.15 27.93 M50.31 34.42 L44.67 36.48"></path><path class="zk-failure" d="M46.12 28.51 A27 27 0 0 1 49.37 34.77"></path><path class="zk-failure" d="M-1.37 34.77 A27 27 0 0 1 1.88 28.51"></path><g class="nd" style="transform:rotate(20deg);transform-origin:24px 44px;stroke-width:2.4"><path d="M24 44 V24"></path></g><circle class="s" cx="24" cy="44" r="2.6"></circle><g><text x="9" y="42" style="font-size:7.5px">P</text></g><g><text x="39" y="42" style="font-size:7.5px">S</text></g></g></svg>