| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // package label -- текстовая метка для отображения
- package label
- import (
- "gitp78su.ipnodns.ru/svi/goarch/lev0/alias"
- "gitp78su.ipnodns.ru/svi/goarch/lev0/types"
- "gitp78su.ipnodns.ru/svi/goarch/pkg/elems/coord"
- "gitp78su.ipnodns.ru/svi/goarch/pkg/elems/offset"
- )
- // Label -- текстовая метка для отображения
- type Label struct {
- Label_ alias.Label `json:"label"` // Метка для вывода
- Offset_ *offset.Offset `json:"offsetX"` // Смещение метки
- Coord_ *coord.Coord `json:"coord"` // Координаты метки
- }
- // NewLabel -- возвращает новую метку
- func NewLabel(elem map[string]interface{}) *Label {
- var label string
- _label, isOk := elem["label"]
- if !isOk {
- label = "<empty>"
- } else {
- label = _label.(string)
- }
- return &Label{
- Label_: alias.Label(label),
- Offset_: offset.NewOffset(elem),
- Coord_: coord.NewCoord("coord", elem),
- }
- }
- // Get -- возвращает метку
- func (sf *Label) Get() alias.Label {
- return sf.Label_
- }
- // Coord -- возвращает координаты метки
- func (sf *Label) Coord() types.ICoord {
- return sf.Coord_
- }
- // Offset -- возвращает смещение метки
- func (sf *Label) Offset() types.IOffset {
- return sf.Offset_
- }
|