IP Library Granted Patent US 10,599,809
Granted Patent B2
US 10,599,809 · App. 16/419,692 · Granted Mar 24, 2020

Mechanisms for constructing isocurves and corresponding surfaces to provide inter-surface continuity

Inventors: Benjamin Urick (Austin, TX); Thomas J. R. Hughes (Austin, TX); Richard H. Crawford (Austin, TX); Elaine Cohen (Salt Lake City, UT); Richard F. Riesenfeld (Salt Lake City, UT)
Assignees: Board of Regents of the University of Texas System; University of Utah Research Foundation
G06F17/5095G06F17/175G06F17/50G06F17/5009G06F17/5018G06T17/30G06T19/20G06F2217/02G06F2217/16G06T2219/2021
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,599,809
App. No.
16/419,692
Granted
Mar 24, 2020
Kind
B2
Abstract

A mechanism is disclosed for reconstructing trimmed surfaces whose underlying spline surfaces intersect in model space, so that the reconstructed version of each original trimmed surface is geometrically close to the original trimmed surface, and so that the boundary of each respective reconstructed version includes a model space trim curve that approximates the geometric intersection of the underlying spline surfaces. Thus, the reconstructed versions will meet in a continuous fashion along the model space curve. The mechanism may operate on already trimmed surfaces such as may be available in a boundary representation object model, or, on spline surfaces that are to be trimmed, e.g., as part of a Boolean operation in a computer-aided design system. The ability to create objects with surface-surface intersections that are free of gaps liberates a whole host of downstream industries to perform their respective applications without the burdensome labor of gap repair, and thus, multiplies the efficacy of those industries.

Claims (57)

1. A computer-implemented method for modifying a computer-aided design (CAD) model of a tangible object, the method comprising:

performing, by the computer:

storing geometric input data describing first and second input surfaces associated with the CAD model, wherein the first and second input surfaces are described in a first and second parameter space domain, respectively;

constructing an output surface as a representation of at least portions of the first and second input surfaces, respectively, wherein the output surface is described in a third parameter space domain, wherein constructing the output surface comprises:

constructing a third set of isocurves corresponding to the output surface, wherein the third set of isocurves is determined based at least in part on a first set of isocurves of the first input surface and a second set of isocurves of the second surface; and

storing a modified CAD model of the tangible object comprising the output surface, wherein the modified CAD model is watertight around a geometric intersection of the first and second input surfaces.

2. The method of claim 1 ,

wherein constructing the third set of isocurves comprises trimming the first set of isocurves and the second set of isocurves based at least in part on the geometric intersection of the first and second input surfaces to obtain a first and second set of trimmed isocurves, respectively; and wherein the method further comprises:

reparametrizing the first and second set of trimmed isocurves into the third parameter space domain to obtain the third set of isocurves.

3. The method of claim 1 , wherein the output surface is within a predetermined or user-definable error tolerance of the portions of the first and second input surfaces, respectively.

4. The method of claim 1 , wherein the first and second input surfaces and output surface are non-uniform rational basis splines (NURBS).

5. The method of claim 1 , wherein said constructing is performed as part of a Boolean operation in a computer-aided design (CAD) software system.

6. The method of claim 1 , the method further comprising:

executing an engineering analysis on the modified CAD model to obtain data predicting physical behavior of an object described by the CAD model.

7. The method of claim 6 , wherein the engineering analysis comprises an isogeometric analysis.

8. The method of claim 1 , the method further comprising:

directing a process of manufacturing an object described by the modified CAD model.

9. The method of claim 1 , the method further comprising:

generating an image of an object based on the modified CAD model.

10. The method of claim 1 , the method further comprising:

generating a sequence of animation images based on the modified CAD model and displaying the sequence of animation images.

11. The method of claim 1 ,

wherein the third set of isocurves is sampled based on a set of Greville points in the third parameter space domain.

12. The method of claim 1 , wherein constructing the output surface further comprises:

determining a plurality of third control points of the third set of isocurves based at least in part on a plurality of first control points of the first set of isocurves and a plurality of second control points of the second set of isocurves.

13. The method of claim 12 ,

wherein determining the plurality of third control points of the third set of isocurves based at least in part on the plurality of first control points of the first set of isocurves and the plurality of second control points of the second set of isocurves comprises inverting a linear system of equations relating the plurality of first and second control points to the plurality of third control points.

14. A non-transitory computer-readable memory medium comprising program instructions which, when executed by a processor, are configured to modify a computer-aided design (CAD) model by causing the processor to:

store geometric input data describing first and second input surfaces associated with the CAD model, wherein the first and second input surfaces are described in a first and second parameter space domain, respectively;

construct an output surface as a representation of at least portions of the first and second input surfaces, respectively, wherein the output surface is described in a third parameter space domain, wherein constructing the output surface comprises:

construct a third set of isocurves corresponding to the output surface, wherein the third set of isocurves is determined based at least in part on a first set of isocurves of the first input surface and a second set of isocurves of the second surface; and

store a modified CAD model of the tangible object comprising the output surface, wherein the modified CAD model is watertight around a geometric intersection of the first and second input surfaces.

15. The non-transitory computer-readable memory medium of claim 14 ,

wherein constructing the third set of isocurves comprises trimming the first set of isocurves and the second set of isocurves based at least in part on the geometric intersection of the first and second input surfaces to obtain a first and second set of trimmed isocurves, respectively; and wherein the program instructions are further executable by the processor to cause the processor to:

reparametrize the first and second set of trimmed isocurves into the third parameter space domain to obtain the third set of isocurves.

16. The non-transitory computer-readable memory medium of claim 14 , wherein the output surface is within a predetermined or user-definable error tolerance of the portions of the first and second input surfaces, respectively.

17. The non-transitory computer-readable memory medium of claim 14 , wherein the first and second input surfaces and the output surface are non-uniform rational basis splines (NURBS).

18. The non-transitory computer-readable memory medium of claim 14 , wherein said constructing is performed as part of a Boolean operation in a computer-aided design (CAD) software system.

19. The non-transitory computer-readable memory medium of claim 14 , wherein the program instructions are further executable by the processor to cause the processor to:

execute an engineering analysis on the modified CAD model to obtain data predicting physical behavior of an object described by the CAD model.

20. The non-transitory computer-readable memory medium of claim 19 , wherein the engineering analysis comprises an isogeometric analysis.

21. The non-transitory computer-readable memory medium of claim 14 , wherein the program instructions are further executable by the processor to cause the processor to perform one of:

directing a process of manufacturing an object described by the modified CAD model;

generating an image of an object based on the modified CAD model; or

generating a sequence of animation images based on the modified CAD model and displaying the sequence of animation images.

22. The non-transitory computer-readable memory medium of claim 14 ,

wherein the third set of isocurves is sampled based on a set of Greville points in the third parameter space domain.

23. The non-transitory computer-readable memory medium of claim 14 , wherein in constructing the output surface, the program instructions are further executable by the processor to cause the processor to:

determine a plurality of third control points of the third set of isocurves based at least in part on a plurality of first control points of the first set of isocurves and a plurality of second control points of the second set of isocurves.

24. The non-transitory computer-readable memory medium of claim 23 ,

wherein determining the plurality of third control points of the third set of isocurves based at least in part on the plurality of first control points of the first set of isocurves and the plurality of second control points of the second set of isocurves comprises inverting a linear system of equations relating the plurality of first and second control points to the plurality of third control points.

25. A non-transitory computer-readable memory medium comprising program instructions which, when executed by a processor, are configured to modify a computer-aided design (CAD) model by causing the processor to:

store the CAD model in the memory medium, wherein the CAD model comprises a plurality of input surfaces comprising first and second input surfaces that cross in space along at least one intersection curve shared by the first and second input surfaces, wherein the first and second input surfaces are parametric surfaces that are described in a first and second parameter space domain, respectively;

construct an output surface as a representation of at least portions of the first and second input surfaces, respectively, wherein the output surface is described in a third parameter space domain, wherein in constructing the output surface, the program instructions are further executable to cause the processor to:

identify a series of points along the at least one intersection curve; and

construct a series of isocurves based on the identified series of points, wherein the constructed series of isocurves define the third parameter space domain, and wherein the output surface is constructed in the third parameter space domain based at least in part on the constructed series of isocurves; and

store a modified CAD model of the tangible object comprising the output surface, wherein the modified CAD model is watertight around the identified series of points along the at least one intersection curve.

Assignments (5)
CONFIRMATORY LICENSE Recorded Jan 13, 2020
From: TEXAS, UNIVERSITY OF
To: NAVY, SECRETARY OF THE UNITED STATES OF AMERICA
Reel/Frame 052268/0949 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY PREVIOUSLY RECORDED AT REEL: 049724 FRAME: 0842. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 29, 2019
From: UNIVERSITY OF UTAH
To: UNIVERSITY OF UTAH RESEARCH FOUNDATION
Reel/Frame 050859/0740 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2019
From: COHEN, ELAINE; RIESENFELD, RICHARD F.
To: UNIVERSITY OF UTAH
Reel/Frame 050362/0535 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2019
From: URICK, BENJAMIN; HUGHES, THOMAS J.; CRAWFORD, RICHARD H.
To: BOARD OF REGENTS OF THE UNIVERSITY OF TEXAS SYSTEM
Reel/Frame 049724/0721 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2019
From: PAULSEN, ERIC S.
To: UNIVERSITY OF UTAH RESEARCH FOUNDATION
Reel/Frame 049724/0842 →
Continuity (4)
Continuation 15433823 · Feb 15, 2017
Provisional Application 62295892 · Feb 16, 2016
Provisional Application 62417781 · Nov 4, 2016
Related Publication 20190303530A1 · Oct 3, 2019
Cited By (1)
US 12,353,191