CPC A63F 13/655 (2014.09) [A63F 13/213 (2014.09); A63F 13/65 (2014.09); A63F 13/98 (2014.09); G06T 15/08 (2013.01)] | 11 Claims |
1. A computer-implemented method of creating a digital three-dimensional representation of an object, the method comprising:
receiving a digital three-dimensional representation of a surface of the object, the digital three-dimensional representation of the surface comprising at least one surface element, the surface element comprising a boundary and a surface area surrounded by said boundary;
mapping the surface onto a plurality of voxels; and
creating the digital three-dimensional representation of the object from the identified voxels,
wherein mapping comprises:
for each surface element, defining a plurality of points within said surface element, wherein at least a subset of said plurality of points lie within the surface area of the surface element;
assigning each of the plurality of points to a corresponding voxel, and
determining a voxel color for the corresponding voxel by:
identifying a target color of a predetermined set of colors, the target color representing an input color, by:
representing the input color and each color of the set of predetermined colors in a three-dimensional color space, wherein all colors of the set of colors lie within a ball having an origin and a radius;
determining a current candidate color from the predetermined set of colors; and
analyzing a subset of the predetermined set of colors to identify an updated candidate color from the subset of the predetermined set of colors wherein the updated candidate color has a smaller distance to the input color than the current candidate color and wherein the subset of the predetermined set of colors only comprises colors of the predetermined set of colors that have a distance from the origin which is no larger than a sum of the distance between the input color and the origin and the distance between the input color and the current candidate color,
wherein he surface element is a triangle and the plurality of points are defined by:
selecting a first sequence of points on a first edge of the triangle;
for each point of the first sequence, defining an associated straight line connecting said point and the corner of the triangle that is opposite the first edge; and
for each associated straight line, selecting a sequence of further points on said straight line.
|