Shape can now be created without points
This commit is contained in:
parent
043d93a6ae
commit
640d12ab18
|
@ -69,12 +69,17 @@ Shape* shape_new(const Vector* points, size_t points_len) {
|
|||
self->points = list_from_type(Vector);
|
||||
list_reserve(&self->points, points_len);
|
||||
|
||||
if(points != NULL) {
|
||||
memcpy(list_iterator_begin_as(Vector, &self->points), points, points_len * sizeof(Vector));
|
||||
self->points.len = points_len;
|
||||
|
||||
// derive metadata
|
||||
self->mean = _shape_calculate_mean(self);
|
||||
self->is_convex = _shape_calculate_is_convex(self);
|
||||
} else {
|
||||
self->is_convex = 1;
|
||||
self->mean = ZeroVector;
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue