DETAILED ACTION
Notice of Pre-AIA or AIA Status
1. The present application, filed on or after March 16, 2013, is being examined under the first
inventor to file provisions of the AIA .
Information Disclosure Statement
2. The Information Disclosure Statement filed 03/20/2025 has been considered by examiner.
Claim Interpretation
3. The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
4. The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
5. This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitations are:
“a capture unit (generic placeholder) configured to … (functional language)” in claim 1.
“a reception unit (generic placeholder) configured to … (functional language)” in claim 1.
“a measurement setting generation unit (generic placeholder) configured to … (functional language)” in claim 1.
“an execution unit (generic placeholder) configured to … (functional language)” in claim 1.
“a code generation unit (generic placeholder) configured to … (functional language)” in claim 1.
Because these claim limitations are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, they are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. The corresponding structures can be found in figures 3 and 4, with corresponding descriptions found in paragraphs 0014, 0263 and 0034, of the specification.
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Objections
6. Claim 11 objected to because of the following informalities: “A program products” found in line one, is grammatically incorrect. Appropriate correction is required.
Claim Rejections - 35 USC § 103
7. 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.
8. 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.
9. Claims 1-6,8-9, and 11 are rejected under 35 U.S.C. 103 as being unpatentable over Sugita (US 20200033109 A1) in view of Shibata (JP7154084B2), Abe (CN 111077805 A) and Fuller (US 7013232 B2).
With respect to claim 1, Sugita teaches a program generation system comprising:
a capture unit configured to capture shape data representing a three-dimensional shape of a measurement object (“(7) In the workpiece measurement device according to (1) to (6), the image of the workpiece may be at least one of a two-dimensional image and a three-dimensional image of the workpiece and a CAD data image of the workpiece.” Paragraph 0014);
a screen generation unit configured to generate a measurement screen including an image of the measurement object based on the shape data captured by the capture unit and cause a display unit to display the measurement screen (“(1) A workpiece measurement device (for example, a workpiece measurement device 1 to be described below) according to the present invention includes a display unit (for example, a display unit 15 to be described below) configured to display an image of a workpiece…" paragraph 0008 and “(7) In the workpiece measurement device according to (1) to (6), the image of the workpiece may be at least one of a two-dimensional image and a three-dimensional image of the workpiece and a CAD data image of the workpiece.” Paragraph 0014);
a reception unit configured to receive, as designation information, designation of one or a plurality of geometric elements and designation of one or a plurality of measurement items related to the one or plurality of geometric elements on the measurement screen displayed on the display unit (“The UI display control unit 11a displays a user interface screen (UI screen) allowing a user to input and output various types of information in the measurement program generation processing. In an example, as described below, the UI display control unit 11a displays the input screen for accepting the instruction to acquire an image of a workpiece serving as a measurement object, displays the input screen for designating a measurement object in the acquired image of the workpiece, and displays the detection result of the designated measurement object.” Paragraph 0041 and figures 2-10);
a measurement setting generation unit configured to generate measurement setting data for calculating values of the one or plurality of measurement items in the measurement object based on the designation information received by the reception unit (figure 19 S4-S13);
an execution unit configured to calculate values of the one or plurality of measurement items in the measurement object based on the shape data captured by the capture unit and the measurement setting data generated by the measurement setting generation unit (figure 19 S17); and
Sugita does not teach an index display unit configured to cause an index indicating the received designation information to be displayed on the measurement screen displayed on the display unit in response to reception of the designation by the reception unit; nor a code generation unit configured to select, from a plurality of processing programs respectively corresponding to a plurality of processes for respectively specifying a plurality of predefined types of geometric elements and a plurality of processes for respectively calculating values of a plurality of predefined types of measurement items, a plurality of processing programs respectively corresponding to a process for specifying the one or plurality of designated geometric elements and a process for calculating values of the one or plurality of designated measurement items, and generate a text code including a plurality of pieces of processing program information indicating the plurality of selected processing programs and the designation information received by the reception unit.
Shibata teaches a program generation system comprising: a capture unit configured to capture shape data representing a three-dimensional shape of a measurement object (“FIG. 6 is a diagram for explaining an example of generating a plurality of three-dimensional shape data by imaging the measuring object S from a plurality of directions. For example, as shown in FIG. 6A, after the user adjusts the position and orientation of the measurement object S on the stage 140, the measurement light is used to capture an image of the measurement object S, whereby the first Three-dimensional shape data is generated. An example of a three-dimensional shape image obtained by this is shown in FIG. 6(d).” page 8 paragraph 5);
a screen generation unit configured to generate a measurement screen including an image of the measurement object based on the shape data captured by the capture unit and cause a display unit to display the measurement screen (“An image representing the three-dimensional shape of the measuring object S can be displayed based on the three-dimensional shape data. An image including the three-dimensional shape of the measurement object S displayed based on the three-dimensional shape data is hereinafter referred to as a three-dimensional shape image.” Page 8 paragraph 2);
a reception unit configured to receive, as designation information, designation of one or a plurality of geometric elements and designation of one or a plurality of measurement items related to the one or plurality of geometric elements on the measurement screen displayed on the display unit (“By visually recognizing the three-dimensional shape image, the user roughly grasps the shape of each part of the measurement object S and designates a measurement point on the three-dimensional shape image. The user can then specify the geometry that contains the measurement points (eg, points, lines, circles, surfaces, spheres, cylinders, cones, etc.) to specify the measurement points. The user can also specify measurement items for the specified geometric shape. A measurement item is a type of parameter to be measured at a measurement point of the measurement object S specified by the user, and includes distance, height, diameter, area, and the like.” Page 13 paragraph 4);
an index display unit configured to cause an index indicating the received designation information to be displayed on the measurement screen displayed on the display unit in response to reception of the designation by the reception unit (“In this example, the user sets the geometric element by designating the type of geometric element, the position of the element to be set on the apparatus coordinate system, and the name.” page 15 paragraph 4 and “Next, the user inputs a desired name for the element to be set in the name input field f01. A name may be automatically entered in the name input field f01 according to a predetermined method according to the type of the specified element.” Page 15 paragraph 5);
Shibata is analogous art in the same field of endeavor as the claimed invention. Shibata is directed towards an object measurement system (“A three-dimensional shape measuring apparatus according to an embodiment of the present invention will be described below with reference to the drawings. “ page 2 Description of Embodiments paragraph 1). A person of ordinary skill in the art would have found it obvious before the expected filing date of the claimed invention, to combine Sugita and Shibata by utilizing Shibata’s teachings of index labeling with the similar object measurement process of Sugita, with the expectation that doing so could provide clarity and improve readability of the user (“In this example, the user sets the geometric element by designating the type of geometric element, the position of the element to be set on the apparatus coordinate system, and the name.” page 15 paragraph 4 and “Next, the user inputs a desired name for the element to be set in the name input field f01. A name may be automatically entered in the name input field f01 according to a predetermined method according to the type of the specified element.” Page 15 paragraph 5).
Abe teaches a code generation unit configured to select, from a plurality of processing programs respectively corresponding to a plurality of processes (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6)
for respectively specifying a plurality of predefined types of geometric elements (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6, use of shape)
and a plurality of processes for respectively calculating values of a plurality of predefined types of measurement items (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6, measurement programs corresponding to shape),
a processing program respectively corresponding to a process for specifying the one or plurality of designated geometric elements and a process for calculating values of the one or plurality of designated measurement items (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6, measurement programs corresponding to shape), and
generate a text code including a plurality of pieces of processing program information indicating the selected processing program and the designation information received by the reception unit (“the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object” page 3 paragraph 6 )
Abe is analogous art in the same field of endeavor as the claimed invention. Abe is directed towards a measurement program device (“The invention claims a measuring program selection assisting device, and more particularly relates to enabling selection of selecting auxiliary device suitable for measuring program of the measuring program of the object to be measured by the measuring device.” Page 2 technical field). A person of ordinary skill in the art, before the effective filing date of the claimed invention, would have found it obvious to combine the system of Sugita and Shibata with Abe, by utilizing the combined system’s determinations, designations, and shape data as input into the shape data and measurement item based measurement program identification method of Abe, with the expectation that doing so could lead to more accurate measurements (“The purpose of the invention is to provide a measuring program can visually confirm whether the selected
program selection suitable for measuring object to be measured of the auxiliary device.” Page 3 paragraph 2).
Fuller teaches a code generation unit configured to select, from a plurality of processing programs respectively corresponding measurement task requirements (“FIG. 6B illustrates an embodiment of the method of FIG. 5 where the server 103 generates software programs for the task. As shown in FIG. 6B, the server 103 may determine (e.g., generate) software programs for the task. As shown in FIGS. 8 and 9, in one embodiment in step 602 the server 103 may analyze the received information (requirements) and may determine one or more software programs based on the requirements. For example, in step 612 of FIG. 8 the server 103 may retrieve preexisting software program(s) from a memory medium or database based on the requirements. In step 614 of FIG. 9 the server 103 may automatically or programmatically generate software program(s) (e.g., a graphical program) based on the requirements.” Col 31 (lines 64-67) -32 (lines 1-9)), a plurality of processing programs respectively corresponding to measurement task requirements (“FIG. 6B illustrates an embodiment of the method of FIG. 5 where the server 103 generates software programs for the task. As shown in FIG. 6B, the server 103 may determine (e.g., generate) software programs for the task. As shown in FIGS. 8 and 9, in one embodiment in step 602 the server 103 may analyze the received information (requirements) and may determine one or more software programs based on the requirements. For example, in step 612 of FIG. 8 the server 103 may retrieve preexisting software program(s) from a memory medium or database based on the requirements. In step 614 of FIG. 9 the server 103 may automatically or programmatically generate software program(s) (e.g., a graphical program) based on the requirements.” Col 31 (lines 64-67) -32 (lines 1-9)), and generate a text code including a plurality of pieces of processing program information indicating the plurality of selected processing programs and the designation information received by the reception unit (“A hardware configuration program may be generated in various ways. For example, the server may programmatically generate a program (e.g., a text-based program or a graphical program) in response to the requirements…”col 8 lines 12-15 ).
Fuller is analogous art in the same field of endeavor as the claimed invention. Fuller is directed towards measurement and software (“The present invention relates to the fields of system design, computer software, and electronic commerce, and more particularly to online specification, distribution and deployment of configuration information and/or programs to perform desired tasks. Additionally, applications of the invention to measurement and automation applications are described.” Col 1 lines 27-33). A person of ordinary skill in the art before the effective filing dates to combine the system of Sugita, Shibata, and Abe with Fuller, by utilizing the user defined designated areas, contextual measurement setting data, and shape data as measurement task requirements for Fuller’s measurement program generation processes, with the expectation that doing so would lead to an improved measurement system wherein different programs can be combined improving measurement program selection, without requiring advances in user expertise (“If the user requires a particular hardware configuration to perform a desired task, the hardware must generally be configured by the user, which may require expertise not readily available.” Col 1 lines 44-47 and “Therefore, an improved electronic commerce model is desired for specifying, creating, distributing and deploying software programs and/or data, and hardware configuration programs. Additionally, improved systems and methods are desired for specifying and providing hardware and/or software and data to a user for use in a system, such as a measurement system.” Col 1 55-61 and “The system may include a client computer system and one or more devices coupled to the client computer system. The client computer system may couple to a server, also referred to as a configuration server, over a network. The client computer system may be operated by a user, and the server may be operated by a vendor to support online specification, creation, and deployment of task-specific configuration information and/or programs, based on user input.” Col 3 lines 16-22)
With respect to claim 2, Sugita, Shibata, Fuller, and Abe teach the code generation support device according to claim 1. Fuller teaches it further comprising a library holding unit configured to hold one or a plurality of libraries including the plurality of processing programs (“For example, in step 612 of FIG. 8 the server 103 may retrieve preexisting software program(s) from a memory medium or database based on the requirements” col 32 lines 4-6), wherein each of the plurality of pieces of processing program information includes information for calling the processing program from the one or plurality of libraries held in the library holding unit (“Where the server 103 determines or generates one or more software program(s), the software program(s) may include executable code which is executable by the measurement system to perform the measurement task. The software program(s) may also include source code which is one or more of: 1) compilable and executable, or 2) interpretable, by the measurement system to perform the measurement task.” Col 32 lines 13-20).
With respect to claim 3, Sugita, Shibata, Abe and Fuller teach the code generation support device according to claim 1. Abe teaches it further comprising an output unit configured to output the text code generated by the code generation unit (“the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object” page 3 paragraph 6 ) and Fuller teaches the plurality of processing programs indicated by the plurality of pieces of processing program information included in the text code in association with each other (“Where the server 103 determines or generates one or more software program(s), the software program(s) may include executable code which is executable by the measurement system to perform the measurement task. The software program(s) may also include source code which is one or more of: 1) compilable and executable, or 2) interpretable, by the measurement system to perform the measurement task.” Col 32 lines 13-20 and “As used herein, the term "program" is intended to include: 1) a software program, or 2) a hardware configuration program, useable for configuring a programmable hardware element or reconfigurable logic. A "software program" may be any type of code and/or data that may be stored in a memory medium and executed by a processor. Exemplary software programs include programs written in text-based programming languages, such as C, C++, Pascal, FORTRAN, Cobol, Java, etc.; programs written in assembly language;” col 13 line 9- 18).
With respect to claim 4, Sugita, Shibata, Abe and Fuller teach the code generation support device according to claim 3, Abe further teaches wherein the screen generation unit causes the display unit to display the text code (“the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object” page 3 paragraph 6 ). Fuller teaches the code being a character string indicating a method of using the text code and the plurality of processing programs to be output when the output unit outputs the text code and the plurality of processing programs (“Additionally, as mentioned above, one or more software products, e.g., software programs and/or data, which is stored, installed, or associated, with respective devices may also be represented in the configuration diagram display.” Col 43 lines 19-22).
With respect to claim 5, Sugita, Shibata, Abe and Fuller teach the code generation support device according to claim 3, Shibata teaches it further comprising a reference data holding unit configured to hold, as reference shape data, shape data corresponding to an image of the measurement object to be displayed on the measurement screen when the reception unit receives the designation information (“Next, the element receiving unit 214 receives designation of a reference element using the designated geometric element (step S14). Therefore, the identifying unit 213 in FIG. 34 identifies the geometric reference for shape measurement of the measurement object S based on the reference elements received by the element receiving unit 214 (step S15). In this case, information indicative of the identified geometric criteria is stored in storage device 240 .” page 22 paragraph 3), and Fuller teaches wherein the output unit outputs the text code and the plurality of processing programs in association with the reference shape data used to generate the text code (“Where the server 103 determines or generates one or more software program(s), the software program(s) may include executable code which is executable by the measurement system to perform the measurement task. The software program(s) may also include source code which is one or more of: 1) compilable and executable, or 2) interpretable, by the measurement system to perform the measurement task.” Col 32 lines 13-20 and “As used herein, the term "program" is intended to include: 1) a software program, or 2) a hardware configuration program, useable for configuring a programmable hardware element or reconfigurable logic. A "software program" may be any type of code and/or data that may be stored in a memory medium and executed by a processor. Exemplary software programs include programs written in text-based programming languages, such as C, C++, Pascal, FORTRAN, Cobol, Java, etc.; programs written in assembly language;” col 13 line 9- 18).
With respect to claim 6, Sugita, Shibata, Abe and Fuller teach the code generation support device according to claim 5. Abe further teaches wherein the reception unit can receive, as correction information, designation of a correction method for correcting position information of the shape data based on the reference shape data (“In the above measurement program selection assisting device, the detecting unit can obtain the position and orientation of the object, and the measurement program database may be the measuring arrangement the measuring program of the information is stored in association with the said object, said measuring arrangement information indicating suitable to measure the position and orientation of the object of the object through the measuring program. said measuring program selection assisting device may further include measuring program correction unit, said measuring program correction unit for calculating error position and orientation of the object in the detection unit obtained by the relative placement information to appointed measuring program specified by the unit corresponding to the program with the measuring, and the way that coordinate offset specified in the measuring program of the error to correct the coordinates. With this configuration, the position and orientation of the object measuring program detecting unit can obtain the position and orientation of the object, and can correct the position and orientation of the object obtained by the corresponding with the specified with the object defined in between the deviation (error).” Page 3 second to last paragraph), and in a case where the reception unit receives the correction information, the code generation unit selects, from a plurality of processing programs respectively corresponding to a plurality of processes for respectively executing a plurality of predefined types of correction methods (“measuring program correction unit 80 performs the correction processing for the coordinate offset measurement defined in the program. storing the measurement program in the database 10, the measurement of the following arrangement measuring program of the information in association with the object W, the measuring arrangement information indication adapted to the position and orientation of the object of the measurement program for measuring object W W.” page 7 paragraph 3), a processing program corresponding to a process for executing the correction method designated (“measuring program correction unit 80 performs the correction processing for the coordinate offset measurement defined in the program. storing the measurement program in the database 10, the measurement of the following arrangement measuring program of the information in association with the object W, the measuring arrangement information indication adapted to the position and orientation of the object of the measurement program for measuring object W W.” page 7 paragraph 3), and generates a text code including processing program information indicating the selected processing program and the correction information received by the reception unit (see translated figure 6
PNG
media_image1.png
780
811
media_image1.png
Greyscale
).
With respect to claim 8, Sugita, Shibata, Abe, and Fuller teach the code generation support device according to claim 1. Abe further teaches wherein the reception unit can receive, as data capture information, designation of a condition for capturing the shape data by the capture unit, and
in a case where the reception unit receives the data capture information (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6), the code generation unit generates the text code to further include the received data capture information (“the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object” page 3 paragraph 6 ).
With respect to claim 9, Sugita, Shibata, Abe, and Fuller teach the code generation support device according to claim 1, Shibata teaches wherein the reception unit can receive, as designation of the one or each of the plurality of geometric elements (“By visually recognizing the three-dimensional shape image, the user roughly grasps the shape of each part of the measurement object S and designates a measurement point on the three-dimensional shape image. The user can then specify the geometry that contains the measurement points (eg, points, lines, circles, surfaces, spheres, cylinders, cones, etc.) to specify the measurement points.” Page 13 paragraph 2), designation for specifying a type of a shape of the one or plurality of geometric elements (“Furthermore, the user designates the position of the element on the three-dimensional shape image SI displayed in the main display area ma. For example, the user designates a plurality of portions on the three-dimensional shape image SI corresponding to three or more portions of the measurement object S by a single-click operation while a plane is designated as the element type.” Page 15 paragraph 6) and designation for specifying a position of the one or plurality of geometric elements (“Furthermore, the user designates the position of the element on the three-dimensional shape image SI displayed in the main display area ma. For example, the user designates a plurality of portions on the three-dimensional shape image SI corresponding to three or more portions of the measurement object S by a single-click operation while a plane is designated as the element type.” Page 15 paragraph 6), and can receive, as designation of the one or plurality of measurement items (“The user can also specify measurement items for the specified geometric shape. A measurement item is a type of parameter to be measured at a measurement point of the measurement object S specified by the user, and includes distance, height, diameter, area, and the like.” Page 13 paragraph 2), designation for specifying a type of the one or plurality of measurement items (“The user can also specify measurement items for the specified geometric shape. A measurement item is a type of parameter to be measured at a measurement point of the measurement object S specified by the user, and includes distance, height, diameter, area, and the like.” Page 13 paragraph 2).
With respect to claim 11, Sugita, Shibata, Abe, and Fuller teach all limitations in consideration of claim 1, due to the substantial similarities of claim 1 and claim 11, with claim 11 being directed toward a program product coupled to a non-transitory computer-readable medium, executable by a processor, that causes the processor to perform various functions described in claim 1. Additionally, Sugita teaches a program products comprising a non-transitory computer-readable medium having a code generation support program executable by a processing device (“In the case where all or some of the functions of the workpiece measurement device 1 are configured with software, a computer is configured with a storage unit such as the hard disk and the ROM storing the programs writing all or some of the operations of the workpiece measurement device 1, the DRAM storing data required for calculation, CPU, and the buses connecting respective devices, and in the computer the DRAM stores the information required for calculation, and the CPU makes the programs operate, thereby enabling to realize the functions.” Paragraph 0123).
10. Claims 7 is rejected under 35 U.S.C. 103 as being unpatentable over Sugita, Shibata, Abe, and Fuller as applied to claim 6 above, and further in view of Sawaragi (US 20180120087 A1).
With respect to claim 7, Sugita, Shibata, Abe, and Fuller teach the code generation support device according to claim 6. Abe teaches processes corresponding to geometric elements (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6, measurement programs corresponding to shape), measurement items (“In the above selection assisting device measuring program, the measuring program database can be stored in association with the measuring program of the three dimensional shape of the object of the object. said measuring program selection assisting device may further include: detecting unit for identifying the shape of the object, and a measuring program specifying unit for by program database inquiry to the measurement of shape of the object identified by the said detecting unit corresponding to the specified measurement program of the object. the display control unit can send the measurement program specified measurement program specified by the unit arranged to measure the selected program. With this configuration, may be based on the shape of the object identified by the detecting unit specifies the measurement program corresponding to the object.” Page 3 paragraph 6, measurement programs corresponding to shape), and correction methods (“measuring program correction unit 80 performs the correction processing for the coordinate offset measurement defined in the program. storing the measurement program in the database 10, the measurement of the following arrangement measuring program of the information in association with the object W, the measuring arrangement information indication adapted to the position and orientation of the object of the measurement program for measuring object W W.” page 7 paragraph 3) and Fuller teaches generating a text code containing the plurality of pieces of processing program information (“FIG. 6B illustrates an embodiment of the method of FIG. 5 where the server 103 generates software programs for the task. As shown in FIG. 6B, the server 103 may determine (e.g., generate) software programs for the task. As shown in FIGS. 8 and 9, in one embodiment in step 602 the server 103 may analyze the received information (requirements) and may determine one or more software programs based on the requirements. For example, in step 612 of FIG. 8 the server 103 may retrieve preexisting software program(s) from a memory medium or database based on the requirements. In step 614 of FIG. 9 the server 103 may automatically or programmatically generate software program(s) (e.g., a graphical program) based on the requirements.” Col 31 (lines 64-67) -32 (lines 1-9) and “A hardware configuration program may be generated in various ways. For example, the server may programmatically generate a program (e.g., a text-based program or a graphical program) in response to the requirements…”col 8 lines 12-15), however neither Sugita, Shibata, Abe, nor Fuller teach where this involves priority. Sawaragi teaches wherein priority is predefined for a plurality of processing programs (“Based on the priorities assigned to the processing to be executed, the entire processing is thus divided into processing tasks to be executed within each motion control cycle (including primary cyclic tasks) and processing tasks that may be executed across multiple motion control cycles (including cyclic tasks and event tasks). The scheduler program 212 manages, for example, the execution order of such processing tasks. More specifically, the scheduler program 212 executes the programs in descending order of the assigned priorities within each motion control cycle.” Paragraph 0073).
Sawaragi is analogous art in the same field of endeavor as the claimed invention. Sawaragi is directed towards a system for measuring object shape (“The disclosure relates to a control system involving a control application for measuring the shape of an object, and a control method and a control program for the control system.” Paragraph 0002). A person of ordinary skill in the art before the effective filing date of the claimed invention would have found it obvious to combine the teachings of Sugita, Shibata, Abe, Fuller, and Sawaragi by utilizing Sawaragi’s task priority teachings in combination with the process combining teachings of Fuller, with the expectation that doing so would lead to more efficient measurement process execution (“In the CPU 13 according to one or more embodiments, a fixed execution cycle (motion control cycle) appropriate for the motion calculation program 234 is used as a common cycle for the entire processing. Completing the entire processing within one motion control cycle is thus difficult. Based on the priorities assigned to the processing to be executed, the entire processing is thus divided into processing tasks to be executed within each motion control cycle (including primary cyclic tasks) and processing tasks that may be executed across multiple motion control cycles (including cyclic tasks and event tasks).” Paragraph 0073).
11. Claim 10 is rejected under 35 U.S.C. 103 as being unpatentable over Sugita, Shibata, Abe, and Fuller as applied to claim 1 above, and further in view of Owen (US 10223076 B1).
With respect to claim 10, Sugita, Shibata, Abe, and Fuller teach the code generation support device according to claim 1, but do not explicitly teach the further limitations. Owen teaches wherein when receiving the designation of the one or plurality of geometric elements and the designation of the one or plurality of measurement items, the reception unit is configured to receive a character string related to each designation (“As shown in FIG. 2Q, and by reference number 284, a user may manipulate a data set 286 by filtering the data set 286. For example, the user may input an instruction to filter the data set 286 to show data corresponding to Height>65. This manipulation may result in a modified data set 288 filtered according to the instruction. The TCE 320 may generate code 290 that represents a modification to the data set 286 such that executing the code 290, with code for generating the data set 286, generates the modified data set 288. For example, the code 290 is generated as a first line of code rows=t.Height>65 and a second line of code t=t(rows, t.Properties.VariableNames).” col 24 lines 23-34), and in a case where, together with reception of one designation, the character string related to the one designation is received, the code generation unit includes the received character string in the text code as information indicating contents of the one designation (“As shown in FIG. 2Q, and by reference number 284, a user may manipulate a data set 286 by filtering the data set 286. For example, the user may input an instruction to filter the data set 286 to show data corresponding to Height>65. This manipulation may result in a modified data set 288 filtered according to the instruction. The TCE 320 may generate code 290 that represents a modification to the data set 286 such that executing the code 290, with code for generating the data set 286, generates the modified data set 288. For example, the code 290 is generated as a first line of code rows=t.Height>65 and a second line of code t=t(rows, t.Properties.VariableNames).” col 24 lines 23-34).
Owen is analogous art in the same field of endeavor as the claimed invention. Own is directed towards generating and displaying program code (“A user, such as a computer programmer, may be working with data, objects, and/or program code on a device. The device may provide the data and/or the objects for display together with program code associated with the data and/or the objects (e.g., program code that generates, operates on, etc. the data and/or the objects).” Col 1 lines 37-42). A person of ordinary skill in the art would have found it obvious to combine Sugita, Shibata, Abe, and Fuller, with Owen by utilizing Owen’s teaching of displaying and updating object properties and code with user text, inside the combined system’s designating and outputting scheme, with the expectation that doing so would make it easier for a user to more fully interact with the measurement apparatus (“Implementations described herein enable a device to provide data, objects, and/or program code from a program file, such as a file that includes program code, for visualization, manipulation, and/or execution. In addition, the device may provide the data, objects, and/or program code for visualization, manipulation, and/or execution using the same TCE, thereby reducing or eliminating the need for separate TCEs for visualizing, manipulating, and/or executing data, an object, and/or program code. Further, the device may persist manipulations to the data and/or the objects by automatically generating program code using a code generator and storing the generated code, thereby reducing or eliminating the need for a user to handwrite program code.” Col 1 (lines 58-67) – col 2 (lines 1-3)).
Conclusion
12. The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
Ravish (US 7702417 B2) directed to generating code based on drawings
Murakami (US 20190139247 A1) uses shape data, user designations, and measurement items to perform measurement operations
13. Any inquiry concerning this communication or earlier communications from the examiner should be directed to REBECCA C WILLIAMS whose telephone number is (571)272-7074. The examiner can normally be reached M-F 7:30am - 4:00pm.
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, Andrew W Bee can be reached at (571)270-5183. 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.
/REBECCA COLETTE WILLIAMS/Examiner, Art Unit 2677
/ANDREW W BEE/Supervisory Patent Examiner, Art Unit 2677