DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the claims at issue are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); and In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the reference application or patent either is shown to be commonly owned with this application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO internet Web site contains terminal disclaimer forms which may be used. Please visit http://www.uspto.gov/forms/. The filing date of the application will determine what form should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to http://www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 2-11, and 13-20 of U.S. Patent No. 12045284.
Table: 1
Mapping of contending claims in the patent that contains double patenting issues.
Current Application (18/781,191)
Patent (US 12045284 B2)
1
1
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
13
12
14
13
15
14
16
15
17
16
18
17
19
18
20
19
21
20
22
Table: 2
Current Application (18/781,191)
Patent (US 12045284 B2)
Claim 1, A computer-implemented method for searching a computer-aided design (CAD) drawing, comprising:
(a) obtaining the CAD drawing, wherein:
(i) the CAD drawing comprises one or more geometric entities; and
(ii) the one or more geometric entities comprise vector based geometric entities;
(b) for each of the one or more geometric entities:
(i) extracting one or more primitives;
(c) transforming all of the one or more primitives, for all of the one or more geometric entities, from a world coordinate system to feature coordinates of a feature coordinate system;
(d) encoding, for each of the one or more geometric entities, geometry data of the transformed one or more primitives that are owned by a respective geometric entity, into an index code for the respective geometric entity;
(e) generating an index table comprising the index codes as keys;
(f) identifying a target geometric entity of the one or more geometric entities;
(g) determining, for the target geometric entity, a target index code of the index codes; and
(h) searching the CAD drawing to identify instances of the target geometric entity by querying the index table based on the target index code.
Claim 1, A computer-implemented method for searching a computer-aided design (CAD) drawing, comprising:
(a) obtaining the CAD drawing, wherein:
(i) the CAD drawing comprises one or more geometric entities; and
(ii) the one or more geometric entities comprise vector based geometric entities;
(b) for each of the one or more geometric entities:
(i) extracting one or more primitives;
. . .
(d) transforming all of the one or more primitives, for all of the one or more geometric entities, from a world coordinate system to feature coordinates of the feature coordinate system, . . .
(e) encoding, for each of the one or more geometric entities, geometry data of the transformed one or more primitives that are owned by a respective geometric entity, into an index code for the respective geometric entity;
(f) generating an index table comprising the index codes as keys and graph nodes of the graph as values;
(g) identifying a target geometric entity of the one or more geometric entities;
(h) determining, for the target geometric entity, a target index code of the index codes;
(i) searching the CAD drawing to identify instances of the target geometric entity by querying the index table based on the target index code; and
(j) visually distinguishing the identified instances of the target geometric entity in the CAD drawing.
Claim 1 is rejected for obviousness type double patenting over claim 1 of U.S. Patent No. 12045284 for having similar limitations as described in Table 2. Although the conflicting claims are not identical, they are not patentably distinct from each other because the scope of the inventions is the same. Claim 1 of current application is an obvious variant and anticipated by claim 1 U.S. Patent No. 12045284.
The same logic applies to Claims 2-20. They are rejected for obviousness type double patenting under claims 3-11 and 13-22 of U.S. Patent No. 12045284.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1, 8, 11, and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jones et al. (US 20210004369 A1), in view of Agrawal et al. (US 20160196677 A1).
Regarding Claim 11, Jones discloses A computer-implemented system for searching a computer aided design (CAD) drawing (ABST reciting “systems and methods for searching a machining knowledge database that includes stored 3D models and associated stored part signatures.” Further, ¶22 reciting “3D models may be produced by and/or derived from a CAD system (e.g., a CAD model)” Fig. 7), comprising:
(a) a computer having a memory; (Fig. 7 showing a memory 206, the computer-readable memory 206.)
(b) a processor executing on the computer; (Fig. 7 showing a processing unit 202)
(c) the memory storing a set of instructions, wherein the set of instructions, when executed by the processor cause the processor to perform operations (¶175 reciting “a computer-readable storage media assemblage, wherein the storage media assemblage is operatively coupled to the computer-readable memory and includes instructions that, when executed by the processing unit, cause the computerized system to perform the method of any of paragraphs A1-A40.”) comprising:
(i) obtaining the CAD drawing, wherein
(A) the CAD drawing comprises one or more geometric entities; (¶49 reciting “As shown in FIG. 1, methods 10 include receiving 12 input from a user . . . The input representation and/or the search query may include, and/or may be, a 3D model, a 3D sketch, . . . Receiving 12 may include receiving a part signature, a shape metric”) and
(B) the one or more geometric entities comprise vector based geometric entities; (¶39 reciting “the shape metric may be in the form of an attribute vector that encodes different geometric attributes (e.g., volume, surface area, number of edges, edge connectivity) along different dimensions of the attribute vector.”)
(ii) for each of the one or more geometric entities:
(A) extracting one or more primitives; (¶35 disclosing machining features corresponding to primitive shapes, and reciting “Each of the primitive shapes may be a machining feature”. Further, ¶46 reciting “Analyzing may include decomposing the 3D model into machining features . . ., as described herein with respect to identifying 26 machining features of the input.”)
(iii) transforming all of the one or more primitives, for all of the one or more geometric entities, from a world coordinate system to feature coordinates of the feature coordinate system; (¶39 reciting “the shape metric may be invariant under scaling, rotation, and/or translation transformations of the corresponding 3D model. Shape metrics may correspond to and/or encode one or more machining features of the respective part.” and ¶64 reciting “Where the input includes the input 3D model, one or more of the stored 3D models and the input 3D model may be displayed in an overlaid fashion, or format, e.g., with the models aligned to a common coordinate origin, aligned in a common orientation, and/or normalized to a relative scale.”)
(viii) searching the CAD drawing to identify instances of the target geometric entity. (¶55 reciting “Methods 10 include searching 16 the machining knowledge database for one or more stored 3D models of formed parts that are similar to the input part, based at least in part on the input and the input part signature. Searching 16 may be referred to as shape-based searching”)
However, Jones does not explicitly disclose
(iv) encoding, for each of the one or more geometric entities, geometry data of the transformed one or more primitives that are owned by a respective geometric entity, into an index code for the respective geometric entity;
(v) generating an index table comprising the index codes as keys and graph nodes of the graph as values;
(vi) identifying a target geometric entity of the one or more geometric entities;
(vii) determining, for the target geometric entity, a target index code of the index codes;
(viii) searching the CAD drawing to identify instances of the target geometric entity by querying the index table based on the target index code.
Agrawal teaches “an improved data processing apparatus and method and more specifically to mechanisms for indexing and querying spatial graphs.” (¶2). More specifically, Agrawal teaches (iv) encoding, for each of the one or more geometric entities, geometry data of the transformed one or more primitives that are owned by a respective geometric entity, into an index code for the respective geometric entity;
(v) generating an index table comprising the index codes as keys and graph nodes of the graph as values;
(vi) identifying a target geometric entity of the one or more geometric entities;
(vii) determining, for the target geometric entity, a target index code of the index codes;
(viii) searching the CAD drawing to identify instances of the target geometric entity by querying the index table based on the target index code.
¶20 recites “The mechanisms store the geometry object in graph database using the geohashes as bit strings and build a hashmap index, which is an n×n table of the geometry object and its associated encoded geohash. Once the mechanisms have indexed and stored all of the received geometry objects, then geometry objects may now be efficiently queried based on range queries of their associated geohashes (bit strings).”
It would have been obvious to one with ordinary skill, before the effective filing date of the claimed invention, to modify the system (taught by Jones) to adapt the mechanisms for indexing and querying spatial graphs (taught by Agrawal). The suggestions/motivations would have been to solve the problems of query inefficiency and no indexing support for graph data (¶3), and to apply a known technique to a known device (method, or product) ready for improvement to yield predictable results.
Regarding Claim 18, Jones in view of Agrawal discloses The computer-implemented system of claim 11, wherein the target geometric entity comprises a single geometric entity and the searching comprises:
querying the index table using the target index code to identify an entity path recorded in the index table.
(Agrawal, ¶20 reciting “The mechanisms store the geometry object in graph database using the geohashes as bit strings and build a hashmap index, which is an n×n table of the geometry object and its associated encoded geohash. Once the mechanisms have indexed and stored all of the received geometry objects, then geometry objects may now be efficiently queried based on range queries of their associated geohashes (bit strings). The suggestions/motivations would have been the same as that of Claim 11 rejections.)
Claim 1, has similar limitations as of Claim(s) 11, therefore it is rejected under the same rationale as Claim(s) 11.
Claim 8, has similar limitations as of Claim(s) 18, therefore it is rejected under the same rationale as Claim(s) 18.
Claim(s) 2 and 12 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jones in view of Agrawal, and further in view of Shayani et al. (US 20200050710 A1).
Regarding Claim 12, Jones in view of Agrawal discloses The computer-implemented system of claim 11.
However, Jones in view of Agrawal does not explicitly disclose wherein:
an origin and axis direction of the feature coordinate system is determined by a geometry of the one or more primitives; and
each feature coordinate system is independent of a transformation of the one or more primitives.
Shayani teaches “Each design primitive may be constrained to have specified relationships with global or local axis and origins. For example, each instance of a design primitive could be limited to positions and orientations that are parallel to a global ground plane.” (¶82). In other words, each design primitive has its own positions and orientations that are parallel to a global orientations.
It would have been obvious to one with ordinary skill, before the effective filing date of the claimed invention, to modify the method (taught by Jones in view of Agrawal) to constrain each design primitive to have its own positions and orientations that are independent of a transformation of the primitive (taught by Shayani). The suggestions/motivations would have been “more effective techniques for accounting for stylistic preferences when automatically generating designs.” (¶7), and to apply a known technique to a known device (method, or product) ready for improvement to yield predictable results.
Claim 2, has similar limitations as of Claim(s) 12, therefore it is rejected under the same rationale as Claim(s) 12.
Claim(s) 3, 5, 13, and 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jones in view of Agrawal, and further in view of McCombe et al. (US 20160371876 A1).
Regarding Claim 13, Jones in view of Agrawal discloses The computer-implemented system of claim 11, wherein the transforming comprises creating the feature coordinate system comprises, for each of the one or more geometric entities by:
acquiring vertices for all of the one or more primitives extracted from the geometric entity;
placing the vertices into a vertex collection;
(Jones, ¶38 reciting “the shape metric may encode the volume and surface area as top level geometric attributes, and the number of vertices and edges as second level geometric attributes.”)
However, Jones in view of Agrawal does not explicitly disclose
creating a minimum bounding sphere from the vertex collection; and
determining an axis of the feature coordinate system.
McCombe teaches “FIGS. 4D-F depict voxels 17-19, which have various scales and orientations in 3-D space. In one approach, voxels are axis aligned bounding boxes, consistent with the examples of FIG. 4A-4F.” (¶79), and further recites “all input geometry can be transformed into a coordinate within the voxel grid at a particular LOG (or LOGs). This transform can be a scale and translation into a bounding cube that fully contains all input scene geometry. At a start of hierarchy construction, it can be assumed that a world-space axis aligned bounding cube can be known that contains all such geometry (such as an output from a prior vertex processing pipeline stage within a renderer, coupled to this acceleration structure builder. After transformation, all internal operations can be performed in the local coordinate system.” (¶89). In addition, ¶13 recites “A bounding volume hierarchy can use shapes of a selected type, such as a sphere or an axis aligned bounding box.”
It would have been obvious to one with ordinary skill, before the effective filing date of the claimed invention, to modify the system (taught by Jones in view of Agrawal) to create a minimum bounding sphere from the vertex collections and to determine an axis of the local coordinate system (taught by McCombe). The suggestions/motivations would have been to apply a known technique to a known device (method, or product) ready for improvement to yield predictable results.
Regarding Claim 15, Jones in view of Agrawal and McCombe discloses The computer-implemented system of claim 13, wherein:
a center point of the minimum bounding sphere is an origin of the feature coordinate system; and
a radius of the minimum bounding sphere is a scaling factor that is used during the transforming.
(McCombe, ¶13 reciting “A bounding volume hierarchy can use shapes of a selected type, such as a sphere or an axis aligned bounding box.” Sawyer, ¶41 reciting “Each vector may be “normalized,” or divided by a “length” attribute, such as a length attribute l as derived using a Pythagorean norm: l=√{square root over (Σi=0.sup.na.sub.i.sup.2)}, where a.sub.i is attribute number i of the vector.” It is obvious to a POSITA a radius of the minimum bounding sphere is used as a scaling factor during the normalization, and a center point being an origin of the feature coordinate system. The suggestions/motivations would have been the same as that of Claim 15 rejections.)
Claim 3, has similar limitations as of Claim(s) 13, therefore it is rejected under the same rationale as Claim(s) 13.
Claim 5, has similar limitations as of Claim(s) 15, therefore it is rejected under the same rationale as Claim(s) 15.
Claim(s) 4 and 14 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jones in view of Agrawal and McCombe, and further in view of Yamada (US 20120020528 A1).
Regarding Claim 14, Jones in view of Agrawal and McCombe discloses The computer-implemented system of claim 13.
However, Jones in view of Agrawal and McCombe does not explicitly disclose wherein the acquiring the vertices comprises: for each primitive that is a circle, arc or curve, sampling a number of vertices at equal intervals.
Yamada teaches “An image processing apparatus” (ABST). Further, Yamada teaches acquiring the vertices of a circumferential vertex lines, and recites “the circumferential-vertex-line calculation unit 74 virtually sets a circle having a radius of 1.0 as represented by an image P35 shown in FIG. 9 and arranges C1' to C10' of the input closed curve on a circumference in equal intervals to thereby obtain the circumferential vertex lines.” (¶111).
It would have been obvious to one with ordinary skill, before the effective filing date of the claimed invention, to modify the system (taught by Jones in view of Agrawal and McCombe) to obtain vertices of a circle by sampling a number of vertices at equal intervals (taught by Yamada). The suggestions/motivations would have been “for providing computer generated experiences to users that make interaction with the computer systems more efficient and intuitive for a user.” (¶5), and to apply a known technique to a known device (method, or product) ready for improvement to yield predictable results.
Claim 4, has similar limitations as of Claim(s) 14, therefore it is rejected under the same rationale as Claim(s) 14.
Claim(s) 6 and 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jones in view of Agrawal and McCombe, and further in view of Huang, Zi, et al. ("Bounded coordinate system indexing for real-time video clip search." ACM Transactions on Information Systems (TOIS) 27.3 (2009): 1-33.)
Regarding Claim 16, Jones in view of Agrawal and McCombe discloses The computer-implemented system of claim 13.
However, Jones in view of Agrawal and McCombe does not explicitly disclose the axis is determined using principal component analysis (PCA); the PCA is based on an eigenvector of a covariance matrix of the vertex collection; and the PCA uses a vector as a reference that is created from a centroid of the vertex collection to an origin of the feature coordinate to decide an axis direction.
Huang teaches “each of its coordinate axes is identified by principal component analysis (PCA)” (page 17:3, last paragraph). Further, Huang teaches the PCA transformation, and recites “PCA [Jolliffe 2002] is a linear transformation that projects data to a new coordinate system such that the greatest variance by any projection of the data comes to lie on the first coordinate axis (called the first principal component, or PC), the second greatest variance on the second coordinate axis, and so on. Each PC is associated with an eigenvalue, which is a measure of the variance in the PC. The first PC is the eigenvector corresponding to the largest eigenvalue of the dataset’s covariance matrix C, the second PC corresponds to the eigenvector with the second largest eigenvalue, and so on. All principal components are orthogonal to each other and can be ranked based on their eigenvalues. PCA amounts to a “rotation” of the coordinate axes to identify the principal components such that a more “natural” coordinate system of the input dataset can be found.” (page 17: 9, 2nd paragraph)
It would have been obvious to one with ordinary skill, before the effective filing date of the claimed invention, to modify the system (taught by Jones in view of Agrawal and McCombe) use the PCA transformation to determine the axis of the feature coordinate (taught by Huang). The suggestions/motivations would have been faster search speed (page 17:4), and to apply a known technique to a known device (method, or product) ready for improvement to yield predictable results.
Claim 6, has similar limitations as of Claim(s) 16, therefore it is rejected under the same rationale as Claim(s) 16.
Claim(s) 7 and 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jones in view of Agrawal, and further in view of Solheim (US 20140129543 A1).
Regarding Claim 17, Jones in view of Agrawal discloses The computer-implemented system of claim 11, wherein the encoding comprises:
encoding the geometry data into a feature code; and
combining the encoded geometry data to generate the index code.
(Agrawal, ¶40 reciting “As each geometry object in the set of geometry objects 308 is received, indexing logic 302 utilizes geohashing logic 312 to compute a geohash (i.e. bit string) for the geometry object using a number of bits”)
Agrawal teaching the number of bits being a predetermined parameter chosen by a user. However, Jones in view of Agrawal does not explicitly disclose a 64-bit binary feature code.
Solheim teaches “indexing and searching features” (ABST). Further, Solheim recites “FIG. 6 highlights the fact that storing numbers as 64-bit numbers or some compressed numerical encoding is more compact than storing them as bytes (e.g., UTF-8 encoded, Unicode, etc.). By using the index generation algorithm to extract identified numbers, the number index supports range searches in addition to full-text searching functionality.” (¶44).
It would have been obvious to one with ordinary skill, before the effective filing date of the claimed invention, to modify the system (taught by Jones in view of Agrawal) to encode a 64-bit feature code (taught by Solheim). The suggestions/motivations would have been that storing numbers as 64-bit is “more compact” (¶44), and to apply a known technique to a known device (method, or product) ready for improvement to yield predictable results.
Claim 7, has similar limitations as of Claim(s) 17, therefore it is rejected under the same rationale as Claim(s) 17.
Allowable Subject Matter
Claims 9-10 and 19-20 would be allowable if rewritten to overcome the double patenting rejection(s), set forth in this Office action and to include all of the limitations of the base claim and any intervening claims.
Claim 19 is distinguished from the closest known prior art alone or in reasonable combination, in consideration of the claim and the base claims as a whole. Claim 20 depends on Claim 19, and therefore also contains allowable subject matter. Claims 9-10 are each similar in scope to claims 19-20, and therefore also contain allowable subject matter.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to YI WANG whose telephone number is (571)272-6022. The examiner can normally be reached 9am - 5pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jason Chan can be reached at (571)272-3022. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/YI WANG/Primary Examiner, Art Unit 2619