projects
/
meshfrac
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
updated files from meshfrac_alt
[meshfrac]
/
src
/
geom.h
diff --git
a/src/geom.h
b/src/geom.h
index
14faa82
..
7fc183c
100644
(file)
--- a/
src/geom.h
+++ b/
src/geom.h
@@
-18,12
+18,19
@@
struct poly {
float plane_dist(const struct plane *p, const cgm_vec3 *pt);
float plane_sdist(const struct plane *p, const cgm_vec3 *pt);
float plane_dist(const struct plane *p, const cgm_vec3 *pt);
float plane_sdist(const struct plane *p, const cgm_vec3 *pt);
-void midplane(struct plane *p, const cgm_vec3 *a, const cgm_vec3 *b);
+void midplane(struct plane *p, const cgm_vec3 *a, const cgm_vec3 *b, float offs);
void poly_plane(const struct poly *poly, struct plane *plane);
void poly_plane(const struct poly *poly, struct plane *plane);
+int plane_poly(const struct plane *plane, struct poly *poly, float size);
/* returns negative if there's no intersection, parametric distance if there is */
float ray_plane(const cgm_ray *ray, const struct plane *plane);
float ray_poly(const cgm_ray *ray, const struct poly *poly);
/* returns negative if there's no intersection, parametric distance if there is */
float ray_plane(const cgm_ray *ray, const struct plane *plane);
float ray_poly(const cgm_ray *ray, const struct poly *poly);
+int init_poly(struct poly *p);
+void destroy_poly(struct poly *p);
+int clip_poly(struct poly *pout, const struct poly *pin, const struct plane *plane);
+
+int poly_poly(const struct poly *p1, const struct poly *p2);
+
#endif /* GEOM_H_ */
#endif /* GEOM_H_ */