package draw9 // various bitpacking and decoding functions import ( "encoding/binary" "image" ) func atoi(b []byte) int { i := 0 for i < len(b) && b[i] == ' ' { i++ } n := 0 for ; i < len(b) && '0' <= b[i] && b[i] <= '9'; i++ { n = n*10 + int(b[i]) - '0' } return n } func atop(b []byte) image.Point { return image.Pt(atoi(b), atoi(b[12:])) } func ator(b []byte) image.Rectangle { return image.Rectangle{atop(b), atop(b[2*12:])} } func bplong(b []byte, n uint32) { binary.LittleEndian.PutUint32(b, n) } func bpshort(b []byte, n uint16) { binary.LittleEndian.PutUint16(b, n) }