The present invention pertains to the field of calculation and presentation of 3D models.
The present invention more particularly relates to a method for displaying section views of a 3D model using a fragment shader.
The presentation of section views of a 3D model allows visualizing and representing the inside of the 3D model, contrary to the classical views that only present the outside.
In the frame of computer-aided design or CAD, it allows validating the mechanical solidity, the inside clearance, and generally the mechanical operation of modelled pieces.
Applied to 3D printing, it allows the user to verify the compliance of his model in a set before execution.
The effective calculation of a sectioned 3D model, using the intersection of its components with a section surface, can represent a prohibitive cost for an interactive use, depending on the complexity of the 3D model.
Therefore, there is a need for presenting section views of a 3D model at display time in an interactive way, without explicitly calculating the 3D representation. Furthermore, in the frame of 3D printing, the presentation of these views in a browser at order time makes the validation easier, and avoids installing an application on the computer of the final user or of the designer.
Partial solutions to the above-mentioned problem exist:
The present invention aims at solving the above-mentioned drawbacks of the prior art solutions.
The present invention is defined, in its broadest sense, as a method for interactively displaying section views of a 3D model, characterized in that it comprises the following steps:
Therefore, the method according to the present invention allows interactively presenting section views of a 3D model without modifying the 3D model itself.
Preferably, said method is performed using Internet and a browser program.
According to an embodiment, said method allows the online presentation of section views.
Advantageously, said comparison is performed using a computer program.
According to an embodiment, said 3D model is constituted of triangles forming a mesh.
Preferably, said 3D model is displayed using a 3D acceleration card and said determination is performed using a fragment shader of said 3D acceleration card.
According to an embodiment, an interruption of the drawing of a fragment is performed using an instruction provided by a programming language of said 3D acceleration card.
According to an embodiment, said section surface is a plane defined by the following equation: a*x+b*y+c*z+d=0 and in that said determination is performed by a scalar product of the vector (a,b,c,d) and the vector (x,y,z,1) then comparing to zero; x, y and z being the 3D coordinates before projection of the point to be drawn.
According to another embodiment, said section surface is an axis-aligned plane and in that said determination is performed by comparing one of coordinates x, y or z with the distance of the section surface to the origin; x, y and z being the 3D coordinates before projection of the point to be drawn.
According to an embodiment, said method uses WebGL technology and a GLSL program.
According to an embodiment, said method uses Flash technology and an AGAL program.
According to an embodiment, said method uses a mobile application and a GLSL program.
The following detailed description will be better understood with the drawings, in which:
The present invention relates to a method for interactively displaying section views of a 3D model 10, comprising the following steps:
The 3D model 10 is represented on
As shown on
Using the 2D table 20 shown on
These steps are repeated for each triangle and then for each fragment of each triangle.
According to the present invention, sections are calculated at display time by a 3D acceleration card, in prematurely interrupting the drawing of fragments of the 3D model 10 in a program called “fragment shader”. The method according to the present invention relies on technologies present in most browsers that are deployed today. Therefore, the present invention can easily be deployed online.
The decision that is made is programmable and is not limited to section planes. It allows the section by any surface that can be described by an equation or by a program.
In an embodiment, the method is performed using Internet and a browser program, and it allows the online presentation of section views.
The comparison can be performed using a computer program.
In an embodiment, said 3D model 10 is constituted of triangles 11, 12, 13 forming a mesh.
In an embodiment, the 3D model 10 is displayed using a 3D acceleration card 50 and said determination is performed using a fragment shader of said 3D acceleration card 50.
In an embodiment, an interruption of the drawing of a fragment is performed using an instruction provided by a programming language of said 3D acceleration card 50.
In a particular embodiment, the section surface 40 is a plane defined by the following equation: a*x+b*y+c*z+d=0 and in that said determination is performed by a scalar product of the vector (a,b,c,d) and the vector (x,y,z,1) then comparing to zero; x, y and z being the 3D coordinates before projection of the point 30 to be drawn.
In another embodiment, the section surface 40 is an axis-aligned plane and in that said determination is performed by comparing one of coordinates x, y or z with the distance of the section surface 40 to the origin; x, y and z being the 3D coordinates before projection of the point 30 to be drawn.
The method according to the present invention can use WebGL technology and a GLSL program.
It can also use Flash technology and an AGAL program.
Finally, it can also use a mobile application and a GLSL program.
The above specification, examples and drawings provide a complete description of the method according to the present invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims herein after appended.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/IB2013/002098 | 8/26/2013 | WO | 00 |