Add class methods to Register to create special registers:
Description
Register.circle, Register.rectangular and Register.triangular are the simplest primitives to start.
All methods:
- should accept a
spacing (or a better name) kwarg that sets the minimum pairwise distance (Default to 1.0).
- return coordinates, centered around the origin (0,0).
Naming
Methods that tile a repeating unit cell (rectangular, triangular, hexagonal, heavy_hexagonal) use the adjectival form, matching the equivalent DataGraph methods. Methods that describe the register's overall outline (circle, line, square) keep the noun form.
Context
These methods should cover already available methods in DataGraph, but specialized here to just return a register with coordinates.
Next step will be to remove positions stored in those graph methods, achieving pure graph output.
Users that were using such methods just for positions will need to be informed about this change.
Acceptance criteria
all methods should
- test simple layout with explicit coords
- test minimum distance is given by spacing
Add class methods to
Registerto create special registers:Register.circleissue: add circle class method to Register #407
PR:
Register.rectangularissue: add rectangular class method to Register #408
PR:
Register.triangularissue: add triangular class method to Register #409
PR:
Register.squareissue: add square class method to Register #410
PR:
Register.lineissue: add line class method to Register #411
PR:
Register.hexagonalRegister.heavy_hexagonal(to be discussed, maybe low priority)Description
Register.circle,Register.rectangularandRegister.triangularare the simplest primitives to start.All methods:
spacing(or a better name) kwarg that sets the minimum pairwise distance (Default to 1.0).Naming
Methods that tile a repeating unit cell (
rectangular,triangular,hexagonal,heavy_hexagonal) use the adjectival form, matching the equivalentDataGraphmethods. Methods that describe the register's overall outline (circle,line,square) keep the noun form.Context
These methods should cover already available methods in
DataGraph, but specialized here to just return a register with coordinates.Next step will be to remove positions stored in those graph methods, achieving pure graph output.
Users that were using such methods just for positions will need to be informed about this change.
Acceptance criteria
all methods should