Object modeling with tensor products
OwnerSela Dombrower, Alyn Rockwoodinventors
Life of this patent
Estimating the term…
Abstract
A computer-implemented method for evaluating a curve element of a 3D model includes providing a description of the curve element including a Bernstein basis and one or more control point vectors, evaluating polynomial basis vectors corresponding with the Bernstein basis at a plurality of first parameter steps to produce a matrix of power basis vectors, computing a curve matrix from the product of a Bernstein basis and a matrix of the control point vectors and evaluating the curve at the first parameter steps by computing the product of the matrix of power basis vectors and the curve matrix. Methods for evaluating a curve element of a 3D model may be extended or scaled to higher dimensional elements so that surfaces may be evaluated.
Claims29
A computer-implemented method for evaluating a curve element of a 3D model with improved accuracy, comprising:
- providing a curve element of a 3D model in terms of a polynomial basis vector and a matrix of curve element control points, the matrix of curve element control points having vector rows;
- multiplying a basis matrix having vector coefficient rows by the matrix of curve element control points to obtain a control point basis matrix having vector rows;
- evaluating the polynomial basis vector at a number of parameter steps to produce a polynomial basis matrix having vector rows;
- multiplying the polynomial basis matrix by the control point basis matrix to obtain a matrix of curve element points having vector rows;
- and
- presenting graphical images of the curve element by rendering points of the matrix of curve element points at a display.
(canceled)
(canceled)
A computer-implemented method for evaluating a surface element of a 3D model with improved accuracy, comprising:
- providing a surface element of a 3D model in terms of a polynomial basis vector and a tensor of surface element control point matrices, the control point matrices having vector rows;
- multiplying a basis matrix having vector coefficient rows by the tensor of surface element control point matrices to obtain a tensor of surface element control point matrices having basis-changed vector rows;
- multiplying the tensor of surface element control point matrices with basis-changed vector rows by the basis matrix to obtain a tensor of surface element control point vector row matrices in the basis;
- evaluating the polynomial basis vector at a number of steps in a first parameter to produce a matrix of polynomial basis vector rows of the first parameter;
- evaluating the polynomial basis vector at a number of steps in a second parameter to produce a matrix of polynomial basis vector rows of the second parameter;
- multiplying the matrix of polynomial basis vector rows of the first parameter by the tensor of control point vector row matrices in the basis to obtain an intermediate result tensor having vector rows;
- multiplying the intermediate result tensor having vector rows by the matrix of polynomial basis vector rows of the second parameter to obtain a tensor of surface element point matrices having vector rows;
- and
- presenting graphical images of the surface element by, at a display, rendering points of the tensor of surface element point matrices.
(canceled)
A system for evaluating a curve element of a 3D model with improved accuracy, comprising:
- a memory having program instructions stored thereto;
- a storage containing:
- a curve element of a 3D model in terms of a polynomial basis vector and a matrix of curve element control points, the matrix of curve element control points having vector rows;
- and
- a basis matrix having vector coefficient rows;
- having a plurality of cores configured for parallel processing, a processor configured to run a program in accordance with the program instructions in order to:
- multiply the basis matrix having vector coefficient rows by the matrix of curve element control points to obtain a control point basis matrix having vector rows;
- evaluate the polynomial basis vector at a number of parameter steps to produce a polynomial basis matrix having vector rows;
- and
- multiply the polynomial basis matrix by the control point basis matrix to obtain a matrix of curve element points having vector rows;
- and
- present graphical images of the curve element by rendering points of the matrix of curve element points at a display.
(canceled)
A system for evaluating a surface element of a 3D model with improved accuracy, comprising:
- a memory having program instructions stored thereto;
- a storage containing:
- a surface element of a 3D model in terms of a polynomial basis vector and a tensor of control point matrices, the control point matrices having vector rows;
- and
- a basis matrix having vector coefficient rows;
- having a plurality of cores configured for parallel processing, a processor configured to run a program in accordance with the program instructions in order to:
- multiply a basis matrix having vector coefficient rows by the tensor of surface element control point matrices to obtain a tensor of surface element control point matrices having basis-changed vector rows;
- multiply the tensor of surface element control point matrices with basis-changed vector rows by the basis matrix to obtain a tensor of surface element control point vector row matrices in the basis;
- evaluate the polynomial basis vector at a number of steps in a first parameter to produce a matrix of polynomial basis vector rows of the first parameter;
- evaluate the polynomial basis vector at a number of steps in a second parameter to produce a matrix of polynomial basis vector rows of the second parameter;
- multiply the matrix of polynomial basis vector rows of the first parameter by the tensor of surface element control point vector row matrices in the basis to obtain an intermediate result tensor having vector rows;
- multiply the intermediate result tensor by the matrix of polynomial basis vector rows of the second parameter to obtain a tensor of surface element point matrices having vector rows;
- and
- present graphical images of the surface element by, at a display, rendering points of the tensor of surface element point matrices.
Dependencies are inferred from the claim text.