#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include "g2d.h"
#include "common/math_util.h"
Go to the source code of this file.
|
static int | double_sort_up (const void *_a, const void *_b) |
|
zarray_t * | g2d_convex_hull (const zarray_t *points) |
|
double | g2d_distance (const double a[2], const double b[2]) |
|
double | g2d_line_get_coordinate (const g2d_line_t *line, const double q[2]) |
|
void | g2d_line_init_from_points (g2d_line_t *line, const double p0[2], const double p1[2]) |
|
int | g2d_line_intersect_line (const g2d_line_t *linea, const g2d_line_t *lineb, double *p) |
|
void | g2d_line_segment_closest_point (const g2d_line_segment_t *seg, const double *q, double *p) |
|
void | g2d_line_segment_init_from_points (g2d_line_segment_t *seg, const double p0[2], const double p1[2]) |
|
int | g2d_line_segment_intersect_line (const g2d_line_segment_t *seg, const g2d_line_t *line, double *p) |
|
int | g2d_line_segment_intersect_segment (const g2d_line_segment_t *sega, const g2d_line_segment_t *segb, double *p) |
|
void | g2d_polygon_add (zarray_t *poly, double v[2]) |
|
void | g2d_polygon_closest_boundary_point (const zarray_t *poly, const double q[2], double *p) |
|
int | g2d_polygon_contains_point (const zarray_t *poly, double q[2]) |
|
int | g2d_polygon_contains_point_ref (const zarray_t *poly, double q[2]) |
|
int | g2d_polygon_contains_polygon (const zarray_t *polya, const zarray_t *polyb) |
|
zarray_t * | g2d_polygon_create_data (double v[][2], int sz) |
|
zarray_t * | g2d_polygon_create_empty () |
|
zarray_t * | g2d_polygon_create_zeros (int sz) |
|
void | g2d_polygon_get_interior_point (const zarray_t *poly, double *p) |
|
int | g2d_polygon_intersects_polygon (const zarray_t *polya, const zarray_t *polyb) |
|
void | g2d_polygon_make_ccw (zarray_t *poly) |
|
int | g2d_polygon_overlaps_polygon (const zarray_t *polya, const zarray_t *polyb) |
|
int | g2d_polygon_rasterize (const zarray_t *poly, double y, double *x) |
|
◆ double_sort_up()
static int double_sort_up |
( |
const void * |
_a, |
|
|
const void * |
_b |
|
) |
| |
|
static |
◆ g2d_convex_hull()
◆ g2d_distance()
double g2d_distance |
( |
const double |
a[2], |
|
|
const double |
b[2] |
|
) |
| |
Definition at line 43 of file g2d.c.
◆ g2d_line_get_coordinate()
double g2d_line_get_coordinate |
( |
const g2d_line_t * |
line, |
|
|
const double |
q[2] |
|
) |
| |
◆ g2d_line_init_from_points()
void g2d_line_init_from_points |
( |
g2d_line_t * |
line, |
|
|
const double |
p0[2], |
|
|
const double |
p1[2] |
|
) |
| |
◆ g2d_line_intersect_line()
◆ g2d_line_segment_closest_point()
void g2d_line_segment_closest_point |
( |
const g2d_line_segment_t * |
seg, |
|
|
const double * |
q, |
|
|
double * |
p |
|
) |
| |
◆ g2d_line_segment_init_from_points()
void g2d_line_segment_init_from_points |
( |
g2d_line_segment_t * |
seg, |
|
|
const double |
p0[2], |
|
|
const double |
p1[2] |
|
) |
| |
◆ g2d_line_segment_intersect_line()
◆ g2d_line_segment_intersect_segment()
◆ g2d_polygon_add()
void g2d_polygon_add |
( |
zarray_t * |
poly, |
|
|
double |
v[2] |
|
) |
| |
Definition at line 53 of file g2d.c.
◆ g2d_polygon_closest_boundary_point()
void g2d_polygon_closest_boundary_point |
( |
const zarray_t * |
poly, |
|
|
const double |
q[2], |
|
|
double * |
p |
|
) |
| |
◆ g2d_polygon_contains_point()
int g2d_polygon_contains_point |
( |
const zarray_t * |
poly, |
|
|
double |
q[2] |
|
) |
| |
◆ g2d_polygon_contains_point_ref()
int g2d_polygon_contains_point_ref |
( |
const zarray_t * |
poly, |
|
|
double |
q[2] |
|
) |
| |
◆ g2d_polygon_contains_polygon()
int g2d_polygon_contains_polygon |
( |
const zarray_t * |
polya, |
|
|
const zarray_t * |
polyb |
|
) |
| |
◆ g2d_polygon_create_data()
zarray_t* g2d_polygon_create_data |
( |
double |
v[][2], |
|
|
int |
sz |
|
) |
| |
Definition at line 58 of file g2d.c.
◆ g2d_polygon_create_empty()
Definition at line 48 of file g2d.c.
◆ g2d_polygon_create_zeros()
zarray_t* g2d_polygon_create_zeros |
( |
int |
sz | ) |
|
Definition at line 68 of file g2d.c.
◆ g2d_polygon_get_interior_point()
void g2d_polygon_get_interior_point |
( |
const zarray_t * |
poly, |
|
|
double * |
p |
|
) |
| |
◆ g2d_polygon_intersects_polygon()
int g2d_polygon_intersects_polygon |
( |
const zarray_t * |
polya, |
|
|
const zarray_t * |
polyb |
|
) |
| |
◆ g2d_polygon_make_ccw()
void g2d_polygon_make_ccw |
( |
zarray_t * |
poly | ) |
|
Definition at line 80 of file g2d.c.
◆ g2d_polygon_overlaps_polygon()
int g2d_polygon_overlaps_polygon |
( |
const zarray_t * |
polya, |
|
|
const zarray_t * |
polyb |
|
) |
| |
◆ g2d_polygon_rasterize()
int g2d_polygon_rasterize |
( |
const zarray_t * |
poly, |
|
|
double |
y, |
|
|
double * |
x |
|
) |
| |