GPU Parallel Inverse Evaluation of NURBS Surfaces Based on Matrix Representation
-
Graphical Abstract
-
Abstract
Inverse evaluation, which calculates the corresponding 2D parameters for a given 3D surface point, is one of the most fundamental operators in CAD modelers. Current methods are often found insufficient when processing big and complex CAD models, particularly suffering from the efficiency and robustness issues. To improve efficiency, GPUs are often used to accelerate the computations, but most existing methods simply run the serial version in parallel, paying little attention to problems like GPU cache management. This paper presents an alternative parallel inverse evaluation method that is fully GPU-based. It proposes to use the matrix representation scheme of NURBS surfaces instead of the traditional recursion-based scheme, and combines it with the surface subdivision method and the iterative Gauss-Newton iteration method to improve data sharing and increase efficiency. Tests are performed on a number of simple and complex surfaces, and the conducted experimental results show that this method can solve more than 10 000 inverse points per millisecond, which is at least two orders of magnitude faster than the traditional method for NURBS surface inversion.
-
-