IP Library Granted Patent US 11,947,877
Granted Patent B2
US 11,947,877 · App. 17/268,678 · Granted Apr 2, 2024

Anti-constraint configuration and enforcement for computer-aided design (CAD) models

Inventors: Dick Baardse (Geldermalsen, NL); Steven Robert Jankovich (Buena Park, CA); Douglas King (Peterborough, GB); Howard Mattson (Impington, GB); Manoj Radhakrishnan (Pune, IN)
Assignee: Siemens Industry Software Inc.
G06F30/10G06F2111/04
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 11,947,877
App. No.
17/268,678
Granted
Apr 2, 2024
Kind
B2
Abstract

A computer-aided design (CAD) system may support anti-constraint configuration and enforcement for CAD models that represent physical objects. Anti-constraints may specify given constraints not to be applied for components of the CAD model, and the CAD system may update components of the CAD model without applying the constraints specified in anti-constraints applicable to the CAD model components.

Claims (74)

1. A method comprising:

by a computer-aided design (CAD) system:

maintaining a CAD model that represents a physical object;

setting an anti-constraint for a component of the CAD model, the anti-constraint specifying a given constraint not to be applied for the component of the CAD model;

identifying a user modification to the CAD model that impacts the component; and

updating the component in connection with the user modification without applying the given constraint specified in the anti-constraint.

2. The method of claim 1 , wherein updating the component in connection with the user modification without applying the given constraint comprises:

identifying a candidate update to the component that includes the given constraint; and

determining not to apply the candidate update to the component in connection with the user modification to the CAD model.

3. The method of claim 1 , wherein updating the component in connection with the user modification without applying the given constraint comprises:

identifying a set of candidate constraints to apply to the component based on the user modification to the CAD model, the set of candidate constraints including the given constraint;

filtering the given constraint from the set of candidate constraints to obtain a filtered set of candidate constraints; and

applying a candidate constraint from the filtered set of candidate constraints to the component in connection with the user modification to the CAD model.

4. The method of claim 1 , comprising setting the anti-constraint for the component of the CAD model responsive to user action indicating the given constraint is not to be applied for the component of the CAD model.

5. The method of claim 1 , comprising:

determining a set of inferred constraints for the component, the set of inferred constraints including the given constraint;

proposing the set of inferred constraints to a user for application on the component of the CAD model; and

setting the anti-constraint for the component of the CAD model responsive to a user action indicating that the given constraint from the proposed set of inferred constraints is not to be applied for the component.

6. The method of claim 1 , comprising:

setting multiple anti-constraints for the component, each anti-constraint of the multiple anti-constraints specifying a different constraint not to be applied for the component of the CAD model; and

updating the component in connection with the user modification without applying any of the different constraints specified in the multiple anti-constraints.

7. The method of claim 1 , further comprising setting the anti-constraint as a permanent type anti-constraint, a temporary type anti-constraint, or any conditional type anti-constraint.

8. The method of claim 7 , further comprising:

identifying a subsequent user modification to the CAD model that impacts the component; and

responsive to a determination that the anti-constraint is set as the permanent type anti-constraint:

updating the component in connection with the subsequent user modification without applying the given constraint specified in the anti-constraint; and

responsive to a determination that the anti-constraint is set as the temporary type anti-constraint:

determining the given constraint as an inferred constraint for the component of the CAD model based on the subsequent user modification to the CAD model; and

proposing the inferred constraint to a user for application on the component of the CAD model.

9. A system comprising:

an anti-constraint configuration engine configured to:

identify a user action specifying that a given constraint is not to be applied for a component of a computer-aided design (CAD) model that represents a physical object; and

set an anti-constraint for the component of the CAD model, the anti-constraint specifying the given constraint is not to be applied for the component of the CAD model; and

an anti-constraint enforcement engine configured to:

identify a user modification to the CAD model that impacts the component; and

update the component in connection with the user modification without applying the given constraint specified in the anti-constraint.

10. The system of claim 9 , wherein the anti-constraint enforcement engine is configured to update the component in connection with the user modification without applying the given constraint by:

identifying a candidate update to the component that includes the given constraint; and

determining not to apply the candidate update to the component in connection with the user modification to the CAD model.

11. The system of claim 9 , wherein the anti-constraint enforcement engine is configured to update the component in connection with the user modification without applying the given constraint by:

identifying a set of candidate constraints to apply to the component based on the user modification to the CAD model, the set of candidate constraints including the given constraint;

filtering the given constraint from the set of candidate constraints to obtain a filtered set of candidate constraints; and

applying a candidate constraint from the filtered set of candidate constraints to the component in connection with the user modification to the CAD model.

12. The system of claim 9 , wherein the anti-constraint configuration engine is configured to set multiple anti-constraints for the component, each anti-constraint of the multiple anti-constraints specifying a different constraint not to be applied for the component of the CAD model; and

wherein the anti-constraint enforcement engine is configured to update the component in connection with the user modification without applying any of the different constraints specified in the multiple anti-constraints.

13. The system of claim 9 , wherein the anti-constraint configuration engine is further configured to set the anti-constraint as a permanent type anti-constraint, a temporary type anti-constraint, or any conditional type anti-constraint.

14. The system of claim 13 , wherein the anti-constraint enforcement engine is further configured to:

identify a subsequent user modification to the CAD model that impacts the component; and

responsive to a determination that the anti-constraint is set as the permanent type anti-constraint:

update the component in connection with the subsequent user modification without applying the given constraint specified in the anti-constraint; and

responsive to a determination that the anti-constraint is set as the temporary type anti-constraint:

determine the given constraint as an inferred constraint for the component of the CAD model based on the subsequent user modification to the CAD model; and

propose the inferred constraint to a user for application on the component of the CAD model.

15. A non-transitory machine-readable medium comprising instructions, that when executed by a processor, cause a computer-aided design (CAD) system to:

maintain a CAD model that represents a physical object;

set an anti-constraint for a component of the CAD model, the anti-constraint specifying a given constraint not to be applied for the component of the CAD model;

identify a user modification to the CAD model that impacts the component; and

update the component in connection with the user modification without applying the given constraint specified in the anti-constraint, including by:

identifying a candidate update to the component that includes the given constraint; and

determining not to apply the candidate update to the component in connection with the user modification to the CAD model.

16. The non-transitory machine-readable medium of claim 15 , wherein the instructions, when executed by the processor, cause the CAD system to update the component in connection with the user modification without applying the given constraint by:

identifying a set of candidate constraints to apply to the component based on the user modification to the CAD model, the set of candidate constraints including the given constraint;

filtering the given constraint from the set of candidate constraints to obtain a filtered set of candidate constraints; and

applying a candidate constraint from the filtered set of candidate constraints to the component in connection with the user modification to the CAD model.

17. The non-transitory machine-readable medium of claim 15 , wherein the instructions, when executed by the processor, cause the CAD system to set multiple anti-constraints for the component, each anti-constraint of the multiple anti-constraints specifying a different constraint not to be applied for the component of the CAD model; and

wherein the instructions, when executed by the processor, cause the CAD system to update the component in connection with the user modification without applying any of the different constraints specified in the multiple anti-constraints.

18. The non-transitory machine-readable medium of claim 15 , wherein the instructions, when executed by the processor, further cause the CAD system to set the anti-constraint as a permanent type anti-constraint, a temporary type anti-constraint, or any conditional type anti-constraint.

19. The non-transitory machine-readable medium of claim 18 , wherein the instructions, when executed by the processor, further cause the CAD system to:

identify a subsequent user modification to the CAD model that impacts the component; and

responsive to a determination that the anti-constraint is set as the permanent type anti-constraint:

update the component in connection with the subsequent user modification without applying the given constraint specified in the anti-constraint; and

responsive to a determination that the anti-constraint is set as the temporary type anti-constraint:

determine the given constraint as an inferred constraint for the component of the CAD model based on the subsequent user modification to the CAD model; and

propose the inferred constraint to a user for application on the component of the CAD model.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: BAARDSE, DICK
To: SIEMENS INDUSTRY SOFTWARE B.V.
Reel/Frame 055315/0065 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: JANKOVICH, STEVEN ROBERT
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 055320/0026 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: MATTSON, HOWARD CHARLES DUNCAN; KING, DOUGLAS JOSEPH
To: SIEMENS INDUSTRY SOFTWARE LIMITED
Reel/Frame 055320/0515 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: RADHAKRISHNAN, MANOJ
To: SIEMENS INDUSTRY SOFTWARE (INDIA) PRIVATE LIMITED
Reel/Frame 055321/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: SIEMENS INDUSTRY SOFTWARE B.V.
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 055321/0485 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: SIEMENS INDUSTRY SOFTWARE LIMITED
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 055322/0052 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2021
From: SIEMENS INDUSTRY SOFTWARE (INDIA) PRIVATE LIMITED
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 055322/0412 →
CHANGE OF NAME Recorded Feb 18, 2021
From: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 055334/0377 →
Continuity (1)
Related Publication 20210192098A1 · Jun 24, 2021