diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2026-03-03 15:23:25 -0500 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2026-03-03 15:23:25 -0500 |
| commit | 3ae1a7330b0eaab02fafd1f857c60fad1cd4fe19 (patch) | |
| tree | 069ba54c2ca7594e96cfe519acc3700a02a5d949 /lay/strain/sym.go | |
| parent | 474f4984f8be450524eedd3e89bcbfdfa1b4f516 (diff) | |
| download | gui-3ae1a7330b0eaab02fafd1f857c60fad1cd4fe19.zip | |
lay/strain: represent rectangles as (origin, size)
Diffstat (limited to 'lay/strain/sym.go')
| -rw-r--r-- | lay/strain/sym.go | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lay/strain/sym.go b/lay/strain/sym.go index cf8777b..9d2a0bf 100644 --- a/lay/strain/sym.go +++ b/lay/strain/sym.go @@ -14,7 +14,8 @@ type SymPt struct { // SymRect is a set of Cassowary symbols representing an // image.Rectangle. type SymRect struct { - Min, Max SymPt + Origin SymPt // top-left corner position + Size SymPt // Dx() and Dy() } func NewSymPt() SymPt { @@ -28,10 +29,10 @@ func NewSymRect() SymRect { // editRect marks all symbols of a rectangle as editable with a // certain precedence. func editRect(solver *casso.Solver, sr SymRect, p casso.Priority) error { - if err := editPt(solver, sr.Min, p); err != nil { + if err := editPt(solver, sr.Origin, p); err != nil { return err } - if err := editPt(solver, sr.Max, p); err != nil { + if err := editPt(solver, sr.Size, p); err != nil { return err } return nil @@ -50,10 +51,10 @@ func editPt(solver *casso.Solver, sp SymPt, p casso.Priority) error { } func suggestRect(solver *casso.Solver, sr SymRect, r image.Rectangle) error { - if err := suggestPt(solver, sr.Min, r.Min); err != nil { + if err := suggestPt(solver, sr.Origin, r.Min); err != nil { return err } - if err := suggestPt(solver, sr.Max, r.Max); err != nil { + if err := suggestPt(solver, sr.Size, image.Pt(r.Dx(), r.Dy())); err != nil { return err } return nil |