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); |     self->points = list_from_type(Vector); | ||||||
|     list_reserve(&self->points, points_len); |     list_reserve(&self->points, points_len); | ||||||
| 
 | 
 | ||||||
|  |     if(points != NULL) { | ||||||
|         memcpy(list_iterator_begin_as(Vector, &self->points), points, points_len * sizeof(Vector)); |         memcpy(list_iterator_begin_as(Vector, &self->points), points, points_len * sizeof(Vector)); | ||||||
|         self->points.len = points_len; |         self->points.len = points_len; | ||||||
| 
 | 
 | ||||||
|         // derive metadata
 |         // derive metadata
 | ||||||
|         self->mean = _shape_calculate_mean(self); |         self->mean = _shape_calculate_mean(self); | ||||||
|         self->is_convex = _shape_calculate_is_convex(self); |         self->is_convex = _shape_calculate_is_convex(self); | ||||||
|  |     } else { | ||||||
|  |         self->is_convex = 1; | ||||||
|  |         self->mean = ZeroVector; | ||||||
|  |     } | ||||||
| 
 | 
 | ||||||
|     return self; |     return self; | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Sara
						Sara