xref: /inferno-os/libdraw/drawrepl.c (revision 37da2899f40661e3e9631e497da8dc59b971cbd0)
1*37da2899SCharles.Forsyth #include "lib9.h"
2*37da2899SCharles.Forsyth #include "draw.h"
3*37da2899SCharles.Forsyth 
4*37da2899SCharles.Forsyth int
drawreplxy(int min,int max,int x)5*37da2899SCharles.Forsyth drawreplxy(int min, int max, int x)
6*37da2899SCharles.Forsyth {
7*37da2899SCharles.Forsyth 	int sx;
8*37da2899SCharles.Forsyth 
9*37da2899SCharles.Forsyth 	sx = (x-min)%(max-min);
10*37da2899SCharles.Forsyth 	if(sx < 0)
11*37da2899SCharles.Forsyth 		sx += max-min;
12*37da2899SCharles.Forsyth 	return sx+min;
13*37da2899SCharles.Forsyth }
14*37da2899SCharles.Forsyth 
15*37da2899SCharles.Forsyth Point
drawrepl(Rectangle r,Point p)16*37da2899SCharles.Forsyth drawrepl(Rectangle r, Point p)
17*37da2899SCharles.Forsyth {
18*37da2899SCharles.Forsyth 	p.x = drawreplxy(r.min.x, r.max.x, p.x);
19*37da2899SCharles.Forsyth 	p.y = drawreplxy(r.min.y, r.max.y, p.y);
20*37da2899SCharles.Forsyth 	return p;
21*37da2899SCharles.Forsyth }
22*37da2899SCharles.Forsyth 
23