X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fgeom.h;h=19c10ff6a1a4e758294a9d42cdaec7b7a4e51764;hb=82bf18c392447827912146ba65145500c9c25385;hp=14faa82af794bdca1f6a642e25740e1bb86a91fd;hpb=7e22a9e6549bf0ff36dc9a73c243de1f4b36b4a4;p=meshfrac diff --git a/src/geom.h b/src/geom.h index 14faa82..19c10ff 100644 --- a/src/geom.h +++ b/src/geom.h @@ -21,9 +21,14 @@ 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 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); +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); + #endif /* GEOM_H_ */