git.asbjorn.biz
/
swftools.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
857174c
)
new function gfxbbox_intersect
author
kramm
<kramm>
Wed, 26 Mar 2008 13:02:25 +0000
(13:02 +0000)
committer
kramm
<kramm>
Wed, 26 Mar 2008 13:02:25 +0000
(13:02 +0000)
lib/gfxtools.c
patch
|
blob
|
history
lib/gfxtools.h
patch
|
blob
|
history
diff --git
a/lib/gfxtools.c
b/lib/gfxtools.c
index
30e72d8
..
486e285
100644
(file)
--- a/
lib/gfxtools.c
+++ b/
lib/gfxtools.c
@@
-615,6
+615,22
@@
gfxbbox_t gfxbbox_expand_to_point(gfxbbox_t box, gfxcoord_t x, gfxcoord_t y)
return box;
}
return box;
}
+void gfxbbox_intersect(gfxbbox_t*box1, gfxbbox_t*box2)
+{
+ if(box2->xmin > box1->xmin)
+ box1->xmin = box2->xmin;
+ if(box2->ymin > box1->ymin)
+ box1->ymin = box2->ymin;
+ if(box2->xmax < box1->xmax)
+ box1->xmax = box2->xmax;
+ if(box2->ymax > box1->ymax)
+ box1->ymax = box2->ymax;
+ if(box1->xmin > box1->xmax)
+ box1->xmax = box1->xmin;
+ if(box1->ymin > box1->ymax)
+ box1->ymax = box1->ymin;
+}
+
gfxbbox_t gfxline_getbbox(gfxline_t*line)
{
gfxcoord_t x=0,y=0;
gfxbbox_t gfxline_getbbox(gfxline_t*line)
{
gfxcoord_t x=0,y=0;
diff --git
a/lib/gfxtools.h
b/lib/gfxtools.h
index
d88b98f
..
8d6d397
100644
(file)
--- a/
lib/gfxtools.h
+++ b/
lib/gfxtools.h
@@
-68,6
+68,7
@@
void gfxdraw_conicTo(gfxdrawer_t*draw, double cx, double cy, double tox, double
gfxbbox_t gfxline_getbbox(gfxline_t*line);
gfxbbox_t gfxbbox_expand_to_point(gfxbbox_t box, gfxcoord_t x, gfxcoord_t y);
gfxbbox_t gfxline_getbbox(gfxline_t*line);
gfxbbox_t gfxbbox_expand_to_point(gfxbbox_t box, gfxcoord_t x, gfxcoord_t y);
+void gfxbbox_intersect(gfxbbox_t*box1, gfxbbox_t*box2);
void gfxline_transform(gfxline_t*line, gfxmatrix_t*matrix);
void gfxline_transform(gfxline_t*line, gfxmatrix_t*matrix);