1 #include "lib9.h" 2 #include "draw.h" 3 4 static 5 int 6 unitsperline(Rectangle r, int d, int bitsperunit) 7 { 8 ulong l, t; 9 10 if(r.min.x >= 0){ 11 l = (r.max.x*d+bitsperunit-1)/bitsperunit; 12 l -= (r.min.x*d)/bitsperunit; 13 }else{ /* make positive before divide */ 14 t = (-r.min.x*d+bitsperunit-1)/bitsperunit; 15 l = t+(r.max.x*d+bitsperunit-1)/bitsperunit; 16 } 17 return l; 18 } 19 20 int 21 wordsperline(Rectangle r, int d) 22 { 23 return unitsperline(r, d, 8*sizeof(ulong)); 24 } 25 26 int 27 bytesperline(Rectangle r, int d) 28 { 29 return unitsperline(r, d, 8); 30 } 31