Annotating a 3D modeled object representing a CAD mechanical part or assembly of parts

The method addresses the synchronization issue between 3D and 2D environments by allowing simultaneous annotation on both views, enhancing precision and ergonomics in creating 2D representations from 3D models.

JP2026009053APending Publication Date: 2026-01-19DASSAULT SYSTEMES SA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025111993
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-05
Filing Date
2025-07-02
Publication Date
2026-01-19

AI Technical Summary

Technical Problem

Existing 3D tolerancing and annotation applications lack precise 2D layout representations and fail to synchronize accurately between 3D and 2D environments, leading to discrepancies in product manufacturing due to inadequate communication between 3D digital mockups and 2D technical drawings.

Method used

A computer-implemented method for annotating 3D modeled objects, allowing dual display of unoriented and fixed views, enabling annotations to be created and displayed on both views simultaneously, with the option to transfer annotations between them, and generating a 2D representation conforming to a technical drawing.

Benefits of technology

This method enhances the accuracy and ergonomics of annotating 3D modeled objects, ensuring precise 2D representations and eliminating the need for switching between applications, thereby reducing discrepancies and improving manufacturing precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026009053000001_ABST
    Figure 2026009053000001_ABST
Patent Text Reader

Abstract

To provide a computer-implemented method for annotating a 3D modeled object representing a CAD mechanical part or assembly of parts.SOLUTION: A method for displaying two or more views of a 3D modeled object, at least one of the views being compliant with a view of technical drawings, comprises obtaining a 3D scene and displaying an unoriented view of the 3D modeled object and at least one fixed view of the 3D modeled object, creating an annotation by a user action by selecting at least one geometric elements on at least one of the views of the 3D modeled object and a type of annotation, and displaying the created annotation on at least the unoriented view.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to the field of computer programs and systems, and more particularly to methods, systems and programs for annotating 3D modeled objects representing CAD mechanical parts or assemblies of parts. [Background technology]

[0002] Numerous systems and programs are available on the market for designing, engineering, and manufacturing objects. CAD is an acronym for Computer-Aided Design, referring to software solutions for designing objects, for example. CAE is an acronym for Computer-Aided Engineering, referring to software solutions for simulating the physical behavior of future products, for example. CAM is an acronym for Computer-Aided Manufacturing, referring to software solutions for defining manufacturing processes and operations, for example. In such computer-aided design systems, graphical user interfaces play an important role in streamlining the technology. These technologies may be incorporated into Product Lifecycle Management (PLM) systems. PLM refers to a business strategy that helps companies share product data, apply common processes, and leverage corporate knowledge for product development across a wide range of business initiatives, from conception to end-of-life. The PLM solutions offered by Dassault Systèmes (under the trademarks CATIA, ENOVIA and DELMIA) provide an Engineering Hub that organizes product engineering knowledge, a Manufacturing Hub that manages product engineering knowledge, and an Enterprise Hub that enables the integration and connection of businesses to both the Engineering and Manufacturing Hubs. Overall, the systems provide an open object model that links products, processes and resources to enable dynamic, knowledge-based product creation and decision support that drives product definition, manufacturing preparation, production and service optimization.

[0003] Within these CAD / CAE / CAM systems, applications are known that are used to annotate designed products. The purpose of this annotation is to prepare the designed product for production. The annotations therefore enable the manufacture of the designed product, and the annotated designed product can be used directly to produce the machine part or assembly of parts that it represents. The annotations thus define and / or present information about the definition of the product for manufacturing, inspection, and maintenance. This includes (but is not limited to) data such as the product's precise or simplified geometric shape, complementary geometry, dimensions, geometric tolerances, surface textures, surface treatments, welding symbols, material specifications, annotations, and symbols. This is also known as Product Manufacturing Information (PMI). PMI is therefore useful for all industries that manufacture physical products, but also provides support for standards for technical drawings and physical product specifications proposed by, for example, ISO (International Organization for Standardization), ASME (American Society of Mechanical Engineers), and JIS (Japanese Industrial Standards). Summary of the Invention [Problem to be solved by the invention]

[0004] Among these annotation applications, there are many applications that use accurate 3D representations to visualize annotations. 3D tolerancing and annotation applications are known that offer definitions, however the associated 2D layout presentations are never accurate and cannot be edited.

[0005] 2D layouts for 3D design applications are also known, which propose a 2D definition of annotations with a precise 2D representation. However, the representation of annotations in 3D is not always precise, and they cannot be manipulated or edited in the 3D environment.

[0006] Additionally, when using both applications, there is only basic synchronization between these 2D and 3D environments, and it is not possible to interact with such visual representations on both sides at the same time. Thus, there is no direct communication between the 3D definition used for the product's digital mockup verification, which includes the nominal 3D geometry and some technical specifications but not geometric tolerances, and the 2D drawing definition used to manufacture that product, which includes the 2D geometry with all clear dimensions, all geometric tolerances, and all technical specifications (notes, symbols, tables). As a result, the manufactured product is not verified by the digital mockup, resulting in discrepancies between the two definitions (3D definition and 2D specifications).

[0007] In this context, there remains a need for an improved method for annotating a 3D modeled object representing a CAD mechanical part or assembly of parts, where at least one view of the 3D modeled object conforms to a view of a technical drawing. There is a need to provide a designer with the possibility to easily and accurately annotate a 3D mockup (i.e., a 3D modeled object) and, at the same time, obtain a final 2D representation. [Means for solving the problem]

[0008] A computer-implemented method for annotating a 3D modeled object representing a CAD mechanical part or assembly of parts is provided, wherein two or more views of the 3D modeled object are displayed, at least one of the views conforming to a view of an engineering drawing. The method comprises: -Get a 3D scene, an unoriented view of the 3D modeled object; and at least one fixed view of the 3D modeled object; - creating, by user action, an annotation by selecting at least one geometric element on at least one of the views of the 3D modeled object and a type of annotation; - displaying said created annotations on at least said unoriented view.

[0009] The method may include one or more of the following.

[0010] - transferring the created annotation onto at least one other view of the 3D modeled object.

[0011] - displaying the annotation on the at least one other view of the 3D modeled object, wherein the at least one other view of the 3D modeled object is a fixed view of the 3D modeled object, and preferably, displaying the annotation on the at least one other view of the 3D modeled object and on the unoriented view are performed simultaneously.

[0012] The step of creating the annotation includes: performing a first portion of the user action within the at least one fixed view and performing a second portion of the user action within the at least one fixed view, wherein the first and second portions of the user action are each transformed for reference to the view in which the portions of the user action are performed.

[0013] - the step of displaying at least one fixed view of the 3D modeled object comprises the steps of selecting geometric elements on the unoriented view of the 3D modeled object, and calculating at least one orthographic view of the 3D modeled object from the selected geometric elements.

[0014] the step of displaying at least one fixed view of the 3D modeled object further comprises selecting a section line on one of the at least one fixed views of the 3D modeled object, the section line defining a cutting plane; and calculating and displaying a cross-sectional view of the at least one fixed view of the 3D modeled object across the cutting plane.

[0015] - filtering one or more elements of the unoriented view of the 3D modeled object and / or the at least one fixed view of the 3D modeled object, wherein the one or more elements are selected from: a portion of the 3D modeled object representing an assembly of the CAD parts; a geometric element of the 3D modeled object representing the CAD mechanical part; a feature of the 3D modeled object representing the CAD mechanical part; and an annotation type in a pre-created annotation; and making the filtered one or more elements selectable for creating the annotation.

[0016] the at least one fixed view of the 3D modeled object comprises an axonometric fixed view of the 3D modeled object, and the step of creating an annotation further comprises the steps of displaying a graphical representation of a primary support surface and at least additional support surfaces of the axonometric fixed view and selecting one of the graphical representations, and the step of displaying the created annotation further comprises the step of displaying the annotation in a plane parallel to the selected support surface.

[0017] the step of creating the annotation further comprises determining whether the displayed annotation is partially or completely hidden within the at least one fixed view of the 3D modeled object, and moving the displayed annotation until the displayed annotation is completely visible.

[0018] the step of acquiring and displaying a 3D scene further includes the step of displaying a toolbar embedded in the 3D scene, the toolbar being available for each of the views of the 3D scene, the toolbar enabling switching between first, second and third operating modes, the first operating mode comprising displaying only the unoriented view of the 3D modeled object, the second operating mode comprising displaying only the at least one fixed view of the 3D modeled object, and the third operating mode comprising displaying both the unoriented view of the 3D modeled object and the at least one fixed view of the 3D modeled object.

[0019] generating a 2D drawing that conforms to a technical drawing from one or more of said at least one fixed view of said 3D modeled object.

[0020] There is further provided a computer program comprising instructions for carrying out the above method.

[0021] There is further provided a computer readable storage medium having the computer program recorded thereon.

[0022] There is further provided a system comprising a processor coupled to a memory having the computer program stored thereon, and a graphical user interface. Non-limiting examples of the invention will now be described with reference to the accompanying drawings. [Brief explanation of the drawings]

[0023] [Figure 1] 1 is a flowchart of an example of the method. [Figure 2] 1 shows a comparison between a known workflow and a workflow according to the present invention. [Figure 3] An example of the graphical user interface of the above system is shown below. [Figure 4]An example of the above system is shown below. [Figure 5] The above views and their organization are shown below. [Figure 6] The above views and their organization are shown below. [Figure 7] An example of creating a view is shown below. [Figure 8] An example of creating a view is shown below. [Figure 9] An example of creating a view is shown below. [Figure 10] An example of creating a view is shown below. [Figure 11] An example of creating a view is shown below. [Figure 12] An example of creating a view is shown below. [Figure 13] An example of creating an annotation is shown below. [Figure 14] An example of creating an annotation is shown below. [Figure 15] An example of creating an annotation is shown below. [Figure 16] An example of creating an annotation is shown below. [Figure 17] An example of creating an annotation is shown below. [Figure 18] Here is an example of creating an annotation with two geometric elements selected. [Figure 19] Here is an example of creating an annotation with two geometric elements selected. [Figure 20] Here is an example of creating an annotation with two geometric elements selected. [Figure 21] 10 shows an example of creating annotations using a fixed axonometric view. [Figure 22] 10 shows an example of creating annotations using a fixed axonometric view. [Figure 23] 10 shows an example of creating annotations using a fixed axonometric view. [Figure 24] Illustrates the generation of drawings that conform to technical drawings. [Figure 25] An example of creating an annotation is shown below. [Figure 26] The above views and their organization are shown below. DETAILED DESCRIPTION OF THE INVENTION

[0024] Referring to the flowchart of FIG. 1 , a computer-implemented method for annotating a 3D modeled object representing a CAD mechanical part or assembly of parts is proposed. Two or more views of the 3D modeled object are displayed, at least one of the views conforming to a view of an engineering drawing. Thus, at least one of the views includes product manufacturing information (PMI) necessary for manufacturing the 3D modeled object. The method also includes acquiring a 3D scene, the 3D scene being a 3D space in which the 3D modeled object is represented, as known in the art. An unoriented view of the 3D modeled object and at least one fixed view of the 3D modeled object are displayed within the 3D scene. The unoriented view is a representation of the 3D modeled object that can be freely manipulated by a user, allowing the user to freely change the viewpoint on the representation, thereby allowing the user to view the object from any angle. The fixed view is a representation of the 3D modeled object that cannot be manipulated by a user, preventing changes in viewpoint. The user then creates the annotation by selecting at least one geometric element of at least one of the views of the 3D modeled object and a type of annotation. The created annotations are then displayed on at least the unoriented view, thereby displaying a single annotated 3D modeled object.

[0025] This method improves the annotation of 3D modeled objects representing CAD mechanical parts or part assemblies. In particular, the dual display of unoriented views of the 3D modeled object combined with fixed views (where at least one of the fixed views conforms to a view in the technical drawing) improves the ergonomics of creating annotations and results in a single annotated 3D modeled object. Because a designer can create annotations from either the unoriented or fixed views of the 3D modeled object, ergonomics are improved and the user does not need to worry about synchronizing and transferring changes between the two views. Furthermore, because annotations are created on a single 3D modeled object, the definition is 3D and is considered the master, regardless of the environment (3D or 2D orientation) in which it is used. As shown in Figure 2, this eliminates the need for a user to switch back and forth between a second application B for adding annotations that do not exist on the 3D modeled object and a first application A in which the 3D modeled object is defined, which can be cumbersome for the user. The same is true for application B and a third application C that generates technical drawings. The single 3D modeled object is considered the master whatever the environment (unoriented view or fixed view) in which it is used, and it is possible to edit / correct the single 3D modeled object from the fixed view while remaining in the same 3D scene without switching to a different application, as shown at the bottom of Figure 2. The unoriented view and the fixed view of the 3D modeled object are merged in the same 3D scene without inter-transitioning, for example, for authoring the definition in 3D space and preparing the final drawing in 2D space.

[0026] Further advantages of the present invention are described herein.

[0027] The method is computer-implemented, i.e., the steps (or substantially all steps) of the method are performed by at least one computer or any similar system. Thus, the method steps are performed by the computer, possibly fully automatically or semi-automatically. In one example, at least some of the method steps may be initiated through user-computer interaction. The level of user-computer interaction required may depend on the level of automation envisioned and may be balanced against the need to fulfill the user's wishes. In one example, this level may be user-defined and / or predefined.

[0028] For example, the creating step is performed by user action within a 3D scene, where the user selects an annotation type and at least a geometric element on at least one 3D view of a 3D modeled object.

[0029] A typical example of a computer implementation of a method is to perform the method using a system adapted for this purpose. The system may include a processor coupled to a memory having a computer program recorded thereon with instructions for performing the method, and to a graphical user interface (GUI). The memory may also store a database. The memory is any hardware adapted for such storage, and may optionally include several physically distinct parts (e.g., one for the program and optionally one for the database).

[0030] The method generally involves the creation of a 3D modeled object (herein referred to as a modeled object) The 3D modeled object is an object defined by data stored in, for example, a database. Thus, the term "3D modeled object" refers to the data itself. Depending on the type of system, the 3D modeled object may be defined by different types of data. Indeed, the system may be any combination of a CAD system, a CAE system, a CAM system, a PDM system, and / or a PLM system. In these different systems, the 3D modeled object is defined by the corresponding data. Thus, one may speak of CAD objects, PLM objects, PDM objects, CAE objects, CAM objects, CAD data, PLM data, PDM data, CAM data, and CAE data. However, these systems are not mutually exclusive, since a 3D modeled object may be defined by data corresponding to any combination of these systems. Thus, as will be clear from the definition of such a system below, a system could very well be both a CAD and a PLM system.

[0031] A CAD system also refers to any system adapted for designing modeled objects based on at least a graphical representation of the modeled object, such as CATIA. In this case, data defining the modeled object includes data that allows the modeled object to be represented. A CAD system may provide a representation of a CAD modeled object using, for example, edges, lines, and possibly faces and surfaces. Lines, edges, or surfaces may be represented in various ways, for example, using non-uniform rational B-splines (NURBS). Specifically, a CAD file contains specifications based on which geometry can be generated, thereby allowing the generation of a representation. The modeled object specifications may be stored in one CAD file or multiple CAD files. Typical sizes of files representing modeled objects in a CAD system are in the range of one megabyte per part. Furthermore, a modeled object may typically be an assembly of thousands of parts.

[0032] In the context of CAD, a modeled object may typically be a 3D modeled object representing, for example, a part or assembly of parts, or possibly an assembly of a product. A "3D modeled object" refers to any object modeled by data that allows for a 3D representation. A 3D representation allows the part to be viewed from all angles. For example, a 3D modeled object, when represented in 3D, can be manipulated and rotated about any of its axes or any axis within the screen on which the representation is displayed. This specifically excludes 2D icons that are not 3D modeled. Displaying 3D representations facilitates design (i.e., increases the speed at which designers can accomplish their tasks statistically), which speeds up the manufacturing process in the industry, since product design is part of the manufacturing process.

[0033] A 3D modeled object represents the geometry of a product, such as a product that is actually manufactured after completion of a virtual design using, for example, a CAD software solution or a CAD system, a (e.g., mechanical) part or assembly of parts (i.e., an assembly of parts, since an assembly of parts may be considered as a part itself from the perspective of the method, or the method may be applied independently to each part of the assembly), or more generally, an assembly of any rigid bodies (e.g., a moving mechanism). CAD software solutions enable the design of products in a variety of industries, including, but not limited to, aerospace, architecture, construction, consumer goods, high-tech equipment, industrial equipment, transportation, marine, and / or offshore oil and gas production or transportation. Thus, a 3D modeled object designed by the present method may be used to design a land vehicle (e.g., automobile or light truck equipment), racing car, or other vehicle. the term "commercial vehicle" may represent any mechanical part such as a motorbike, truck and motor equipment, truck and bus, train (including, for example, airframe equipment, aerospace equipment, propulsion equipment, defense products, airplane equipment, space equipment), a part for a marine vehicle (including, for example, naval equipment, merchant ships, marine equipment, yachts and work boats, marine equipment), a general mechanical part (including, for example, industrial manufacturing machinery, heavy mobile machinery or equipment, installation equipment, industrial equipment products, fabricated metal products, tire manufacturing products), an electromechanical or electronic component (including, for example, home appliances, security products and / or control products and / or instrumentation products, computing and communications equipment, semiconductors, medical equipment and facilities), an industrial product (including, for example, furniture, home and garden products, leisure products, fashion products, durable retail products, non-durable retail products), packaging (including, for example, food, beverage and tobacco, beauty and personal care, household goods packaging).

[0034] A CAD system may be history-based. In this case, a modeled object is further defined by data including the history of its geometric features. Indeed, a modeled object may be designed by a natural person (i.e., a designer / user) using standard modeling features (e.g., extrusion, revolving, cutting, and / or rounding) and / or standard surfacing features (e.g., sweeping, blending, lofting, filling, deformation, and / or smoothing). Many CAD systems that support such modeling capabilities are history-based. That is, the creation history of design features is typically stored via input and output links through an acyclic data flow linking the above geometric features. The history-based modeling paradigm has been known since the early 1980s. A modeled object is described by two persistent data representations: history and B-rep (i.e., boundary representation). The B-rep is the result of the calculations defined in the history. The shape of the part displayed on a computer screen when representing a modeled object is a B-rep (e.g., a tessellation of the B-rep). The history of a part is the design intent. Essentially, the history collects information about operations that have been performed on a modeled object. B-reps may be saved with the history to facilitate the display of complex parts. The history may also be saved with the B-rep so that the design of the part can be modified according to the design intent.

[0035] A PLM system also refers to any system adapted to the management of modeled objects that represent manufactured physical products (or physical products to be manufactured). In a PLM system, the modeled objects are therefore defined by data suitable for the manufacture of the physical objects. These may typically be dimensional and / or tolerance values. It is better to have such values ​​in order to manufacture the objects accurately.

[0036] CAM solution refers to any solution, software, or hardware adapted to manage the manufacturing data of a product. Manufacturing data generally includes data related to the product to be manufactured, the manufacturing process, and the resources required. CAM solutions are used to plan and optimize the entire manufacturing process of a product. For example, a CAM solution can provide the CAM user with information about the feasibility, duration of the manufacturing process, or the number of resources (e.g., specific robots) that can be used for a particular step in the manufacturing process, thereby enabling decisions regarding management or required investments. CAM is a process that follows CAD and, in some cases, CAE processes. Such CAM solutions are offered by Dassault Systèmes under the trademark DELMIA®.

[0037] CAE solution means any solution, software or hardware, adapted to analyze the physical behavior of a modeled object. One well-known and widely used CAE technique is the finite element method (FEM), which solves the equations CAE typically involves dividing a modeled object into elements whose physical behavior can be calculated and simulated using a computer-aided design (CAD) algorithm. Such CAE solutions are offered by Dassault Systèmes under the trademark SIMULIA®. Another emerging CAE technology involves modeling and analyzing complex systems consisting of multiple components from different physics disciplines without using CAD geometry data. CAE solutions enable the simulation, and thus the optimization, improvement, and validation, of manufactured products. Such CAE solutions are offered by Dassault Systèmes under the trademark DYMOLA®.

[0038] PDM stands for Product Data Management. A PDM solution refers to any solution, software, or hardware, adapted to manage any kind of data related to a specific product. A PDM solution may be used by any party involved in the product's lifecycle (primarily engineers, but also project managers, finance personnel, sales personnel, and buyers). PDM solutions are generally based on a product-oriented database, which allows the parties to share consistent data about their products, thus preventing them from using different data. Such a PDM solution is offered by Dassault Systèmes under the trademark ENOVIA®.

[0039] FIG. 3 shows an example of a GUI for the above system, in this example the system is a CAD system.

[0040] The GUI 2100 may be a typical CAD-like interface, with standard menu bars 2110, 2120 and bottom and side toolbars 2140, 2150. Such menu bars and toolbars include a set of user-selectable icons, each associated with one or more operations or functions, as known in the art. Some of these icons are associated with software tools adapted to edit and / or manipulate the 3D modeled object 2000 displayed in the GUI 2100. The software tools may be grouped into workbenches. Each workbench includes a subset of software tools. In particular, one of the workbenches is an editing workbench suitable for editing geometric features of the modeled product 2000. In operation, a designer may, for example, pre-select a portion of the object 2000 and then initiate a task (e.g., changing dimensions, color, etc.) or edit geometric constraints by selecting the appropriate icon. For example, a typical CAD operation is modeling a stamping or folding of the 3D modeled object displayed on the screen. The GUI may, for example, display data 2500 related to the displayed product 2000. In one illustrative example, the data 2500, displayed as a "feature tree," and their 3D representation 2000, relate to a brake assembly including a brake caliper and disc. The GUI may further present various types of graphic tools 2130, 2070, 2080, for example, to facilitate 3D orientation of objects, trigger simulations of the edited product's operation, render various attributes of the displayed product 2000, and select types of annotations. A cursor 2060 may be controlled by a haptic device to allow a user to interact with the graphic tools.

[0041] FIG. 4 shows an example of the above system; in this example, the system is a client computer system (e.g., a user's workstation).

[0042] The client computer in this example includes a central processing unit connected to an internal communication bus 1000. The client computer includes a CPU 1010 and random access memory (RAM) 1070, also connected to the bus. The client computer further includes a graphics processing unit (GPU) 1110 associated with video random access memory 1100, also connected to the bus. Video RAM 1100 is also known in the art as a frame buffer. A mass storage controller 1020 manages access to mass memory devices, such as a hard drive 1030. Mass memory devices suitable for embodying computer program instructions and data include all forms of non-volatile memory, including semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks and removable disks; and magneto-optical disks. Any of the above may be supplemented by or incorporated in specially designed application-specific integrated circuits (ASICs). A network adapter 1050 manages access to a network 1060. The client computer may also include a tactile device 1090, such as a cursor control device, keyboard, etc. A cursor control device is used in the client computer to allow a user to selectively position a cursor at any desired location on the display 1080. Additionally, the cursor control device allows the user to select various commands and input control signals. The cursor control device has multiple signal generating devices for inputting control signals to the system. Typically, the cursor control device may be a mouse, with mouse buttons used to generate the signals. Alternatively or additionally, the client computer system may include a sensitive pad and / or a sensitive screen.

[0043] The computer program may include computer-executable instructions, including means for causing the system to perform the method. The program may be recordable on any data storage medium, including the system's memory. The program may be implemented, for example, in digital electronic circuitry or computer hardware, firmware, software, or a combination thereof. The program may also be implemented as an apparatus, for example, as an article of manufacture embodied in a machine-readable storage device for execution by a programmable processor. The method steps may be carried out by a programmable processor executing a program of instructions to perform the functions of the method by manipulating input data and generating output. Thus, the processor may be programmable or coupled to receive and transmit data and instructions from a data storage system, at least one input device, and at least one output device. The application program may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language as appropriate. In either case, the language may be a compiled or interpreted language. The program may also be a full installation program or an update program. In either case, applying the program to the system provides instructions for performing the method. Alternatively, the computer program may be stored on and executed on a server in a cloud computing environment that is in communication with one or more clients over a network, in which case a processing unit executes the instructions comprising the program to thereby cause the method to be performed in the cloud computing environment.

[0044] "Annotating a 3D modeled object" refers to an operation or series of operations that are at least part of adding annotations to a 3D modeled object. Thus, the method may involve annotating the 3D modeled object from scratch. Alternatively, the method may involve providing a pre-created 3D modeled object that already includes annotations, and then modifying the already existing annotations and / or adding further annotations to the 3D modeled object.

[0045] The method may be included in a manufacturing process, which may include, after performing the method, manufacturing a physical product corresponding to the annotated 3D modeled object. As already mentioned, the purpose of the annotation is to provide necessary information to enable manufacturing of the 3D modeled object. In either case, the 3D modeled object designed by the method represents a manufacturing object. The modeled object may be a modeled solid (i.e., a modeled object representing a solid). The manufacturing object may also be a product, such as a (CAD) mechanical part or an assembly of parts. Because the method improves the annotation of the 3D modeled object, the method also improves the manufacturing of the product, thereby increasing the productivity of the manufacturing process.

[0046] Referring again to Figure 1, at S10, a 3D scene is acquired. A "3D scene" refers to a 3D digital space in which three-dimensional models are created, modified, and visualized. Acquiring a 3D scene means that the system executing the method has access to data related to the 3D scene so that the system can perform the following steps of the method:

[0047] Continuing with reference to S10, an unoriented view of the 3D modeled object is displayed. An unoriented view is a representation of the 3D modeled object that can be freely manipulated by a user, allowing the user to freely change the viewpoint on the representation, thereby viewing the 3D modeled object from any angle. Thus, an unoriented view refers to a visual representation or representation of a 3D object that is not fixed to a particular orientation or viewpoint. In other words, an unoriented view allows a viewer to interactively rotate, pan, and zoom around the object or scene to examine the object or scene from any angle without being limited to a predefined viewpoint.

[0048] Continuing with S10, at least one fixed view of the 3D modeled object is displayed. A fixed view is a representation of the 3D modeled object that the user cannot manipulate and does not allow for viewpoint changes. Thus, a fixed view refers to a viewpoint on the 3D modeled object that remains constant and does not dynamically change as the user interacts with the 3D scene. Unlike an unoriented view, which can be interactively rotated, panned, and zoomed, a fixed view is fixed to a particular angle and position. For example, an orthographic view is a fixed view of the 3D modeled object, while a top view, a front view, and a side view are 2D representations of the object in the 3D scene from different angles.

[0049] The steps of displaying the unoriented view of the 3D modeled object and at least one fixed view of the 3D modeled object may occur in any order, or even simultaneously.

[0050] At least one of the views conforms to a view in a technical drawing. A technical drawing, also known as an engineering drawing, is a detailed and precise illustration of a 3D modeled object intended to convey the dimensions, geometry, and other specifications necessary for the manufacture of the 3D modeled object. Technical drawings provide a clear and standardized way of communicating complex information for, for example, the manufacture of a 3D modeled object.

[0051] An example of the display step S10 will now be described: An unoriented view of the 3D modeled object and at least one fixed view of the 3D modeled object are present in the 3D scene.

[0052] FIG. 5 is a screenshot of a so-called mixed mode of operation, in which both views are displayed. The 3D scene is divided into two spaces: a left side 50 with an unoriented view of the 3D modeled object and a right side 52 with at least one fixed view of the 3D modeled object. Although both the left and right sides belong to the 3D scene, a line 53 may be displayed to show a diagrammatic representation of the boundary between these two sides. In FIG. 5, the line 53 is shown in the center of the 3D scene, as depicted in the graphical user interface (GUI), with both sides having the same dimensions, although it is understood that the left and right sides may have different dimensions. In one example, the line can be moved by user action; for example, a user can grab the line with a haptic device and move it to the right or left. Thus, a user can change the dimensions of the left and right sides, for example, to adapt these sides to the user's needs.

[0053] In Figure 5, the unoriented view of the 3D modeled object is on the left and at least one fixed view of the 3D modeled object is on the right. It is understood that any other organization is possible, such as, for example, having the unoriented view of the 3D modeled object on the right and at least one fixed view of the 3D modeled object on the left, or having the unoriented view of the 3D modeled object at the top and at least one fixed view of the 3D modeled object at the bottom, or having the unoriented view of the 3D modeled object at the bottom and at least one fixed view of the 3D modeled object at the top. Similar features as described for the organization of Figure 5 can also be applied to these alternative organizations.

[0054] 6 shows other example organizations, as well as left and right side variations. It is understood that the dimension changes may apply when an unoriented view of the 3D modeled object is at the top and at least one fixed view of the 3D modeled object is at the bottom, and vice versa. FIG. 6 further illustrates that a line embodying a boundary between the fixed view side and the unoriented view side may be moved by user action.

[0055] Continuing with FIG. 5 , the left side 50 includes an unoriented view of a 3D modeled object in a 3D scene including two annotations. The right side 52 may depict one or more layouts. A layout relates to the arrangement and organization of various views to prepare the final presentation of the view. In FIG. 5 , the right side has one layout. In one example, a layout may include one or more sheets. A layout sheet refers to an individual drawing sheet on which the final presentation of the 3D modeled object (e.g., a view conforming to a technical drawing) is organized and prepared for printing or digital sharing. In FIG. 5 , the layout on the right side includes two sheets 520 and 522. The sheets may be embodied by quadrilaterals. In FIG. 5 , sheets 520 and 522 are represented by rectangles. Sheet 520 depicts three orthographic views 5500, 5502, and 5504 of the 3D modeled object. Sheet 522 depicts a fixed isometric view 5220 of the 3D modeled object. It is understood that sheets can be positioned in any position on the layout (e.g., one above the other or side by side). Sheets do not have to overlap to ensure visibility of the views they represent. As shown in FIG. 5 , each fixed view of the 3D modeled object may be surrounded by a quadrilateral. In one example, the color of each quadrilateral may be used to convey information about which of the fixed views of the 3D modeled object is the default view. For example, in FIG. 5 , default view 5200 is highlighted and surrounded by a rectangle having a different color, e.g., than the rectangles surrounding the other views 5202, 5204, and 5220. Default views are described below. Fixed views can be placed on any sheet and / or moved, e.g., by drag-and-drop operations, from a first sheet to a second sheet and / or from a first layout to a second sheet. It is understood that the layout may also be moved.

[0056] Continuing with Figure 5, a toolbar 54 is shown embedded in the 3D scene. The toolbar is thus an object of the 3D scene and can be used with both unoriented and fixed views. This avoids having a toolbar for each view. The toolbar comprises icons that are activated by user action, for example with a haptic device, and each icon triggers a function when activated. The toolbar is described below.

[0057] In one example, a specification tree for a 3D modeled object in a 3D global perspective and a 2D global perspective may be embedded in a 3D scene. For toolbars, this avoids the need for a specification tree for each unoriented view and fixed view. The specification tree allows for, but is not limited to, recalling and / or saving views and selecting orientation for unoriented views.

[0058] The so-called mixed mode of operation was described with reference to Figure 5. A further mode of operation, called full 3D mode of operation, allows different viewpoints to be displayed successively on demand, as shown in Figure 26. From left to right in Figure 26, a first unoriented view is displayed to the user. Then, a second unoriented view is shown to the user (e.g., the user is rotating the 3D modeled object). Finally, a fixed view of the 3D modeled object is shown.

[0059] A third mode of operation may be made available to the user, called a fully 2D mode of operation, in which only a fixed view of the 3D modeled object is shown to the user.

[0060] The toolbar may comprise dedicated icons for switching between first, second and third modes of operation. As already mentioned, the first mode of operation comprises displaying only an unoriented view of the 3D modeled object, the third mode of operation comprises displaying only at least one fixed view of the 3D modeled object, and the second mode of operation comprises displaying both an unoriented view of the 3D modeled object and at least one fixed view of the 3D modeled object. All three modes of operation fulfill the objectives of the present invention by creating a 3D definition that can be read, understood, edited and manipulated in both a 3D environment and / or a 2D environment with a final drawing representation.

[0061] Next, an example of creating a fixed view will be described. This creation is performed in S10, but may also be performed in any subsequent step of the method according to the present invention, for example, during the annotation creation process. This is possible because the fixed view is obtained (created) from a single 3D modeled object to be annotated (or that has already been annotated). Creating a fixed view involves selecting geometric elements on a 3D unoriented view. Here, the geometric elements include vertices, edges, and faces of the 3D modeled object, but may also include features of the 3D modeled object, including basic geometric features such as extrusion, revolve, sweep, and loft, advanced geometric features such as fillet, round, and chamfer, and functional features such as holes, bosses, and pockets.

[0062] In one example, the selection of the geometric element may be performed automatically by the system, such as by determining the major faces of the 3D modeled object and selecting one of the major faces, which may be a face having one of the largest surfaces among the other faces of the 3D modeled object.

[0063] In one example, the selection of a geometric element may be performed by a user action, where the user selects one geometric element using a haptic device.

[0064] Once the selection of the geometric elements has been made, an orthographic view of the 3D modeled object is calculated from the selected geometric elements. An orthographic view is a view that represents the 3D modeled object in 2D without perspective distortion. The selected geometric elements used to calculate the orthographic view determine various points of interest on the 3D modeled object, which are orthographically mapped to points on a projection plane perpendicular to the projection line, thereby creating a 2D representation of one of the at least one fixed view of the 3D modeled object. Thus, the orthographic projection includes projecting at least the selected geometric elements onto a plane using parallel lines perpendicular to the projection plane. The selection of the geometric elements may define a front fixed view of the 3D modeled object.

[0065] 7 through 10 are screenshots illustrating an example of creating fixed views. In FIG. 7, an unoriented view of the 3D modeled object is shown, e.g., with the first operating mode enabled. In FIG. 8, a user triggers the display of an interaction menu 80, which appears below the location of the user's interaction on the computer's display, e.g., below the location of the user's cursor manipulation using a haptic device, or below the location of the user's interaction using an accessory on the computer's touch-sensitive screen. The user selects at least one fixed view, e.g., a front view, on the 3D modeled object. The display of the interaction menu 80 may also include displaying a submenu 82 that allows the selection / deselection of additional main views, such as top, left, right, bottom, or back fixed views. In this example, selecting the creation of at least one fixed view on the interaction menu 80 triggers the creation of main, top, and left fixed views by default, and turns on the top and left fixed view dialog boxes on the submenu 82. This allows the user to uncheck the appropriate boxes in the submenu 82 if they only want to create a front fixed view. It is understood that the number of fixed views presented by default may be configured at any time. The user then selects a geometric element of the 3D modeled object, as shown in FIG. 9 , where the user selects a plane 90. The selected geometric element may be highlighted to allow the user to confirm that the selection of the geometric element has been taken into account by the system. The selection of the geometric element of the 3D modeled object may further include displaying a bounding box 92 indicating a potential plane onto which an orthographic projection can be made. In this example, the selected plane 90 defines a fixed view of the front of the 3D modeled object, i.e., the geometric element is fully represented on the calculated fixed view. The selection of the geometric element of the 3D modeled object may further include displaying a reference indicating the placement of the bounding box centered on the 3D modeled object, the reference indicating x, y, and z coordinates, the z coordinate being highlighted.The z coordinate is the z coordinate to which the 3D modeled object is orthographically projected. As a result of the above steps, at least one fixed view of the 3D modeled object has been calculated. Data representing the fixed view is accessible by the system and stored in a memory that may belong to the system, for example. The fixed view may then be displayed as shown in FIG. 10. In one example, this display is performed automatically by the system as soon as the calculation is complete. In another example, the user may trigger the display of the fixed view by, for example, interacting with toolbar 54. Continuing to refer to FIG. 10, front view 5200 of the 3D modeled object is highlighted among the fixed views of sheet 520 to indicate to the user that the default view is front view 5200.

[0066] In one example, a screen displaying at least one fixed view of a 3D modeled object is provided. The step may further include calculating and displaying cross-sectional views of the 3D modeled object. A cross-sectional view is a type of fixed view that reveals internal features of the 3D modeled object that are not visible in standard unoriented or fixed views as known in the art. In one example, a section line is selected on one of the at least one fixed views of the 3D modeled object, e.g., by a user drawing a line above the fixed view. The section line defines a cutting plane. A cross-sectional view of the at least one fixed view of the 3D modeled object across the cutting plane is then calculated and displayed. FIG. 11 shows a cross-sectional view calculated on the top fixed view 5204 of the 3D modeled object of FIG. 10. Three section lines are defined by the user on the fixed view, which generate cross-sectional fixed views 1100, 1102, and 1104, respectively. Arrows indicate which section line generated which cross-sectional fixed view. It will be appreciated that a cross-sectional fixed view may be generated from an unoriented view, in which case a user may define a cutting plane through the 3D modeled object and the cross-sectional fixed view may be displayed.

[0067] In one example, displaying at least one fixed view of the 3D modeled object may further include calculating and displaying a trimetric projection view of the 3D modeled object. A user may trigger the display of the trimetric projection view, for example, by interacting with a toolbar 54 that provides access to functionality for automatically calculating the trimetric projection view.

[0068] Once step S10 is performed, annotations can be created (S20). Annotations are created by user action. To this end, the user selects an annotation type. Annotations convey additional technical information not directly represented by the geometry of the design. An annotation type is a category of technical information. Annotation types may be selected from, but are not limited to, dimension annotations, text annotations, geometric dimensions and tolerances, surface finish annotations, weld annotations, hole and thread annotations, and datum and datum annotations. Annotation types are specified by standards proposed by, for example, ISO (International Organization for Standardization), ASME (American Society of Mechanical Engineers), and JIS (Japanese Industrial Standards). Annotation type selection may be performed using a toolbar that can present a list of annotation types. Once the annotation type is selected, at least one geometric element is selected by the user. The selection of the geometric element may include selecting the geometric element on an unoriented view of the 3D modeled object or selecting the geometric element on a fixed view of the 3D modeled object. As already mentioned with reference to S10, geometric elements include vertices, edges, and faces of the 3D modeled object, but may also include features of the 3D modeled object, including basic geometric features such as extrusion, revolve, sweep, and loft, advanced geometric features such as fillet, round, and chamfer, and functional features such as holes, bosses, and pockets. Selection of a geometric element is performed by user action, as known in the art, for example, with a haptic device or with an appendage (e.g., finger, stylus) on a touch-sensitive screen. Both actions result in the creation of an annotation of the selected geometric element.

[0069] It will be appreciated that the selection of the annotation type may be done before or after the selection of the geometric element without altering the creation of the annotation.

[0070] In one example, creating the annotation may further include transferring the created annotation to at least one other view of the 3D modeled object. It is understood that transferring the created annotation does not necessarily include displaying, but ensures that the annotation can be displayed on at least one other view of the 3D modeled object in an orientation that corresponds to the other view to which the annotation was transferred. An example of such a transfer is described below with reference to FIG. 25. In one example, the transfer includes transferring the created annotation to a new view (e.g., For example, by modifying parameters of the annotation to associate the annotation with a new view selected by the user. In one example, transferring the annotation may further include making data associated with the annotation created on at least one of the views of the 3D modeled object available on or copying to one or more other views of the 3D modeled object.

[0071] The created annotations are then displayed (S30) on at least the unoriented view, thus annotating one 3D modeled object and showing the annotations to the user.

[0072] In some examples, the displaying further includes displaying the annotation on at least one of the other views of the 3D modeled object, indicating that the created annotation has been transferred to the at least one of the other views of the 3D modeled object. In these examples, the at least one of the other views of the 3D modeled object is a fixed view of the 3D modeled object.

[0073] Continuing in these examples, the display of the annotation on the at least one of the other views of the 3D modeled object and the display of the annotation on the unoriented view occur simultaneously, thereby improving a user's understanding of the annotation. In one example, the annotation is displayed on each view of the 3D modeled object.

[0074] 12, an example of creating an annotation is shown. A user wishes to add an annotation of type "text." The user selects the annotation type via toolbar 54 by activating icon 1100 dedicated to creating annotations of that type. Once the annotation type selection is made, the user selects a geometric element of the 3D modeled object.

[0075] 13, a geometric element is selected on the unoriented view. The selected geometric element is a face of the 3D modeled object. The selected geometric element is highlighted on all views, and annotations 1200, 1202 appear on the unoriented view and the front-fixed view 5200 as a result of this selection.

[0076] 14, the user may continue creating the annotation by entering text, for example "plate," and moving the annotation until the position fills and / or changes the shape of the annotation; for example, the annotation may include a manipulator for manipulating the annotation. While the annotation is being manipulated, it may be highlighted to allow the user to distinguish between the annotation being created and other annotations that may already be shown on the view.

[0077] Figure 15 shows the completed annotation.

[0078] Next, a general description of annotation creation will be provided with reference to FIGS. 10 to 15. These general descriptions are not limited to these examples, which are used for illustrative purposes only. In these examples, the fixed view 5200 is a view obtained for the selected geometric element 90 in the step of obtaining a fixed view, as described with reference to FIG. 5, for example. The default view is therefore a frontal fixed view obtained by orthographic projection of the 3D modeled object centered on the z-coordinate. The term default means that the 2D representation of the frontal fixed view forms the plane in which the annotation is expected to be read. For example, as shown in FIG. 14, the annotation 1202 of type "text" (using the text "plate") is orthogonal to the z-coordinate, i.e., lies in a plane parallel to the frontal fixed view. As a result .... Because only one object exists, annotation 1200 is shown in an unoriented view with an orientation similar to anchored view 5200. It is understood that the default anchored view can be changed at any time, and annotations can be created using a different default view. The default can be changed by user action, for example, by manipulating the rectangle that encloses the view that is set as the default view. Thus, if an annotation is created on the default anchored view, the annotation will have the same orientation as the default anchored view. If an annotation is created on an anchored view that is not the default view, the annotation will have the same orientation as the anchored view. If an annotation is created on an unoriented view, the annotation will have the same orientation as the default anchored view.

[0079] In one example, the creation of an annotation may be performed by user interaction in both an unoriented view and a fixed view. For example, the user may begin creating the annotation in a first view and then perform subsequent actions (e.g., manipulations) on the annotation in another view. As another example, a first portion of the user action may occur in the unoriented view, and a second portion of the user action may occur in the at least one fixed view. That is, the manipulation of the annotation during creation (following the mouse) may begin on one side and end on the other side as the mouse moves over the global viewpoint. The first portion of the user action and the second portion of the user action are translated on the fly with respect to the reference of the view in which the portion of the user action occurs.

[0080] Referring now to FIG. 18 , an example of annotation creation in both unoriented views (3D) and fixed views (2D) is shown. In this example, a user begins creating an annotation by selecting a geometric element 1700 and an annotation type in the fixed view (2D), and the annotation is created and displayed in both views. The annotation has the same orientation in 3D space in both views (this orientation is that of one of the fixed views). The annotation's connection 1702 to the unoriented view is created automatically but can be moved by user action on a manipulator 1704; for example, the user selects the manipulator and moves it to a desired position on the selected geometric element. While moving the manipulator, the manipulator may remain in contact with the geometric element to maintain the annotation's original purpose at the time of creation, thereby avoiding the creation of an annotation that may not be in contact with the selected geometric element.

[0081] In one example, creating an annotation may automatically ensure that the annotation is fully readable. In a first step, a determination is made as to whether the annotation to be created (i.e., during the creation process) is partially or completely hidden within at least one fixed view of the 3D modeled object. In a second step, if the determination is positive, the annotation is moved until it is fully visible. This determination may be made using standard occlusion detection algorithms such as, but not limited to, a Z-Buffer algorithm or ray tracing. This movement may involve automatically moving the annotation or providing the user with one or more suggestions for new positions for the annotation and the user selecting one of these suggestions.

[0082] Referring to Figure 16, an annotation is shown that has been created in an unoriented view (3D). In this view, and from the current viewpoint, the annotation is fully visible. However, the annotation is partially hidden in the default fixed view (2D). When this is detected, the annotation may be moved from right to left so that it is fully visible from the default fixed view (2D), as shown in Figure 17. In the example of Figure 17, the annotation has been automatically moved from the right to the left side of the selected face, where the annotation arrow is pointing. It will be understood that the new position of the annotation may be provided by user action. Alternatively, the annotation's The moving may include revealing a portion of the annotation that is hidden. Here, the system may move a portion of an arrow pointing to the 3D modeled object to the left while retaining the portion of the annotation that shows the text information. This may also be done by user action, for example, the user selecting the arrow manipulator.

[0083] In one example, selecting geometric elements for creating an annotation may include selecting at least two geometric elements. The selection of at least two geometric elements of the 3D modeled object may be used for a particular type of annotation, such as a dimension, such as the distance between two geometric elements. The selection of two or more geometric elements may be partially automated. That is, after selecting a first geometric element, the system may determine and automatically select a second geometric element (e.g., a geometric element of the same type having the same type of orientation). It is understood that a user can deselect an automatically selected geometric element. For example, when a user selects one geometric element that is a face, the system may automatically determine a second face that is parallel to the selected face. The selection of two or more geometric elements may be performed by a user selecting two faces. The system may know that more than one selection will be performed depending on the selected type of annotation (if performed before the selection of the geometric element). The selection of two or more geometric elements may include informing the system that some geometric elements are selected, for example, by using a tactile device such as a keyboard. Thus, the selection of a second geometric element does not deselect the first selected geometric element. After the selection of two or more geometric elements is made, and if an annotation type is selected, the annotation is created. This also applies to the previous example.

[0084] Referring now to FIG. 19, an example will be described in which two geometric elements are selected to create an annotation of a dimension type (e.g., the distance between two faces of a 3D modeled object). The user selects the annotation type "dimension" by clicking icon 1800 on toolbar 54. Thus, the system recognizes that more than one geometric element may be selected. In the example of FIG. 19, the user selects geometric element 1802, which is a "hole" feature, and geometric element 1804, which is a face. This selection is made in view 5202. Annotation 1806 is created, and the unoriented view and annotation are displayed in the created fixed view. The orientation of annotation 1806 is the same as view 5202.

[0085] Referring now to Figure 20, another example will be described. In this example, two geometric elements are selected to create a dimension type annotation, e.g., the distance between two faces of a 3D modeled object. In this example, the user selects geometric element 1900 in the unoriented view. Then, the user selects geometric element 1902 in the fixed view. Then, via toolbar 54, dimension type annotation 1800 is selected, and then the annotation is created and displayed (1904, 1906). In this example, the orientation of the annotation in the unoriented view is the same as in the default fixed view 5200.

[0086] As shown in these examples, the orientation of an annotation in an unoriented view may be determined by the default fixed view at the time the annotation is created or by a fixed view in which at least one geometric element is selected.

[0087] In one example, the number of elements displayed in the view may be adapted by triggering filtering that presents particular features and associated specifications of the part / product definition. Thus, the filtering may be with respect to an unoriented view of the 3D modeled object and / or at least one fixed view of the 3D modeled object. The filtered elements may be portions of the 3D modeled object representing an assembly of CAD parts and / or portions of the 3D modeled object representing a CAD mechanical part. The filtering may be performed on the 3D modeled object by filtering the annotations of a given annotation type, such as geometric elements of the object, and / or features of the 3D modeled object representing CAD mechanical parts. The elements to be filtered may be selected on the 3D modeled object, for example, by a user action. For example, if a user needs to filter annotations of the type "text", the user can select annotations of that type on one of the views, for example with a cursor, and then select the filtering function on the toolbar, or vice versa, first select the function on the toolbar and then select the elements to be selected on one of the views.

[0088] The filtered elements are then made selectable for creating annotations. For example, the filtered geometric elements are hole features that are made available for creating annotations as a result of filtering. In one example, the filtered elements may be highlighted in at least one of the views for easy identification by a user.

[0089] It was mentioned with reference to FIG. 5 that the fixed view can be an isometric fixed view 5220 of the 3D modeled object. When two or more sides of an annotated 3D modeled object need to be displayed, a fixed axonometric view can be used. By definition, an axonometric view can be an isometric, bimetric, or trimetric view of the 3D modeled object. The axonometric fixed view can include a primary support surface, e.g., the primary support surface is defined by a plane on which the axonometric fixed view is represented. The primary surface is typically parallel to the computer screen. That is, the primary surface has the same orientation as the axonometric fixed view. The axonometric fixed view can further include one or more additional support surfaces. The primary and additional support surfaces each serve as support surfaces for displaying annotations.

[0090] In one example, the support surface and / or additional support surfaces may be graphically represented in an axonometric fixed view and / or an unoriented view. In one example, the primary support surface and / or additional support surfaces are represented in an axonometric fixed view and / or an unoriented view after a first user interaction, e.g., after a user interacts with an axonometric fixed view. The graphical representations of the primary support surface and / or additional support surfaces may be removed after a second user interaction, e.g., with a fixed view other than the axonometric fixed view. Displaying and removing the graphical representations of the primary support surface and / or additional support surfaces may be performed via a toolbar.

[0091] Figure 21 shows an example of a diagrammatic representation of the primary and additional support surfaces in the unoriented view and the axonometric fixed view. In this example, the primary support surface 2000 in the axonometric fixed view (2D) has the same orientation as the axonometric fixed view. The primary support surface 2000 in the unoriented view has the same orientation as the axonometric fixed view. Because the 3D model does not have the same orientation in the axonometric fixed view and the unoriented view, the primary support surface 2000 in the unoriented view is not parallel to the computer screen. In the example of Figure 21, three additional support surfaces are shown.

[0092] In the example of Figure 21, the display surfaces are diagrammatically represented using squares, but it is understood that any other shape is possible. The primary display surface may be highlighted, for example, represented using a different color. This makes it easier for the user to identify which display surface is the primary display surface. Each of the additional display surfaces has the same orientation as the computer's fixed view. In this example, three fixed views, specifically, a front view, a top view, and a left view, are pre-calculated.

[0093] When creating an annotation, one of the graphical representations of the primary and additional support surfaces (selected from the primary and additional support surfaces) is selected, for example by a user, and the support surface is selected. The annotation is then created and displayed in a plane parallel to the selected support surface.

[0094] Referring now to FIG. 22 , an example of creating an annotation for an axonometric fixed view will be described. The user selects a geometric element in the axonometric fixed view (2D). This selection triggers the display of a graphical representation of the primary and three additional support surfaces. At the same time, the selected geometric element is also highlighted in the unoriented view, and the graphical representations of the primary and three additional support surfaces are also shown. Once the annotation type (the “Text” type) is selected, the user can enter the annotation text, for example, in dialog box 2100. Because the user has not selected any additional support surfaces, the primary support surface is selected by default, and the annotation is displayed on a plane parallel to the primary support surface displayed in the unoriented view. The user can manipulate the annotation (e.g., move the text zone to the surface defined by the primary support surface). Once the final position of the annotation is set, the user can click the OK button in dialog box 2100, and the annotation creation is complete. In the example of Figure 22, the axonometric view is not the default fixed view, but the selection is made within the axonometric view, so the annotation is placed in the 3D scene centered on the main view of the axonometric view (no additional support planes were selected during the annotation creation process).

[0095] FIG. 23 shows an example of creating an annotation using graphical representations of a primary support surface and additional support surfaces. In this example, the axonometric view 5220 is selected as the default fixed view. The user selects the annotation type "geometric tolerance" and selects a geometric element in the 3D modeled object represented on the unoriented view. This geometric element is the "hole" feature. The feature is highlighted in both the unoriented view and the fixed view. Because the axonometric view is the default fixed view, graphical representations of the primary support surface and additional support surfaces are displayed. In this example, no selection of a geometric element has been made on the unoriented view, so these graphical representations are displayed only in the unoriented view. It will be understood that the graphical representations of the support surfaces can be displayed in both the unoriented view and the axonometric fixed view. Once the graphical representations of the support surfaces are displayed on the unoriented view, the user selects one of the support surfaces. By default, the primary support surface (represented here in a different color) is selected. In this example, the user has selected the support surface 2200, and the annotation will have the same orientation in the 3D scene as the selected support surface (here, the additional support surface 2200). Continuing with the example of Figure 23, selecting a geometric element also triggers the display of a menu for configuring the annotation to be created. Once the annotation is configured, the user may activate the OK button in the context menu, thereby confirming the creation of the annotation. The created annotation will be displayed at least on the unoriented view (here, on both views).

[0096] In one example, a user creates at least one annotation. If several annotations are to be added, the user repeats the creation process as described above. By creating at least one annotation (e.g., the user has created annotations necessary for the manufacture of a 3D modeled object), a 2D drawing conforming to the technical drawing can be generated. This generation is performed from one or more of at least one fixed view of the 3D modeled object. Because a 3D modeled object has been annotated and the fixed view is a view of the 3D modeled object, a 2D drawing conforming to the technical drawing can be created directly from the fixed view. This principle is illustrated in FIG. 24. Interestingly, the multiple sheets display and layouted 2D multiple view allows for a quick review of the generated technical drawing. This review can be easily performed to ensure in one pass that the defined content is represented and fully understood without ambiguity. do.

[0097] In one example, the generating step may include computing a computer-readable file for storing one or more of the at least one fixed view of the 3D modeled object. The computer-readable file may be in any file format. The file format may include a description of a flat document (e.g., a flat document printed on a sheet of paper). In one example, the computer-readable file may be in pdf (Portable Document Format) standardized as ISO 32000. In one example, the generating step may include printing one or more of the at least one fixed view of the 3D modeled object.

[0098] Next, a further example of the above method will be described.

[0099] In one example, the creation step may include creating the annotation by user action by selecting at least one geometric element and an annotation type on an unoriented view of the 3D modeled object. In this example, when creating from 3D, highlighting of the selected geometric element in the fixed view helps identify the support surface that represents the best or desired view. The user may decide to transfer the annotation as created to another of the shown views by selecting another fixed view as the active view. For example, in FIG. 25 , the user has selected two geometric elements for creating an annotation, e.g., of type “dimension.” Default fixed view 2500 provides the orientation of annotation 2502, which has the same orientation in the 3D scene as that of fixed view 2500. The user may select another fixed view, e.g., 2504, upon creation of the annotation, resulting in the annotation's orientation being changed to that of the newly selected fixed view 2504. Thus, in this example, view 2504 becomes the active view, while view 2500 may remain the default view. The following annotations have the default view 2500 orientation by default:

[0100] Continuing with this example, to facilitate completion of the acquisition, the creation may end in a fixed view (e.g., a second selection of geometric elements), for example, this avoids rotation of unoriented views.

[0101] In one example, the user may notify the system that the creation has occurred. For example, creating an annotation may include displaying a menu, as described with reference to Figures 22 and 23, with the user interacting with the menu to confirm that the annotation can be created. More generally, the user may perform a user interaction on a GUI to notify the system that the creation has occurred.

[0102] In one example, selecting a geometric element for creating an annotation may include highlighting the selected geometric element. This highlighting may include, but is not limited to, rendering the selected geometric element differently from non-selected geometric elements, for example, with a different color and / or texture, a different transparency level, or blinking. The highlighting may be performed for the view in which the selection is made, the view in which the selection is made and a default view, the view in which the selection is made and an active view, or all views.

[0103] In one example, the views in the 3D scene are independent views, meaning that the views are displayed independently and only one view can be changed. For example, a user may zoom in / out on one view (e.g., a non-oriented view) while leaving the magnification level of a fixed view unchanged. This allows a user to move a view from one sheet to another and change the view from one sheet to another. You can move a view or a sheet from a first layout to a second layout.

Claims

1. 1. A computer-implemented method for annotating a 3D modeled object representing a CAD mechanical part or assembly of parts, wherein two or more views of the 3D modeled object are displayed, at least one of the views conforming to a view of an engineering drawing, the method comprising: - Acquire a 3D scene (S10), an unoriented view of the 3D modeled object; - displaying at least one fixed view of said 3D modeled object; - creating (S20) an annotation by user action, by selecting at least one geometric element on at least one of said views of said 3D modeled object and a type of annotation; - displaying (S30) said created annotations at least on said unoriented view.

2. The computer-implemented method of claim 1 , further comprising the step of: - transferring the created annotation onto at least one of other views of the 3D modeled object.

3. at least one of the other views is a fixed view of the 3D modeled object; and the displaying step further comprises displaying the annotation on at least one of the other views; The computer-implemented method of claim 2 , wherein displaying the annotation on at least one of the other views and displaying the annotation on the unoriented view occur simultaneously.

4. 4. The computer-implemented method of claim 1, wherein the step of creating the annotation includes performing a first portion of the user action in the unoriented view and a second portion of the user action in the at least one fixed view, the first and second portions of the user action being each transformed for reference to the view in which the portion of the user action is performed.

5. The step of displaying at least one fixed view of the 3D modeled object comprises: - selecting a geometric element on the unoriented view of the 3D modeled object; - calculating at least one orthographic view of said 3D modeled object from said selected geometric elements.

6. The step of displaying at least one fixed view of the 3D modeled object comprises: - selecting a section line on one of said at least one fixed view of said 3D modeled object, said section line defining a cutting plane; The computer-implemented method of any one of claims 1 to 5, further comprising the step of: computing and displaying a cross-sectional view of said at least one fixed view of said 3D modeled object across said cutting plane.

7. the unoriented view of the 3D modeled object and / or the 3D modeling filtering one or more elements of the at least one fixed view of the object, the one or more elements comprising: a portion of said 3D modeled object representing an assembly of said CAD parts; - geometric elements of said 3D modeled object representing said CAD mechanical part; - features of said 3D modeled object representing said CAD mechanical part; - the annotation type in the pre-created annotations; The computer-implemented method of any one of claims 1 to 6, further comprising the step of: - making one or more of the filtered elements selectable for creating the annotation.

8. the at least one fixed view of the 3D modeled object includes an axonometric fixed view of the 3D modeled object; The step of creating an annotation comprises: - displaying a diagrammatic representation of a main support surface and of at least an additional support surface of said axonometric fixed view; - selecting one of said graphical representations, The computer-implemented method of claim 1 , wherein the step of displaying the created annotation further comprises the step of displaying the annotation in a plane parallel to the selected pointing surface.

9. The step of creating the annotation comprises: - determining whether the displayed annotation is partially or completely obscured within the at least one fixed view of the 3D modeled object; - moving the displayed annotation until the displayed annotation is fully visible.

10. The step of acquiring and displaying a 3D scene comprises:

10. The computer-implemented method of claim 1, further comprising the steps of: displaying a toolbar embedded in the 3D scene, the toolbar being available for each of the views of the 3D scene, the toolbar enabling switching between a first mode of operation, a second mode of operation, and a third mode of operation, the first mode of operation comprising displaying only the unoriented view of the 3D modeled object, the second mode of operation comprising displaying only the at least one fixed view of the 3D modeled object, and the third mode of operation comprising displaying both the unoriented view of the 3D modeled object and the at least one fixed view of the 3D modeled object.

11. The computer-implemented method of any one of claims 1 to 10, further comprising the step of generating a 2D drawing that conforms to a technical drawing from one or more of the at least one fixed view of the 3D modeled object.

12. A computer program comprising instructions for carrying out the method according to any one of claims 1 to 11.

13. A computer-readable storage medium having the computer program according to claim 12 recorded thereon.

14. 13. A system comprising a processor coupled to a memory having the computer program of claim 12 stored thereon, and a graphical user interface.