Versions in this module Expand all Collapse all v0 v0.10.0 Sep 11, 2026 v0.9.0 Sep 11, 2026 Changes in this version type Framing + Z scale.Scale v0.8.1 Sep 9, 2026 v0.8.0 Sep 9, 2026 Changes in this version + const FullTurn + var ErrUnknownType = errors.New("figure/coord: unknown coord type") + func OppositeFurniture(cd Coord, dst *Furniture, req FurnitureRequest) bool + func Register(t Type, build func(Desc) (Coord, error)) + func SmithZ(re, im float64) (r, x float64) + type Axis uint8 + const FromX + const FromY + type Coord interface + Area func(p *ir.Path, x0, y0, x1, y1 float32) + Clip func(p *ir.Path, area ir.Rect) + Decimates func() bool + Edge func(p *ir.Path, from, to ir.Point) + Extent func() (x0, x1, y0, y1 float32) + Frame func(f Framing) Coord + Furniture func(dst *Furniture, req FurnitureRequest) + Invert func(pt ir.Point) (x, y float32) + Point func(x, y float32) ir.Point + Points func(dst []ir.Point, xs, ys []float32) []ir.Point + Straight func() bool + func Cartesian() Coord + func Donut(hole float64, opts ...PolarOption) Coord + func FromDesc(d Desc) (Coord, error) + func Pie(opts ...PolarOption) Coord + func Polar(opts ...PolarOption) Coord + func Smith(opts ...SmithOption) Coord + type Desc struct + Admittance bool + Arc bool + Chord bool + Counterclockwise bool + Hole float64 + Radius float64 + Start float64 + Sweep float64 + Theta Axis + Type Type + func Describe(c Coord) (Desc, bool) + func (d Desc) Default() bool + type Describer interface + Describe func() Desc + type Exploder interface + Explode func(x0, y0, x1, y1 float32, by float64) (dx, dy float32) + type Framing struct + Area ir.Rect + X scale.Scale + Y scale.Scale + type Furniture struct + AxisX Shape + AxisY Shape + GridX []Shape + GridY []Shape + InX []bool + InY []bool + LabelX []Label + LabelY []Label + TickX []Shape + TickY []Shape + XLabelsShareARow bool + func (f *Furniture) Reset() + type FurnitureRequest struct + Area ir.Rect + Metrics Metrics + XTicks []scale.Tick + YTicks []scale.Tick + type Label struct + At ir.Point + H ir.HAlign + Rotation float64 + V ir.VAlign + type Metrics struct + LabelPad float32 + MinorTickLen float32 + TickLen float32 + type Opposite interface + FurnitureOpposite func(dst *Furniture, req FurnitureRequest) + type PolarOption func(*polar) + func Arc() PolarOption + func Chord() PolarOption + func Counterclockwise(on bool) PolarOption + func Hole(f float64) PolarOption + func Radius(f float64) PolarOption + func Start(radians float64) PolarOption + func Sweep(radians float64) PolarOption + func Theta(a Axis) PolarOption + type Shape struct + Path ir.Path + Pts []ir.Point + func (s *Shape) Empty() bool + type SmithOption func(*smith) + func SmithAdmittance(on bool) SmithOption + func SmithArc() SmithOption + func SmithChord() SmithOption + func SmithRadius(f float64) SmithOption + type Type string + const TypeCartesian + const TypePolar + const TypeSmith