T 1721/20 (Designing a geometrical three-dimensional modeled object/DASSAULT SYSTÈMES) 26-03-2024
Download and more information:
Method for designing a geometrical three-dimensional modeled object
Inventive step - main request (no)
Inventive step - first auxiliary request (yes)
Amendments - first auxiliary request
Amendments - added subject-matter (no)
I. The appellant (applicant) appealed against the examining division's decision refusing European patent application No. 11305564.4.
II. The documents cited in the contested decision included:
D1:|Takeo Igarashi et al: "Teddy: A Sketching Interface for 3D Freeform Design", SIGGRAPH 99, Los Angeles, CA, USA, 1999, pages 409 to 416|
III. The examining division decided that the subject-matter of claim 1 of the main request did not fulfil the requirements of Article 56 EPC and that claim 1 of the first to third auxiliary requests did not fulfil the requirements of Article 123(2) EPC. The fourth and fifth auxiliary requests were not admitted into the proceedings (Rules 137(3) and 116(2) EPC).
IV. In its statement of grounds of appeal, the appellant requested that the contested decision be set aside and that a patent be granted on the basis of the main request or on the basis of one of the first to third auxiliary requests that had been the subject of the contested decision and were resubmitted with the statement of grounds of appeal, or on the basis of a new fourth auxiliary request submitted with the statement of grounds of appeal.
V. In a communication accompanying a summons to oral proceedings, the board informed the appellant of its preliminary opinion that claim 1 of the main request and of the first to third auxiliary requests lacked an inventive step (Article 56 EPC), that the amended features of claim 1 of the first to third auxiliary requests concerning the computation by a GPU appeared to fulfil the requirements of Article 123(2) EPC, and that the board was inclined not to admit the fourth auxiliary request into the proceedings under Article 12(4) RPBA 2020.
VI. In a letter dated 16 November 2023, the appellant resubmitted the main request and the first and second auxiliary requests and filed clerically amended third and fourth auxiliary requests as well as new fifth to ninth auxiliary requests. In a further letter dated 4 December 2023, the appellant requested that it be allowed to show the following video (showing the practical use of an implementation of the claimed invention) during the oral proceedings, to support and illustrate the arguments provided in its written submissions filed on 16 November 2023:
https://www.youtube.com/watch?v=66FoxykeT0w.
The board informed the appellant that it would be given the opportunity to display the video under the technical conditions available (see Communication of the Registry of 8 December 2023)
and the corresponding video was shown during the oral proceedings.
VII. Oral proceedings were held as scheduled. During the oral proceedings, the board cited the following prior-art document, which the appellant had introduced into the proceedings with the statement of grounds of appeal to demonstrate that mesh generators could be carried out by a GPU:
D10:|T. Boubekeur, C. Schlick: "Generic Mesh Refinement on GPU", Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Graphics Hardware, July 2005, Los Angeles, United States, HAL Id: inria-00260838, pages 99 to 104|
At the end of the oral proceedings, the Chair announced the board's decision.
VIII. The appellant's final requests are that the decision under appeal be set aside and that a patent be granted on the basis of the main request or on the basis of one of the first to ninth auxiliary requests as submitted with the letter dated 16 November 2023, the main request and first and second auxiliary requests having been the subject of the contested decision.
IX. Claim 1 of the main request reads as follows (feature breakdown added by the board):
A |"Computer-implemented method for designing a three-dimensional modeled object that is an object without properties defined by mathematical equations, the three-dimensional object being created on a support by a stroke, the support being a surface in a three-dimensional scene, the method comprising: |
B |- user-interacting (S100) with a screen to activate pixels of the screen;- defining a stroke (S110) corresponding to the activated pixels of the screen; |
C |- discretizing the stroke (S120) into a set of points; |
C1|- projecting the set of points (S130) onto atleast one support in the three-dimensional scene; |
D |- constructing the three-dimensional modeled object (S140) from the projected set of points and the said at least one support |
D1|by storing together in a file the positions of the projected set of points and data concerning the support; |
E |- constructing (S150) a visualization of the constructed three-dimensional modeledobject by: |
E1|- computing, for each point of the projected set of points, at least twooffset points (S153), an offset point being a point positioned on said at least one support and spaced from said each point; and|
E2|- computing a surface (S155) delineated by the computed at least two offset points, the surface comprising the projected set of points; |
F |- displaying the constructed three-dimensional modeled object; |
G |- manipulating by the user the at least one support in the three-dimensional scene to create a second support that is a new support in the three-dimensional scene, another visualization of the three-dimensional modeled object being displayed in accordance with a new viewpoint; and |
H |- repeating the steps of the method with the second support in the three-dimensional scene." |
X. Claim 1 of the first auxiliary request differs from claim 1 of the main request in that:
- the wording "coordinates of the support in the 3D scene" has replaced the wording "data concerning the support" in feature D1 above;
- the file (storing the position of the projected set of points and coordinates of the support in the 3D scene) is a CAD file;
- the computation of steps E1 and E2 is performed by a graphical processor unit (GPU), with some minor editorial amendments in terms of the language in steps E, E1 and E2.
XI. In view of the outcome of the appeal, the wording of the claims of the second to ninth auxiliary requests is not relevant for the decision.
The application
1. The application relates to a user-interactive method, system and program for designing a geometrical three-dimensional modelled object.
Main request - lack of inventive step
2. In the contested decision, the examining division argued that inputting a stroke on a support (such as a screen plane) was known. Neither the visualisation nor the repetition of the method steps with a user-modified support achieved a further technical effect beyond the normal operation of a known 3D design system with stroke(s) input, which could be considered to be the closest prior art. Document D1 was an example of such a system.
3. According to the analysis of the board, document D1 discloses a computer-implemented method using a sketching interface called "Teddy", in which a user draws 2D "freeform" strokes, interactively specifying the silhouette of an object, and the system automatically constructs a 3D polygonal surface model based on these strokes (see the section entitled "1 Introduction").
4. According to document D1, "Teddy" is designed for the rapid construction of approximate models, not for the careful editing of precise models. It allows real-time interactive rendering using Java on computers without dedicated 3D rendering hardware (see section "1 Introduction").
5. The geometric representation used in the method of document D1 is a standard polygonal mesh to allow the use of numerous software resources for post-manipulation and rendering (see section "1 Introduction"). The model can thus be modified by bending, elongating or distorting. Contrary to the appellant's argument that D1 did not suggest changing the viewpoint, the 3D model can also be viewed by the user from a different direction and rotated (see the sections entitled "4.1 Overview" and "4.7 Transformation"; Figures 3(a) to 3(d) reproduced below; and Figure 11).
FORMULA/TABLE/GRAPHIC
6. In the method of document D1, an extrusion may be performed. An extrusion is a two-stroke operation constituted by a closed stroke on the surface and a stroke depicting the silhouette of the extruded surface. When the user draws a closed stroke on the object surface, the system highlights the corresponding surface line in red, indicating the initiation of the "extrusion mode". The user then rotates the model to bring the red surface line sideways and draws a silhouette line to extrude the surface. This is basically a sweep operation that constructs the 3D shape by moving the closed surface line along the skeleton of the silhouette (see section "4.4 Extrusion"; and Figures 3(i) to 3(k) reproduced below). In this extrusion operation, the steps of the method are repeated using a different viewpoint.
FORMULA/TABLE/GRAPHIC
Changing the viewpoint or extruding corresponds implicitly to a change of the support in the language of the claim and the present application.
7. Document D1 therefore discloses features A, B, E, F, G, and at least implicitly feature H.
8. In D1, every input stroke is resampled to form a smooth polyline with uniform edge length before further processing (see section "5. Algorithm"). Therefore, document D1 discloses feature C.
9. The distinguishing features of claim 1 of the main request over document D1 therefore correspond to features C1, D, D1, E1 and E2.
10. These features correspond partly to the steps of Figures 6 to 9 of the application, which are reproduced below, with the surface illustrated in Figure 9 not completely defined by features E1 and E2 (since, for example, not all the edges connecting the projected set of points and the offset points illustrated in Figure 9 are defined by feature E2):
FORMULA/TABLE/GRAPHIC
11. The board is of the opinion that these distinguishing features alone do not contribute to a technical effect which would be achieved in a non-obvious way: both the projection of the set of points onto at least one support in the 3D scene of distinguishing feature C1, and the computation of the at least two offset points and of the surface delineated by the computed at least two offset points (and comprising the projected set of points) of distinguishing features E1 and E2, are mathematical steps. The storing, in a file, of the positions of the projected set of points and data concerning the support of feature D1 does not produce any technical effect other than some information being stored in a file. The construction of the 3D modelled object is said to be achieved by the storage in the file (see distinguishing features D and D1) and the construction of the visualisation of the constructed 3D modelled object is said to be achieved by the computation of the surface (see distinguishing features E1 and E2), with no further technical details given with regard to this construction. Therefore, features D, D1, E1 and E2 do not produce any technical effect which would be achieved in a non-obvious way either.
11.1 The appellant argued that the distinguishing features interacted together and with the other method steps such that a new type of human-machine design interaction process was provided, having the ergonomic advantages of free-hand design, and the system's responsiveness to the interactions was improved to provide fast visual feedback to the user during the design process of a 3D modelled object.
11.2 In its statement of grounds of appeal, the appellant stated that the objective technical problem was "how to introduce a new and ergonomic type of user-machine interaction for designing in a 3D scene a 3D modelled object that was an object without properties defined by mathematical equations", i.e. different from the use of NURBS as mathematical information in computer-aided design (CAD).
11.3 However, the board is of the opinion that the claimed invention does not have the aforementioned advantages over the method of document D1, which already provides the same type of ergonomic advantages of free-hand design of three-dimensional models with fast visual feedback during the design process.
11.4 The board further notes that in the method of claim 1 the interactions of the user with the computer are:
- a user-interaction with the screen to activate pixels of the screen (see feature B)
- a manipulation by the user of the at least one support in the 3D scene (see feature G)
However, claim 1 does not define how the user interacts with the screen in feature B nor how the user manipulates the at least one support, or what kind of manipulation is performed in feature G.
Therefore, it is not apparent to the board that a "new and ergonomic type of user-machine interaction" is achieved by the subject-matter of claim 1 over the method of document D1.
11.5 The appellant argued that distinguishing feature D1 required storing data relative to pixels activated by the stroke. Feature D1 resulted in a reduced amount of computing resources needed for the construction of the 3D modelled object. Moreover, since computing resources did not limit the fluidity and flexibility of the user-machine design interaction, the ergonomics of the new user-machine interaction provided by the claimed invention was improved.
11.6 The board is not convinced that the amount of computing resources needed for the construction of the 3D modelled object is reduced compared with the system of document D1, for example. It is not apparent to the board in which sense the "pixel-based" construction of the 3D modelled object would be more "economical", or how this would contribute to reducing the amount of computing resources needed for computing the visualisation when compared with document D1.
11.7 The appellant argued that features E1 and E2 achieved the effect of providing visual feedback to the user during the design process while preserving computing resources. The construction of the visualisation used the stored data relative to the activated pixels to compute the offset points (reference was made to step S153 of Figure 1) and then a tessellation of the surface delineated by these offset points (reference was made to step S155 of Figure 1). This pixel-based construction further reduced the amount of computing resources needed for computing the visualisation in comparison to (the manipulation of) geometric modelled objects and a GPU could be used for constructing the visualisation (step S150), which again was enabled by the storing in step S140. As a result, the speed and fluidity, and thus the ergonomics, of the user-machine design interaction was improved, as lag or delay was reduced.
11.8 The board does not find the appellant's arguments convincing. Claim 1 does not specify that a GPU is used in the construction of the visualisation. Document D1 also provides visual feedback to the user during the design process (see, for example, Figure 3). The board further notes that claim 1 does not define a tessellation. The subject-matter of claim 1 merely comprises a step of "computing a surface delineated by the computed at least two offset points, the surface comprising the projected set of points" (see feature E2). This computation of the surface is not defined further in claim 1. The board is not convinced that the computation of the "surface delineated by the computed at least two offset points, the surface comprising the projected set of points" requires less computing resources than the system of document D1.
Therefore, it is not apparent from the subject-matter of claim 1 that lag or delay is reduced as compared to the method of document D1.
11.9 In the board's opinion, feature D1 is an obvious implementation option. Features C1, D, E1 and E2 result in the creation of a model with a different form, or a different presentation, than that of document D1. However, the choice of this form is not technical in the context of the invention and features E1 and E2 correspond to the non-technical geometric description of the intended form.
11.10 As stated by the examining division, the effect achieved by distinguishing features C1, D, E1 and E2 is to construct a different visualisation or presentation, for example with construction's steps towards a "ribbon-like" presentation (instead of a wireframe, for example; see Figure 9 of the application), which is not a technical effect.
11.11 Therefore, claim 1 of the main request lacks an inventive step (Article 56 EPC).
First auxiliary request
12. Claim 1 of the first auxiliary request differs from claim 1 of the main request in that "coordinates of the support in the 3D scene" are stored (instead of "data concerning the support") and in that it specifies in feature D1 that the position of the projected set of points and coordinates of the support in the 3D scene are stored in a CAD file, and in that steps E1 and E2 of computing offset points and a surface are performed by a GPU.
First auxiliary request - Articles 84 and 123(2) EPC
13. The decision under appeal did not raise any objections under Article 84 EPC. The board is satisfied that the claims of the first auxiliary request are clear and fulfil the requirements of Article 84 EPC.
14. The examining division objected that there was no direct and unambiguous support in the application as originally filed for steps (S153) and (S155), i.e. that the offset and surface computations are to be carried out on a GPU, contrary to the requirements of Article 123(2) EPC.
14.1 The examining division stated that, according to page 17, line 5, of the description as originally filed, the surface could be generated by a "mesh generator, as known in the art". There was no direct and unambiguous support for this "mesh generator, as known in the art" being carried out on a GPU. According to page 17, first (full) paragraph, only the result of these steps, a 2D tessellated surface, were rendered using the shaders of the GPU in step (S156). The passage on page 14, lines 21 to 28, related to step S156 as disclosed on page 17, first (full) paragraph.
14.2 The appellant referred to the passage on page 14, lines 21 to 28, of the application, which reads as follows:
"At this step of the method, the 3D modeled object is constructed, which means that data representing the object can be exploited by a system, e.g. a CAD system.
Therefore, a visualization of the three-dimensional modeled object can be constructed (step S150) for displaying the 3D modeled object designed. Constructing a visualization means that a graphical representation of the 3D modeled object is computed. Especially, the constructed visualisation is pixel-based, which involves that the representation [sic] 3D modeled object is only computed by the graphical processor unit [note by the board: "GPU"], thus preserving computing resources of the CPU and memory" (emphasis added by the board).
14.3 The board notes that step S150 of constructing a visualisation or "representation" of the 3D modeled object in Figure 1 comprises, inter alia, step S153, i.e "determining at least two offset points for each points", and the step S155, i.e. "computing a tessellated surface delineated by the projected offset points".
14.4 Therefore, contrary to the examining division's decision, the board is of the opinion that the amended features of claim 1 of the first auxiliary request, which specify the computation by a GPU, do fulfil the requirements of Article 123(2) EPC.
First auxiliary request - inventive step
14.5 Document D1 does not disclose the features introduced by claim 1 of the first auxiliary request. In particular, it does not disclose using a GPU in any phase of the generation and visualisation of the object model.
14.6 With respect to the first auxiliary request, the appellant maintained essentially the same arguments it had made with respect to the main request (see points 11.1 and 11.2 above). The distinguishing features contributed to preserving computing resources of the CPU and memory resources. The enhanced responsiveness of the system improved the ergonomics in the context of the sketch-based design of claim 1, by providing immediate (real-time) visual feedback to the user.
14.7 According to the appellant, the storing of the data defining the modeled object (in this case the positions of the projected points and the coordinates of the support in the 3D scene) constructed the modelled object, which was thus defined by, and was formed by, this stored data. The construction of the modelled object actually consisted in the storing in step S140 of claim 1. The construction of the 3D modelled object required a reduced usage of computer resources.
14.7.1 The appellant argued that, in claim 1, pixel-based data defining the 3D modelled object was stored in step S140, and this data was thereby available for the GPU to perform the visualisation construction in step S150; there was no such technical consideration in document D1. In the invention, only this pixel-based data was stored, which was "cheap" in terms of memory usage.
14.7.2 The board is of the opinion that it is obvious to store in a CAD file coordinates of the support in the 3D scene as the data concerning the support.
14.8 As the appellant argued, document D1 states that while its mesh construction process takes place in real time, it causes a short pause (or "lag" in the wording of the appellant) of a few seconds when the model becomes complicated (see D1, section 6). The appellant noted that nothing in the section of document D1 entitled "Future Work" (see section 8 of D1) hinted at using the GPU to perform some parts of the construction or to change its mathematics. The construction of D1 used Delaunay triangulation, which was different from the construction of claim 1. In document D1, the steps of finding the chordal axis could not be performed by a GPU since that involved finding centroid points by solving a system of equations using inversion of matrices. It was not obvious to use a GPU to perform this type of computation.
14.9 The appellant argued that the CPU was the default computational unit of the computer. It was designed to handle any computation that the computer might have to perform. The GPU was designed to offload the computational burden on the CPU. It could not perform any computation, as the CPU could, but it could be used for some types of computation (typically "simple and repetitive tasks"), which offloaded the burden on the CPU (the appellant referred here to page 14, lines 21 to 28, of the application as filed). The GPU was faster than the CPU at these types of computation that the GPU could handle because it comprised more cores and parallelised the computations efficiently. Moreover, computing resources of the CPU were saved since the GPU could perform some of the computations in the claimed method, which was what the appellant meant by "less computing resources of the CPU being required".
14.10 The board considers the problem to be solved by the distinguishing features as being "how to achieve an efficient construction of a visualisation of a modelled object according to a desired geometric form?".
14.11 At the oral proceedings the board noted that using a GPU for rendering in computer graphics was well known. Document D10 explained in the abstract that "a large variety of computation involved in computer graphics can be moved from the CPU to the GPU, by a clever use of vertex or fragment shaders".
14.12 The appellant argued that starting from document D1 the skilled person could, or even would, consider using a GPU since the use of a GPU was already known in the field of computer graphics . However, the generic mesh refinement of document D1 did not correspond to the specific computations of using offset points of features E1 and E2. Even if the skilled person had, in search for a solution to the objective technical problem, thought of consulting document D10 and of adding the solution disclosed in document D10 to the method of document D1, they would still not have arrived at the subject-matter of claim 1 of the first auxiliary request. Starting from document D1, there was no reason to modify the computations. Document D1 used rounded strokes. None of the improvements presented in section 8 of document D1 related to solving the "lag" problem such that the visual feedback would be faster and improved. Furthermore, the other documents cited during examination proceedings, including D10, did not disclose the specific computations of features E1 and E2 of claim 1.
14.13 The board finds the appellant's arguments regarding the offloading to the GPU of the simple and repetitive tasks of features E to E2 convincing. The board notes that step E1 consists in computing, for each point of the projected set of points, at least two offset points (S153), an offset point being a point positioned on the at least one support and spaced from said each point. The computation of the offset points for a projected set of points is simple. It is a task repeated for each projected set of points (which points, as argued by the appellant, can be ordered and labelled by indices). It might also be parallelised. Therefore, it is a specific task which is appropriate for the processing by a GPU. Therefore, the board is convinced that computing resources of a CPU or memory are preserved by the method of claim 1. As the appellant argued, features E, E1 and E2 are especially adapted for a GPU as they constitute simple repetitive tasks. None of the other cited documents describes the distinguishing features. Even if the skilled person starting from document D1 were to consider using a GPU, they would not have modified the model of document D1 in the particular manner of the distinguishing features of claim 1 of the first auxiliary request.
14.14 Therefore, claim 1 of the first auxiliary request involves an inventive step (Article 56 EPC) over the cited prior art.
Conclusion
15. The board is satisfied that claim 1 of the first auxiliary request is allowable. However, the dependent claims of the first auxiliary request and the description may need to be adapted. The case is thus to be remitted to the examining division for further prosecution on the basis of the first auxiliary request.
For these reasons it is decided that:
1. The decision under appeal is set aside.
2. The case is remitted to the examining division for further prosecution.