×

Solid-modeling system using topology directed subdivision for determination of surface intersections

  • US 4,890,242 A
  • Filed: 02/09/1989
  • Issued: 12/26/1989
  • Est. Priority Date: 06/05/1986
  • Status: Expired due to Term
First Claim
Patent Images

1. A recursive subdivision process performed in a solid-modeling system including computer means for performing a plurality of functions and storage means for storing data, said process for operating said computer means to identify intersections between the surfaces of a pair of solid models A and B represented by digital data surface descriptions stored in said storage means, said digital data surface descriptions produced by computer-aided design, said models representing, for example, articles of manufacture, machine parts or the path described by the movement thereof through space, each said surface description of each said model subdivided into a plurality of surface patches S each represented by a corresponding digital data surface path description stored in a first pool of surface patch description pairs in said storage means, each said pair including one surface patch description from each of said models A and B, said process for determining by recursive subdivision which said surface patch description pairs in said first pool have a transversal intersection to produce a second pool of surface patch description pairs each known to have a transversal intersection, said process further determining when each of a said pair of surface patch descriptions in said first pool have been subdivided to a limit specified by a predetermined criterion to produce a third pool of surface patch description pairs wherein both surface patch descriptions of said pair are known to meet said predetermined criterion, said process comprising causing said computer means to perform the steps of:

  • (1) reading said storage means to retrieve from said first pool a pair of digital data patch descriptions representing, respectively a pair of surface patches SA and SB of said models A and B;

    (2) operating on said retrieved patch descriptions to perform a mutual point exclusion test for said surface patches SA and SB and if no mutual points exist terminating further intersection identifying processing on said pair and returning to step 1 to retrieve from said first pool further patch descriptions representing a new pair of surface patches SA and SB for processing;

    (3) operating on said retrieved patch descriptions to determine if said pair of surface patches SA and SB are transversal and if transversal terminating further subdivision of said pair and going to step 6;

    (4) operating on said retrieved patch descriptions to test each of said surface patches SA and SB against a predetermined criterion and if said criterion is met for both said surface patches classifying said pair in said third pool as having met said criterion whereby the intersection set of said pair can be approximated and terminating further subdivision on said surface patches SA and SB and returning to step 1 to retrieve from said first pool further patch descriptions representing a new pair of surface patches SA and SB for processing;

    (5) operating on said retrieved patch descriptions to subdivide one or both of said surface patches SA and SB if they do not meet said predetermined criterion, said patch or patches subdivided into a further plurality of patches to create a plurality of new surface patch pairs representing new patch descriptions, and storing the digital data patch descriptions representing said new pairs in said first pool in said storage means for further processing and returning to step 1 to retrieve from said first pool further patch descriptions representing a new pair of surface patches SA and SB for processing; and

    (6) operating on said retrieved patch descriptions for said pair of surface patches SA and SB determined to be transversal to perform a test to detect intersection between said pair and if an intersection of said pair is detected classifying said pair of surface patches SA and SB in said second pool as having a transversal intersection whereby it is known that said pair intersect in a curve if they intersect so that the intersection set can be determined without further subdivision, and returning to step 1 to retrieve from said first pool further patch descriptions representing a new pair of surface patches SA and SB for processing.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×