| CPC A61C 7/002 (2013.01) [G06F 17/11 (2013.01); G06F 30/20 (2020.01); G06T 17/20 (2013.01); G06T 2210/12 (2013.01); G06T 2210/41 (2013.01)] | 20 Claims |

|
1. A non-transitory computing device readable medium having executable instructions which can be executed by a processor to cause a computing device to perform a method, comprising:
determining a bounding box of a mesh of a tooth of a dentition, the mesh including a plurality of triangles;
building a two-dimensional (2D) height map array for storing height values of a crown surface of the tooth, the crown surface corresponding to an area of the tooth that is visible or that is located above a gum-line;
determining which triangles of the plurality of triangles of the mesh are not backside triangles, wherein a backside triangle has a normal at more than a 90 degree angle with respect to a Z-axis direction;
scanning the triangles determined as not backside triangles to calculate corresponding height values and entering the height values into the 2D height map array;
constructing a virtual three-dimensional (3D) occlusogram based on the height values and occlusal distance values of the tooth, wherein the occlusal distance values are determined based on a 3D array corresponding to a 3D grid with generators defined by the bounding box of the mesh of the tooth;
attaching the virtual 3D occlusogram to a virtual 3D model of the tooth by associating the occlusal distance values of the tooth with the virtual 3D model of the tooth;
changing a position of the virtual 3D model of the tooth; and
updating the 3D occlusogram in response to the change of position of the virtual 3D model of the tooth, wherein updating the 3D occlusogram includes finding related teeth in the dentition effected by the change of position and recalculating the 3D occlusogram for the tooth and the related teeth.
|