US7176942B2 - Collaborative design - Google Patents

Collaborative design Download PDF

Info

Publication number
US7176942B2
US7176942B2 US09/887,404 US88740401A US7176942B2 US 7176942 B2 US7176942 B2 US 7176942B2 US 88740401 A US88740401 A US 88740401A US 7176942 B2 US7176942 B2 US 7176942B2
Authority
US
United States
Prior art keywords
model
cell
data
constraints
workstation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime, expires
Application number
US09/887,404
Other languages
English (en)
Other versions
US20020183878A1 (en
Inventor
Valentin Chartier
Nicolas Esposito
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dassault Systemes SE
Original Assignee
Dassault Systemes SE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/815,896 external-priority patent/US7283136B2/en
Priority to US09/887,404 priority Critical patent/US7176942B2/en
Application filed by Dassault Systemes SE filed Critical Dassault Systemes SE
Assigned to DASSAULT SYSTEMES reassignment DASSAULT SYSTEMES ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHARTIER, VALENTIN, ESPOSITO, NICOLAS
Priority to CA002386272A priority patent/CA2386272C/fr
Priority to EP02291494.9A priority patent/EP1271412B1/fr
Priority to JP2002183574A priority patent/JP3762719B2/ja
Publication of US20020183878A1 publication Critical patent/US20020183878A1/en
Priority to US11/296,075 priority patent/US7663625B2/en
Publication of US7176942B2 publication Critical patent/US7176942B2/en
Application granted granted Critical
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41805Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by assembly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31064Minimal precedence constraint for components, link between components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/024Multi-user, collaborative environment
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/961Operator interface with visual structure or function dictated by intended use
    • Y10S715/964CAD or CAM, e.g. interactive design tools

Definitions

  • the present invention relates to the field computer-aided design (CAD), computer aided manufacturing (CAM), computer aided engineering (CAE), product lifecycle management (PLM), and product data management (PDM) systems (hereinafter “CAD” systems).
  • CAD computer-aided design
  • CAM computer aided manufacturing
  • CAE computer aided engineering
  • PLM product lifecycle management
  • PDM product data management
  • Rapid and clear exchange of ideas is of paramount importance when a design team is working on a project.
  • members of a design team are working intimately and in close proximity, the exchange of ideas is often ineffective and incomplete.
  • a design team may be spread across various departments within an organization, or in different geographic locations, so that team members cannot engage in a spontaneous dialogue.
  • the members of a design team may be spread across different companies, in different countries, and even different industries.
  • CAD/CAM/CAE/PLM systems generally include a geometric modeler, which is in charge of building and maintaining model geometry at all times.
  • Each geometrical element of a model that is to say each vertex, edge, face and each volume of the model, corresponds to a different cell in the geometric modeler.
  • a model of a square box would have a cell for each corner of the box (eight cells), each edge of the box (twelve cells), each face of the box (six cells), and the volume of the box (one cell).
  • each cell has a unique identifier, and contains data defining the specific geometric feature with which it is associated.
  • CAD systems build the geometry of a model from higher level specifications, called features, which are more intuitive for users and provide the user with a more flexible and more general way of defining the geometry he seeks to achieve.
  • features are defined as a set of features. Examples of features are cylinders, holes, fillets on edges, or rectangular boxes.
  • Some feature-based CAD systems may have one or more interaction components, such as a “constraint solver”.
  • a constraint solver is a component of the CAD application that allows a user to define important functional aspects of a design, and allows the system to calculate other aspects of the design so that the crucial conditions are satisfied.
  • the designer/user can specify these crucial design elements on a crude mock-up of a model, and then activate the constraint solver.
  • the constraint solver will proceed to calculate other dimensions/criteria of the design so that the crucial conditions are met.
  • Interaction components are so named because they interact with the feature modeler.
  • the geometry corresponding to a set of features is a set of cells, in which each vertex, each edge, each face and each volume corresponds to a specific cell.
  • a model feature depending on its character and complexity, when translated into cells, may translate into as few as no cells (as in the case of a non-geometrical feature, such as a geometrical constraint), one cell, or many geometrical cells.
  • each geometrical cell may come from one or more features. In other words, two or more features of a model may have common cells.
  • the geometric modeler is usually associated with a component, sometimes called the topological journal, which keeps track of the history of topological modifications in the model, and another component, sometimes called the generic name server, discussed below.
  • a parallelepiped box can usually be characterized simply by its dimensions in an x, y, z coordinate system.
  • Other features cannot be so simply characterized.
  • a particular edge of the box referred to above cannot usually be identified purely by its geometrical characteristics. It is only by reference to the box and by additional specifications of its position on the box that the edge can be uniquely identified.
  • Such a unique identifier of a cell containing this additional information is known as the “generic name” of the cell, and is generated by the generic name server.
  • the generic name of a cell is stored in the model together with the cell itself.
  • the present invention provides a system, method, and apparatus for providing greatly increased productivity in CAD modeling, and in particular, provides for synchronous collaborative design.
  • the invention presents a system and method for linking the members of a design team in an architecture that allows team members to modify a model simultaneously.
  • the system is robust in that it does not rely on a central server configuration for the processing of model changes. Changes in the model are made at each local terminal. Therefore, voluminous model data does not need to be transmitted throughout the network. Instead, only commands are transmitted over the network, which can be accomplished in much less time and with less costly hardware than if data on geometry differences were transmitted, or if the entire model is transmitted following each modification.
  • data describing a computer model being designed is stored in the memory of workstation allocated to user A.
  • A belongs to a group of users (A, B, . . . N) who are members of a design team and who therefore would be expected to collaborate with A in the further design development of the model.
  • the situation may be that a new model is to be developed and one or more users in the group are expected to collaborate towards the development of the new model.
  • Each user (B, . . . N) is equipped with a respective workstation (workstation B, . . . , workstation N) and all workstations are connected on the same computer network, which can be the Internet, an Intranet or any other type of network.
  • a group of users are identified as potential participants in the collaborative effort.
  • Each user workstation is configured to have a dedicated port for connection to the network and stores the identification data of all other workstations in the group.
  • all workstations have equal status and operate as both client and server during the entire design process.
  • This type of organization is referred to as a “peer-to-peer” organization. With a peer-to-peer organization, the failure of a workstation, or the network connection of a workstation, will only result in that workstation leaving the session, without any impact on the collaborative effort at the other workstations.
  • One of the members of the collaborative group takes the initiative to share his model (an existing one or a new one) with the group.
  • the model to be shared is the one present in the working memory of the user workstation, which may be a more recent version of an existing model stored in a storage unit of the workstation.
  • This initiative constitutes the opening of a collaborative effort session. It is now up to the other users in the group to consult the list of proposals for model sharing and to decide whether to join that particular session.
  • Any user in the group that decides to join the session receives a copy of the model in its latest state of modification. This is the only time when the model itself is transmitted from one user to another. If several users are already in session when the new user joins, in the preferred embodiment, the latter may obtain a copy of the model from any one user already in session, so that, if one specific connection is broken, joining can still be effected.
  • Any user in the session can start working on the design by modifying the model at his workstation.
  • Each user action is translated by the local system into a command taking into account the context in which the user action occurred.
  • the command is executed locally so as to change the model on the local system.
  • the command is transmitted to the other participants in the session.
  • the exchange of commands for updating the model is fully synchronous, that is to say that workstations can send and receive data simultaneously and in real time.
  • the model may be saved in its then current state at the user workstation and the user may continue to work independently on the model, if she so wishes.
  • all of the workstations have the same application software, which facilitates communication between workstations.
  • the invention can also be practiced even if some of the software is not the same on all of the workstations, as will be discussed more fully herein.
  • cell descriptors are generated for some or all of the geometrical cells of a model.
  • the cell descriptors are easily scriptable, that is to say, capable of being declared by a user in a script by using a simple and intuitive syntax.
  • the cell descriptors serve the same function as the generic names generated by the generic name server, but have several advantages, which are disclosed herein.
  • the cell descriptor system of the invention consists in the definition of a set of constraints on the properties of the target cell or set of cells.
  • the constraints relate to cell information already available in CAD systems. Five types of constraints have been defined in the preferred embodiment:
  • the cell descriptors are amenable to distribution, e.g., over communication networks, to other machines, even if these other machines use different geometric modelers and associated components. In the latter case, only a very simple interpreter would need to be added to the other machines' components to allow the cell descriptors to be understood as such by the other machines.
  • FIG. 1 is a block diagram of a computer system capable of use with the present invention, preferably as a workstation system.
  • FIG. 2 is a flow chart illustrating representative operations of a user of the present invention who wishes to share or modify a model.
  • FIG. 3 is a flow chart illustrating representative operations of a user of the present invention who wishes to join a collaborative session.
  • FIG. 4 is a flow chart illustrating representative operation of the system of the present invention during a collaborative session.
  • FIG. 5 is a schematic illustration of a system needed to achieve collaborative design in accordance with the present invention.
  • FIG. 6 is an example of a CAD system display of a model showing a cell descriptor script input according to the present invention.
  • FIG. 7 is a schematic diagram showing the progression from cell descriptor to a list of cells, according to the present invention.
  • FIG. 8 is a table that graphically displays the steps taken by the system of the present invention to create a list of cells in accordance with the cell descriptor of the present invention.
  • the computer 100 has a central processor 101 connected to a processor host bus 102 over which it provides data, address and control signals.
  • the processors 101 may be any conventional general-purpose single-chip or multi-chip microprocessor such as a Pentium® series processor, a K6 processor, a MIPS® processor, a Power PC® processor or an ALPHA® processor.
  • the processor 101 may be any conventional special purpose microprocessor such as a digital signal processor or a graphics processor.
  • the microprocessor 101 can have conventional address, data, and control lines coupling it to a processor host bus 102 .
  • the computer 100 can include a system controller 103 having an integrated RAM memory controller 104 .
  • the system controller 103 can be connected to the host bus 102 and provide an interface to random access memory 105 .
  • the system controller 103 can also provide host bus to peripheral bus bridging functions.
  • the controller 103 can thereby permit signals on the processor host bus 102 to be compatibly exchanged with signals on a primary peripheral bus 110 .
  • the peripheral bus 110 may be, for example, a Peripheral Component Interconnect (PCI) bus, an Industry Standard Architecture (ISA) bus, or a Micro-Channel bus.
  • PCI Peripheral Component Interconnect
  • ISA Industry Standard Architecture
  • Micro-Channel bus Micro-Channel bus
  • the controller 103 can thereby allow, for example, a processor 101 having a 64-bit 66 MHz interface and a 533 Mbytes/second data transfer rate to interface to a PCI bus 110 having a data path differing in data path bit width, clock speed, or data transfer rate.
  • Accessory devices including, for example, a hard disk drive control interface 111 coupled to a hard disk drive 113 , a video display controller 112 coupled to a video display 115 , and a keyboard and mouse controller 121 can be coupled to a bus 120 and controlled by the processor 101 .
  • the computer system can include a connection to a computer system network, an intranet or an internet. Data and information may be sent and received over such a connection.
  • the computer 100 can also include nonvolatile ROM memory 122 to store basic computer software routines.
  • ROM 122 may include alterable memory, such as EEPROM (Electronically Erasable Programmable Read Only Memory), to store configuration data.
  • BIOS routines 123 can be included in ROM 122 and provide basic computer initialization, systems testing, and input/output (I/O) services.
  • the BIOS 123 can also include routines that allow an operating system to be “booted” from the disk 113 . Examples of high-level operating systems are, the Microsoft Windows 98TM, Windows NTTM, Windows 2000TM, UNIX, LINUX, the Apple MacOSTM operating system, or other operating system.
  • An operating system may be fully loaded in the RAM memory 105 or may include portions in RAM memory 105 , disk drive storage 113 , or storage at a network location.
  • the operating system can provide functionality to execute software applications, software systems and tools of software systems.
  • Software functionality can access the video display controller 112 and other resources of the computer system 100 to provide models of objects on the video computer display 115 .
  • a computer such as the computer of FIG. 1 could be used as a workstation for each of the users of the present invention.
  • each workstation is connected to the other workstations through a network, such as the Internet or an Intranet, which allows decentralized communications between the workstations.
  • FIG. 2 illustrates a method that would be employed by a user of the system in the preferred embodiment.
  • the user either creates a new model 220 or opens an existing model 221 , either of which then becomes the subject of the user's activities.
  • the user issues one or more commands that are then executed 227 , changing the model.
  • the user then has the option 228 of terminating the session 229 , or continuing to modify the model.
  • a user may also decide to share the model 223 . Should the user wish to share the model the session is stored with the present configuration of the model 224 , and a collaborative session can begin 225 .
  • the user may continue to modify the model at his local workstation, while at the same time sharing the model.
  • This aspect of the method allows for true collaborative design.
  • a user continues to modify a model after beginning a collaborative design session, his commands are executed locally to modify the model at his workstation, and in addition, the commands are sent to other users in the session, as discussed more fully below.
  • FIG. 3 illustrates steps that would be taken by a user who wishes to join a collaborative design session.
  • the user queries the other workstations of the workgroup to see if any sessions are ongoing 130 .
  • the user then chooses the session he wishes to join 131 , and the model of the session is downloaded into the user's workstation 132 . As stated, this is the only time that the entire model is transmitted over the network.
  • the model since the model resides on the workstation of each user who is involved in the current collaboration, the model can be downloaded from any active user.
  • FIG. 4 illustrates the operations of a collaborative session.
  • the system is poised to accept a new user at any time 141 .
  • the user is provided with the current version of the model.
  • each workstation is poised to accept and execute local commands from the local user to modify the model 143 .
  • the commands are also transmitted to all of the users.
  • Each workstation also is poised to receive and execute commands at any time from any of the users in the collaborative session 145 . When such a command is received, the local workstation executes the command and modifies the model locally 146 .
  • users can be in communication by phone or e-mail, discussing the model and the change the user intends.
  • the advocate of a change can then make the proposed change at her workstation, which is then transmitted simultaneously to the other users in the collaborative session.
  • the changes are made at each workstation nearly simultaneously, allowing each user to see immediately exactly what the advocate had proposed, which allows the creative process to proceed unhindered.
  • commands are executed locally as a sequence of feature events, that is, a succession of read/write operations on the model.
  • the sequence of feature events constitutes a transaction, which is logged in a transaction journal.
  • the transaction journal may also include other information, such as events that do not relate to the model or events that describe the command in high-level terms.
  • a command is comprised of two parts: the order (its name) and the arguments, if any.
  • the arguments of a command include the context, e.g., the object(s) selected by the user and to which the command applies and any other information required to render the command executable. It should be understood that the types and formats of commands that can be sent over the network can vary widely and are all within the scope of the invention.
  • FIG. 5 is a schematic representation of two workstations connected via a network.
  • the distributor component ( 51 a , 51 b ), the feature modeler ( 53 a , 53 b ), and any associated interaction component(s) ( 52 a , 52 b ) (in this example, a constraint solver), if present, must be identical.
  • the application may be a CAD system on workstation 1 , and a virtual product data management system on workstation 2 .
  • the command(s) that are transmitted over the network manage feature(s).
  • the features include generic name(s), which identify the cell(s) that will be used for reconstructing the model needed by the execution of the command. If the geometric modelers are the same in workstation 1 and workstation 2 , then collaboration is possible under the present invention, provided that the generic modelers use “persistent generic naming”. “Persistent” generic naming refers to an aspect of some geometric modelers wherein once the generic name server assigns a generic name to a cell, that particular name is thereafter always used to refer to the cell. The generic name does not change when the model is modified if persistent generic naming is used.
  • cell descriptors must be used. In the event that cell descriptors are used, each workstation must be equipped with the same cell descriptor interpreter, described below.
  • FIG. 6 A detailed description of the cell descriptor is provided by referring to the example shown in FIG. 6 .
  • a model is shown on a CAD system display.
  • the model 20 resembling a waffle iron, is displayed such that two of the side faces and the upper surface are visible.
  • the display is separated into a model display portion on the right 21 , a feature tree portion on the left 22 , and menu toolbars 23 along the top of the display. It is to be understood that the configuration of the display can be varied in many ways, which are evident to a person of skill in the art.
  • FIG. 6 shows the model with the fillets already in place, for ease of illustration.
  • the number of edges onto which a fillet is to be placed is rather large (i.e., 64 edges).
  • each edge would have to be separately designated to be identified as the context of a fillet command. This could be done in existing systems, for example, by placing a cursor over each edge and clicking a mouse while holding the Ctrl key.
  • all of the desired edges can be identified with one script, which is written by the user using a simple and intuitive syntax.
  • all the desired edges can be identified and acted upon with only two user interactions.
  • the user commences a fillet command by selecting any edge of the model and designating that a fillet is to be placed on the edge.
  • the user would select an edge that is easily selectable in the display, such as edge 24 ; however, the user may select any edge to commence the command.
  • the user can then designate the edge or edges onto which he wishes the system to place a fillet by writing a cell descriptor script.
  • the user types the cell descriptor in the area on the display 25 designated for this purpose.
  • the system is instructed to add fillets to each edge that matches the given cell descriptor.
  • the system will run the script and return a list of cells that match the script.
  • the fillet command is then performed on each of the cells in the list.
  • the example illustrates the vast improvement in productivity that is achieved with the present invention.
  • the user need only designate one fillet command, and write a simple script to identify all of the desired edges. It will be understood by a person of ordinary skill in the art that the particular syntax used in writing the script can vary, provided that the script conveys the presence of one or more of the constraints discussed above.
  • the model consists of a box to which six “blind pockets” have been applied along the top face. Three of the blind pockets run parallel to one side of the box, and the other three run perpendicular to the first three blind pockets. This creates the “waffle iron” or “chocolate bar” pattern on the top face of the box.
  • the user wishes to add fillets only to the outside edges of the face with the waffle iron surface. There are sixteen such edges (four per side) that were created when the blind pockets were added. These sixteen edges are the remaining portion of the original four edges that existed along the top face of the box prior to the addition of the blind pockets.
  • the edges to which the fillets should be added are those edges that were connected to the upper face of the box prior to the addition of the blind pockets.
  • the user is able, with one script, to designate sixteen edges using information that is not directly in the model itself, but is found in history data. This greatly facilitates the design process. It can be seen that through various combinations of the constraints described above, the user will be able to select any portion of the model he desires with relative ease.
  • FIG. 7 a schematic representation of the cell descriptor processing system is shown.
  • a user wishes to target a cell or a set of cells, he declares in a cell descriptor script 30 the constraint or the sequence of constraints that define the target, as described above.
  • the system starting with the first declared constraint, goes through the whole set of cells in the model to retain only those cells which meet the constraint.
  • the system applies the next constraint to the subset of cells retained at the previous level.
  • This “filtering” process ends when all constraints have been applied.
  • the set of constraints that could be applied 32 are the constraints discussed above relating to dimension, neighborhood, history, attributes and geometry.
  • the arrows in FIG. 7 between the interpreter and the CAD system signify the exchange of codes from the interpreter to the appropriate portion of the system.
  • the interpreter determines, based on the filters in the cell descriptor, which portion of the system to access to obtain the desired cell information.
  • the set of cells available at the end of the process 33 are those which meet all the criteria set by the user in the cell descriptor. The corresponding cells can then be acted upon according to a user-defined command.
  • an interpreter 31 is shown interfacing with the geometric modeler 34 to obtain a list of cells.
  • the interpreter deciphers the syntax of the cell descriptor and determines, for each filter, the portion(s) of the CAD system that must be accessed to obtain a list of cells meeting the constraints of the filter.
  • the interpreter also serves the function of determining for the specific geometric modeler being used those portion(s) of the modeler that must be accessed to obtain a list of cells meeting the constraints of the cell descriptor.
  • the cell descriptor of the present invention is general enough to accommodate all CAD systems. The resulting list of cells generated is the same, regardless of the system used.
  • the process of the invention begins when the system receives a cell descriptor ( 40 ).
  • the cell descriptor may have been generated by the user locally, or may have been received by the system through a communications network from another user or system.
  • a list for storing the identification of cells (“cell ID”) is reset ( 41 ), and the interpreter selects the first filter in the cell descriptor script ( 42 ).
  • the interpreter then launches an algorithm asking the geometric modeler for a list of cell ids that meet the requirement of the first filter or constraint ( 43 ).
  • the geometric modeler builds a list of cell IDs that meet the constraint ( 44 ), which is stored in the list of cell IDs.
  • the system determines whether any other filters are in the cell descriptor ( 45 ). If so, the process is repeated for the next filter using the subset of cells identified in the previous level as a starting point. The cell IDs of such cells are stored, and the process repeats until all of the filters in the cell descriptor have been applied, and a final list of cell IDs is stored.
  • Macros are macro-commands that allow a user to tie several actions together and then activate the actions with one step.
  • the user can assemble in a macro a series of commands that he wishes to use repeatedly during a design process. For example, a user may wish to add a surface finish to each face of an object that faces “up”, and in addition, specify a color for such faces.
  • the user could create a macro adding a color to each selected face, and specifying a surface finish for each face. The user would then individually select in serial fashion the “up” faces, and run the macro on each face.
  • cell descriptors provide a vehicle for the introduction of design concepts based on the user's (or an enterprise's) knowledge. For example, above was discussed the case of adding a fillet to “all the external edges” of the “waffle iron” model of FIG. 6 . However, through the introduction of knowledge-based constraints, the user could select, using a cell descriptor, “all dangerous edges” of the object. The user need only define, or import from another source, the definition of a dangerous edge (for example, edges having a chamfer radius below a specified minimum). The definition of “dangerous” would be found in a macro.
  • a user also could specify cells “dynamically”, that is, the cell descriptor would specify a value for a parameter of a cell that is not fixed in the model, but is calculated during the interpretation of the cell descriptor.
  • a device such as a robot
  • the cell descriptor of the present invention could be written to access existing functionality of the CAD system to find the desired cells.
  • the cell descriptor method of the present invention can be used to create “generative scripts”, i.e., a purely textual description of an object.
  • “waffle iron” model can be created using only a scripting language using the following text as a representative example:
  • the model is defined as being composed of a part “P”, which is, in turn, composed of a box “B”, and six blind pockets.
  • the basic shape of the waffle iron part P is box B, with the specified height, width and depth dimensions (properties).
  • the box is thus created and placed at the specified location in a three dimensional (x,y,z) coordinate system.
  • the waffle iron pattern on the top face of the box is made by adding six “blind pockets” to the box, as discussed above.
  • the six blind pockets are defined by specifying the height, width and depth of the blind pocket, and specifying where in the x,y,z coordinate system the blind pockets would be placed so as to change the shape of the top face of the box.
  • the blind pockets each create a void in the part, which ultimately yields the waffle iron configuration in the top of the box.
  • the second through sixth blind pockets are defined in a similar manner, but with different x,y,z coordinates.
  • the CAD system creates a generic name for each geometric cell of the model.
  • MyModel isa Model ⁇ components: P isa Part ⁇ components: B is a Box ... Pocket1 isa Blind Pocket ... Pocket2 isa Blind Pocket ... Pocket3 isa Blind Pocket ... Pocket4 isa Blind Pocket ... Pocket5 isa Blind Pocket ... Pocket6 isa Blind Pocket ...
  • the cell descriptor designates that a fillet of radius 5.0 be placed on the edges specified in the cell descriptor.
  • the cell descriptor of the present invention allows a user to create an object entirely from a textual script, without reference to a graphical depiction of the object.
  • the user need only visualize the object in his mind, and can write a script creating the object.
  • This feature is yet another example of the way the present invention can increase the productivity of the user.
  • user A performs an action at his workstation.
  • the workstation A system then translates the user action into a command, taking into account the context of the action.
  • the system executes the command on the model at workstation A and logs the identification of the command and the transaction (the list of events) corresponding to the command, in the transaction journal of the A workstation. The system then sends the identification of the command to all other user workstations registered in the session.
  • users in a collaborative session will have conferred to see whether the use of cell descriptors is necessary. If so, then users who initiate model changes do so using cell descriptors.
  • the cell descriptors are interpreted at the receiving workstations and the command is executed.
  • receiving workstations that are not capable of deriving the command from the identification data sent may send a message back to workstation A. In that case, user A may then retransmit the command using cell descriptors.
  • all workstations may store a directory of the other workstations' capabilities regarding the various commands. In such a case, A would be informed of whether to use cell descriptors.
  • the command is analyzed in terms of the sequence of feature events it calls for, and the model is then updated.
  • each workstation is master of the model so that a network failure or a failure in one of the workstations will only result in ending the session for one or all of the workstations but will not entail any loss of data for the model itself.
  • the system does not require the transfer of a new version of the model over the network each time a modification is made, as is the case in model-driven systems. It does not even require the transfer of data on geometry differences, only of commands. This considerably limits the amount of data to be exchanged over the network.
  • collaboration is fully synchronous in that data can be sent and received by the various workstations at any time and in parallel, not just in turn as it is the case in many so-called “real-time” systems.
  • the foregoing method can be applied to any system for designing objects, including any CAD/CAM/CAE/PLM system.
  • the invention may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them.
  • Apparatus of the invention may be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method steps of the invention may be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on input data and generating output.
  • the invention may advantageously be implemented in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, 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 if desired; and in any case, the language may be a compiled or interpreted language.
  • the application may be implemented as a local Java application or inside a Web browser.
  • a processor will receive instructions and data from a read-only memory and/or a random access memory.
  • Storage devices suitable for tangibly embodying computer program instructions and data include all forms of nonvolatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing may be supplemented by, or incorporated in, specially designed ASICs (application-specific integrated circuits).
  • ASICs application-specific integrated circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Manufacturing & Machinery (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Processing Or Creating Images (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
US09/887,404 2001-03-23 2001-06-22 Collaborative design Expired - Lifetime US7176942B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US09/887,404 US7176942B2 (en) 2001-03-23 2001-06-22 Collaborative design
CA002386272A CA2386272C (fr) 2001-06-22 2002-05-14 Methode et systeme de conception collaborative
EP02291494.9A EP1271412B1 (fr) 2001-06-22 2002-06-14 Système de conception collaboratif
JP2002183574A JP3762719B2 (ja) 2001-06-22 2002-06-24 協調設計の方法、及びその装置、並びにそのシステム
US11/296,075 US7663625B2 (en) 2001-03-23 2005-12-06 Collaborative design

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/815,896 US7283136B2 (en) 2001-03-23 2001-03-23 Cell descriptor
US09/887,404 US7176942B2 (en) 2001-03-23 2001-06-22 Collaborative design

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/815,896 Continuation-In-Part US7283136B2 (en) 2001-03-23 2001-03-23 Cell descriptor

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/296,075 Continuation US7663625B2 (en) 2001-03-23 2005-12-06 Collaborative design

Publications (2)

Publication Number Publication Date
US20020183878A1 US20020183878A1 (en) 2002-12-05
US7176942B2 true US7176942B2 (en) 2007-02-13

Family

ID=25391064

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/887,404 Expired - Lifetime US7176942B2 (en) 2001-03-23 2001-06-22 Collaborative design
US11/296,075 Expired - Lifetime US7663625B2 (en) 2001-03-23 2005-12-06 Collaborative design

Family Applications After (1)

Application Number Title Priority Date Filing Date
US11/296,075 Expired - Lifetime US7663625B2 (en) 2001-03-23 2005-12-06 Collaborative design

Country Status (4)

Country Link
US (2) US7176942B2 (fr)
EP (1) EP1271412B1 (fr)
JP (1) JP3762719B2 (fr)
CA (1) CA2386272C (fr)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204564A1 (en) * 2002-04-26 2003-10-30 Keene David Antony Graphical modelling system
US20060136842A1 (en) * 2004-12-20 2006-06-22 Bernard Charles Method and computer system for interacting with a database
US20060265496A1 (en) * 2000-08-25 2006-11-23 Stefan Freitag CAD system
US20070198581A1 (en) * 2005-12-03 2007-08-23 Arnaud Nonclercq Process for selecting an object in a PLM database and apparatus implementing this process
US20080276184A1 (en) * 2006-06-14 2008-11-06 Jean Buffet Computerized collaborative work
US20080303844A1 (en) * 2007-05-01 2008-12-11 M.E.P. Cad, Inc. Methods and apparatuses for placing a flexible drop in a CAD drawing
US20080309678A1 (en) * 2007-05-01 2008-12-18 M.E.P. Cad, Inc. Methods and apparatuses for resolving a CAD drawing conflict with an arm around
US20090148050A1 (en) * 2007-05-01 2009-06-11 M.E.P. Cad, Inc. Methods and apparatuses for comparing CAD drawings
US20090273598A1 (en) * 2008-05-01 2009-11-05 M.E.P. Cad, Inc. Methods and apparatuses for automatically converting objects in CAD drawing from two-dimensions to three-dimensions
US20090293003A1 (en) * 2004-05-04 2009-11-26 Paul Nykamp Methods for Interactively Displaying Product Information and for Collaborative Product Design
US20100138762A1 (en) * 2007-05-01 2010-06-03 M.E.P. Cad, Inc. Methods and Apparatuses for Handling a Conflict in a CAD Drawing
US20100223032A1 (en) * 2007-05-01 2010-09-02 M.E.P. CAD Inc. Methods and Apparatuses for Proposing Resolutions to Conflicts in a CAD Drawing with Reflections
US20100251028A1 (en) * 2007-05-01 2010-09-30 Reghetti Joseph P Systems and methods for identifying crash sources in a cad environment
US20110225183A1 (en) * 2010-03-11 2011-09-15 Siemens Product Lifecycle Management Software Inc. System and method for digital assistance agents in product lifecycle management
US8150660B2 (en) 2007-05-01 2012-04-03 M.E.P. Cad, Inc. Methods and apparatuses for automatically selecting a pipe in a CAD drawing
CN102483860A (zh) * 2009-06-10 2012-05-30 图形科技公司 利用3d对象的空间边界的本体过滤
US20130239011A1 (en) * 2012-03-08 2013-09-12 Brigham Young University Multi-User Decomposition of Design Space Models
US8554520B2 (en) 2007-05-01 2013-10-08 Auto Prep, Llc Systems and methods for differentiating and associating multiple drawings in a CAD environment
US8560109B1 (en) * 2006-02-09 2013-10-15 Cadence Design Systems, Inc. Method and system for bi-directional communication between an integrated circuit (IC) layout editor and various IC pattern data viewers
US20130297268A1 (en) * 2012-05-04 2013-11-07 Siemens Product Lifecycle Management Software Inc. Determining boolean region participants for a notional context given arbitrary bodies
US20140278275A1 (en) * 2013-03-15 2014-09-18 IronCAD, LLC Computer-aided design multi-user design negotiation system and method thereof
US9122817B2 (en) 2011-06-09 2015-09-01 Brigham Young University Collaborative CAx apparatus and method
US9454623B1 (en) 2010-12-16 2016-09-27 Bentley Systems, Incorporated Social computer-aided engineering design projects
US9606526B2 (en) 2014-05-28 2017-03-28 Siemens Product Lifecycle Management Software Inc. Intelligent constraint selection for positioning tasks
US10143872B2 (en) 2011-05-27 2018-12-04 Victaulic Company Flexible dry sprinkler
US10635756B2 (en) 2013-03-15 2020-04-28 Bushel Stop Inc. Method and system for designing goods
US20200356879A1 (en) * 2018-01-31 2020-11-12 Landmark Technology Corporation Information processing device, control method of information processing device, and storage medium
US11281820B2 (en) 2019-04-02 2022-03-22 Desktop Metal, Inc. Systems and methods for growth-based design
US12029929B2 (en) 2020-09-08 2024-07-09 Victaulic Company Flexible dry sprinkler

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9942286B2 (en) * 2000-01-25 2018-04-10 Autodesk, Inc. Collaboration platform
US7283136B2 (en) * 2001-03-23 2007-10-16 Dassault Systemes Cell descriptor
US20020188682A1 (en) * 2001-06-08 2002-12-12 Manlsh Jaln Method and system for manufacturing supply chain collaboration
US7155375B1 (en) * 2001-09-17 2006-12-26 Impactxoft Method and system for designing objects using design intent merge
US7650260B1 (en) 2001-09-17 2010-01-19 Impact Xoft Method and system for designing objects using functional object representation
US6938070B2 (en) * 2001-12-17 2005-08-30 Dassault Systemes Conflict resolution for collaborative work system
US7280948B2 (en) * 2002-01-31 2007-10-09 Delphi Technologies, Inc. System and method for integrating geometric models
US7577588B2 (en) * 2004-05-04 2009-08-18 Paul Nykamp Methods for interactively displaying product information and for collaborative product design
EP1672548A1 (fr) 2004-12-20 2006-06-21 Dassault Systèmes Procédé et système pour le rendu d'un objet dans une vue à l'aide d'une base de données de gestion du cycle de vie de produits
JP4765063B2 (ja) * 2005-04-04 2011-09-07 国立大学法人電気通信大学 3次元cadシステム及びソリッドモデルの作成方法
US7752253B2 (en) * 2005-04-25 2010-07-06 Microsoft Corporation Collaborative invitation system and method
FR2886030B1 (fr) * 2005-05-19 2007-08-10 Airbus Sas Procede et dispositif de generation d'un modele parametrique lie a une geometrie 3d
DE102005055133A1 (de) 2005-08-18 2007-02-22 Pace Aerospace Engineering And Information Technology Gmbh System für den maschinengestützten Entwurf technischer Vorrichtungen
ITMI20061114A1 (it) 2006-06-09 2007-12-10 Djamel Tebboune Lavozrazione autmatica e-o tracciatura di un oggetto a componenti multipli
CA2702509A1 (fr) * 2006-10-13 2008-04-17 Ets Systeme de support pour un travail en collaboration
EP1939771A1 (fr) * 2006-12-28 2008-07-02 Dassault Systèmes Procédé et produit de programme informatique pour la concéption assistée par ordinateur d'un produit qui comporte une multitude d'objets contraintes
FI20075084A0 (fi) * 2007-02-06 2007-02-06 Tekla Corp Tietokoneavusteinen mallintaminen
US8345043B2 (en) * 2007-04-13 2013-01-01 Autodesk, Inc. Solving networks of geometric constraints
US20090192857A1 (en) * 2008-01-25 2009-07-30 Morse Richard A Product Lifecycle Management Method and Apparatus
US8589809B2 (en) * 2008-02-28 2013-11-19 Chevron U.S.A. Inc. Methods and systems for conducting a meeting in a virtual environment
US9141087B2 (en) 2009-04-26 2015-09-22 Nike, Inc. Athletic watch
JP5643809B2 (ja) 2009-04-26 2014-12-17 ナイキ イノベイト セー. フェー. 運動用時計システムのgps特徴および機能性
US9269102B2 (en) * 2009-05-21 2016-02-23 Nike, Inc. Collaborative activities in on-line commerce
JP5440186B2 (ja) * 2010-01-06 2014-03-12 富士通株式会社 設計支援装置および設計支援プログラム
EP2548146A1 (fr) * 2010-03-15 2013-01-23 Cimatron Ltd. Calculs de trajectoire d'outil cnc distribués
US8818769B2 (en) * 2010-10-28 2014-08-26 Parametric Technology Corporation Methods and systems for managing synchronization of a plurality of information items of a computer-aided design data model
US20120110595A1 (en) * 2010-10-28 2012-05-03 Michael Reitman Methods and systems for managing concurrent design of computer-aided design objects
US8890867B2 (en) 2010-10-28 2014-11-18 Parametric Technology Corporation Methods and systems for dynamically loading portions of a computer-aided design model on demand
WO2012058607A2 (fr) * 2010-10-28 2012-05-03 Parametric Technology Corporation Procédés et systèmes de conception assistée par ordinateur
US8892404B2 (en) 2010-10-28 2014-11-18 Parametric Technology Corporation Methods and systems for consistent concurrent operation of a plurality of computer-aided design applications
US8825459B2 (en) * 2010-11-29 2014-09-02 Autodesk, Inc. Multi-modal manipulation of a geometric model
US20120297319A1 (en) * 2011-05-20 2012-11-22 Christopher Craig Collins Solutions Configurator
US9323871B2 (en) 2011-06-27 2016-04-26 Trimble Navigation Limited Collaborative development of a model on a network
WO2013074565A1 (fr) 2011-11-15 2013-05-23 Trimble Navigation Limited Fourniture d'un procédé de visualisation partagée en temps réel dans un environnement de modélisation en trois dimensions
EP2780826B1 (fr) 2011-11-15 2020-08-12 Trimble Inc. Développement collaboratif de modèle 3d basé sur un navigateur
US9218692B2 (en) 2011-11-15 2015-12-22 Trimble Navigation Limited Controlling rights to a drawing in a three-dimensional modeling environment
US10868890B2 (en) 2011-11-22 2020-12-15 Trimble Navigation Limited 3D modeling system distributed between a client device web browser and a server
EP2823421B1 (fr) * 2012-03-08 2021-09-08 Brigham Young University Décomposition multiutilisateur de modèles d'espace de conception
US20140089817A1 (en) * 2012-09-27 2014-03-27 Siemens Product Lifecycle Management Software Inc. Distributed systems and methods for collaborative creation and modification of geometric models
BR112015011900A2 (pt) * 2012-11-23 2017-07-11 Univ Brigham Young sistema, método e aparato para edição colaborativa de cax.
CA2842975C (fr) * 2013-02-14 2021-10-19 TeamUp Technologies, Inc. Systeme collaboratif multiutilisateur servant a visualiser, rendre et modifier des elements 3d
WO2014176456A1 (fr) * 2013-04-25 2014-10-30 Brigham Young University Procédé et appareil permettant une création de trajectoire d'outil multiutilisateur simultané
NO3021696T3 (fr) * 2013-09-20 2018-10-20
US10402504B1 (en) * 2013-12-10 2019-09-03 Enovation Controls, Llc Time-saving and error-minimizing multiscopic hydraulic system design canvas
US10366178B2 (en) 2014-01-27 2019-07-30 Brigham Young University Multi-user CAx editing of a model of a design object
US10002150B1 (en) 2014-02-11 2018-06-19 United Technologies Corporation Conflict resolution for a multi-user CAx environment
US9875311B2 (en) * 2014-06-12 2018-01-23 Brigham Young University Collaborative CAx updates
US20170024447A1 (en) * 2015-03-11 2017-01-26 Brigham Young University System, method, and apparatus for collaborative editing of common or related computer based software output
CN105573274B (zh) * 2015-12-16 2018-04-13 山东山大华天软件有限公司 基于plm系统的ts16949关联对象控制方法
US10650552B2 (en) 2016-12-29 2020-05-12 Magic Leap, Inc. Systems and methods for augmented reality
EP3343267B1 (fr) 2016-12-30 2024-01-24 Magic Leap, Inc. Appareil de découplage de lumière polychromatique, affichages proches de l' il le comprenant et procédé de découplage de lumière polychromatique
US10229518B2 (en) * 2017-04-10 2019-03-12 Prysm, Inc. Drag to undo/redo a digital ink canvas using a visible history palette
CN116990888A (zh) 2017-12-10 2023-11-03 奇跃公司 光波导上的抗反射涂层
WO2019178567A1 (fr) 2018-03-15 2019-09-19 Magic Leap, Inc. Correction d'image due à la déformation de composants d'un dispositif de visualisation
CA3092884A1 (fr) * 2018-03-27 2019-10-03 Spacedraft Pty Ltd Systeme de planification de contenu multimedia
US20190303456A1 (en) * 2018-03-28 2019-10-03 Honda Motor Co., Ltd. Data synchronization and methods of use thereof
CN112074331A (zh) * 2018-05-02 2020-12-11 任天堂株式会社 信息处理程序、信息处理装置、信息处理系统以及信息处理方法
WO2019231850A1 (fr) 2018-05-31 2019-12-05 Magic Leap, Inc. Localisation de posture de tête par radar
WO2020010097A1 (fr) 2018-07-02 2020-01-09 Magic Leap, Inc. Modulation d'intensité de pixel en utilisant la modification de valeurs de gain
US11856479B2 (en) 2018-07-03 2023-12-26 Magic Leap, Inc. Systems and methods for virtual and augmented reality along a route with markers
WO2020028191A1 (fr) 2018-08-03 2020-02-06 Magic Leap, Inc. Correction de dérive basée sur une pose non fusionnée d'une pose fusionnée d'un totem dans un système d'interaction d'utilisateur
CN112955073A (zh) 2018-08-22 2021-06-11 奇跃公司 患者观察系统
US11445232B2 (en) * 2019-05-01 2022-09-13 Magic Leap, Inc. Content provisioning system and method
WO2021021742A1 (fr) * 2019-07-26 2021-02-04 Geopogo Conception et visualisation rapides de conceptions tridimensionnelles avec entrée multiutilisateur
US11805176B1 (en) * 2020-05-11 2023-10-31 Apple Inc. Toolbox and context for user interactions
US11743340B2 (en) * 2020-06-10 2023-08-29 Snap Inc. Deep linking to augmented reality components
EP4211540A1 (fr) * 2020-09-14 2023-07-19 InterDigital CE Patent Holdings, SAS Format de représentation de scène haptique
US20220413433A1 (en) * 2021-06-28 2022-12-29 Meta Platforms Technologies, Llc Holographic Calling for Artificial Reality
US20230055819A1 (en) * 2021-08-18 2023-02-23 Target Brands, Inc. Virtual reality system for retail store design
US11934569B2 (en) * 2021-09-24 2024-03-19 Apple Inc. Devices, methods, and graphical user interfaces for interacting with three-dimensional environments
US11995789B2 (en) * 2022-06-15 2024-05-28 VRdirect GmbH System and method of creating, hosting, and accessing virtual reality projects
US20240073372A1 (en) * 2022-08-31 2024-02-29 Snap Inc. In-person participant interaction for hybrid event

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5337407A (en) * 1991-12-31 1994-08-09 International Business Machines Corporation Method and system for identifying users in a collaborative computer-based system
US5519627A (en) * 1992-05-01 1996-05-21 Vlsi Technology, Inc. Datapath synthesis method and apparatus utilizing a structured cell library
US5960173A (en) * 1995-12-22 1999-09-28 Sun Microsystems, Inc. System and method enabling awareness of others working on similar tasks in a computer work environment
US5973678A (en) * 1997-08-29 1999-10-26 Ford Global Technologies, Inc. Method and system for manipulating a three-dimensional object utilizing a force feedback interface
US6323863B1 (en) * 1997-03-11 2001-11-27 Monolith Co., Ltd. Object structure graph generation and data conversion using the same
US6453328B1 (en) * 1993-02-26 2002-09-17 Object Technology Licensing Corporation Model tracking object-oriented system for collaborative data editing with non-compatible computer peripheral devices
US6629065B1 (en) * 1998-09-30 2003-09-30 Wisconsin Alumni Research Foundation Methods and apparata for rapid computer-aided design of objects in virtual reality and other environments
US6912565B1 (en) * 1997-10-22 2005-06-28 British Telecommunications Public Limited Company Distributed virtual environment

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4701583A (en) * 1986-03-10 1987-10-20 Takamatsu Electric Works, Ltd. Gas switch
JPH0789382B2 (ja) * 1991-03-14 1995-09-27 インターナショナル・ビジネス・マシーンズ・コーポレイション 形状モデルを生成する方法及び装置
US5345490A (en) * 1991-06-28 1994-09-06 General Electric Company Method and apparatus for converting computed tomography (CT) data into finite element models
JPH05233735A (ja) 1992-02-24 1993-09-10 Mutoh Ind Ltd 図面編集装置
US5649104A (en) * 1993-03-19 1997-07-15 Ncr Corporation System for allowing user of any computer to draw image over that generated by the host computer and replicating the drawn image to other computers
JPH07282117A (ja) * 1994-04-08 1995-10-27 Ricoh Co Ltd 自由曲面生成方法及び自由曲面形状の制御方法
EP0758470B1 (fr) * 1994-05-05 2002-07-24 Northrop Grumman Corporation Procede et appareil de localisation et d'identification d'un objet a etudier dans une image complexe
JP2692583B2 (ja) 1994-06-13 1997-12-17 日本電気株式会社 設計システム協調方式
JPH08129572A (ja) 1994-10-31 1996-05-21 Toppan Printing Co Ltd Cadシステムおよびそのデータ処理方法
JPH08329139A (ja) 1995-06-02 1996-12-13 Daikin Ind Ltd 建築設計方法および建築設計システム
US5821925A (en) * 1996-01-26 1998-10-13 Silicon Graphics, Inc. Collaborative work environment supporting three-dimensional objects and multiple remote participants
US6113647A (en) * 1996-11-06 2000-09-05 Vlsi Technology, Inc. Computer aided design system and method using hierarchical and flat netlist circuit representations
JPH10149432A (ja) 1996-11-21 1998-06-02 Matsushita Electric Ind Co Ltd 三次元形状検索装置
JPH10240790A (ja) 1997-02-27 1998-09-11 Nissan Motor Co Ltd フィレット面の作成指示方法
JPH1185826A (ja) 1997-09-11 1999-03-30 Sony Corp 描画データ処理システムおよび描画データの処理方法
US6470489B1 (en) * 1997-09-17 2002-10-22 Numerical Technologies, Inc. Design rule checking system and method
JPH11126219A (ja) 1997-10-23 1999-05-11 Mitsubishi Electric Corp 図面作成装置及び図面作成方法
JP3559154B2 (ja) * 1997-11-10 2004-08-25 富士通株式会社 三次元モデル作成装置及び方法並びに三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体
WO1999034336A1 (fr) * 1997-12-29 1999-07-08 The United States Of America, Represented By The Administrator Of The National Aeronautics And Space Administration (Nasa) Traitement geometrique triangulaire pour surfaçage et generation d'un grillage cartesien
US6879324B1 (en) * 1998-07-14 2005-04-12 Microsoft Corporation Regional progressive meshes
US6272671B1 (en) * 1998-09-11 2001-08-07 Lsi Logic Corporation Extractor and schematic viewer for a design representation, and associated method
GB2354096B (en) 1999-07-30 2003-11-12 Parametric Tech Corp Method and system for obtaining design parameters for satisfying multiple constraints and/or optimizing multiple objective functions
US6505326B1 (en) * 2000-09-29 2003-01-07 General Electric Company Analyzing thermal characteristics of geometries
US6526550B1 (en) * 2000-09-29 2003-02-25 General Electric Company Analyzing characteristics of geometries

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5337407A (en) * 1991-12-31 1994-08-09 International Business Machines Corporation Method and system for identifying users in a collaborative computer-based system
US5519627A (en) * 1992-05-01 1996-05-21 Vlsi Technology, Inc. Datapath synthesis method and apparatus utilizing a structured cell library
US6453328B1 (en) * 1993-02-26 2002-09-17 Object Technology Licensing Corporation Model tracking object-oriented system for collaborative data editing with non-compatible computer peripheral devices
US5960173A (en) * 1995-12-22 1999-09-28 Sun Microsystems, Inc. System and method enabling awareness of others working on similar tasks in a computer work environment
US6323863B1 (en) * 1997-03-11 2001-11-27 Monolith Co., Ltd. Object structure graph generation and data conversion using the same
US5973678A (en) * 1997-08-29 1999-10-26 Ford Global Technologies, Inc. Method and system for manipulating a three-dimensional object utilizing a force feedback interface
US6912565B1 (en) * 1997-10-22 2005-06-28 British Telecommunications Public Limited Company Distributed virtual environment
US6629065B1 (en) * 1998-09-30 2003-09-30 Wisconsin Alumni Research Foundation Methods and apparata for rapid computer-aided design of objects in virtual reality and other environments

Non-Patent Citations (15)

* Cited by examiner, † Cited by third party
Title
Bentley et al., Basic Support for Cooperative Work on the World Wide Web, 1997.
Bhola and Ahamad, Phase Timestamping for Replica Consistency in Interactive Collaborative Applications, 1999.
Bhola, Banavar, and Ahamad, Responsiveness and Consistency Tradeoffs in Interactive Groupware, 1998.
Coupling Application Design and user interface design. Dennis J.M.J. de Baar, 1992 ACM pp. 259-266. *
Dourish and Bellotti, Awareness and Coordination in Shared Work Spaces, 1991.
European Search Report dated Jan. 23, 2006 from corresponding application no. 02291494.9.
G. Hillebrand et al., "Integration-Based Cooperation in Con-Current Engineering," Enterprise Distributed Object Computing Workshop 1998, Nov. 3, 1998, pp. 344-355.
G. Konduri et al., "A Framework for Collaborative and Distributed for Web-Based Design," Design Automation 1999, Jun. 21, 1999, pp. 898-903.
Greenberg and Roseman, Groupware Toolkits for Synchronous Work, 1996.
Machine interpretation of CAD data for manufacturing applications Qiang Ji, Michael M. Marefat Sep. 1997. *
Micro Office 2000 Professional Edition 1999, Chapter 12, pp. 265-284. *
Ricardo Galli, Data Consistency Methods for Collaborative 3D Editing, 2000.
Saul Greenberg and David Marwood, Real Time Groupware as a Distributed System: Concurrency Control and its Effect on the Interface, 1994.
The Abstraction-link-view paradigm: Using constrains to connect user interfaces to Applications. Ralph D. Hill, 1992, pp. 335-342. *
W. Keith Edwards, Flexible Conflict Detection and Management in Collaborative Applications, 1997.

Cited By (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214423B2 (en) * 2000-08-25 2012-07-03 Hewlett-Packard Company CAD system
US20060265496A1 (en) * 2000-08-25 2006-11-23 Stefan Freitag CAD system
US20030204564A1 (en) * 2002-04-26 2003-10-30 Keene David Antony Graphical modelling system
US8069087B2 (en) 2004-05-04 2011-11-29 Paul Nykamp Methods for interactive and synchronous display session
US8311894B2 (en) 2004-05-04 2012-11-13 Reliable Tack Acquisitions Llc Method and apparatus for interactive and synchronous display session
US20090293003A1 (en) * 2004-05-04 2009-11-26 Paul Nykamp Methods for Interactively Displaying Product Information and for Collaborative Product Design
US20100191808A1 (en) * 2004-05-04 2010-07-29 Paul Nykamp Methods for interactive and synchronous display session
US20100205533A1 (en) * 2004-05-04 2010-08-12 Paul Nykamp Methods for interactive and synchronous display session
US7908178B2 (en) 2004-05-04 2011-03-15 Paul Nykamp Methods for interactive and synchronous displaying session
US8930415B2 (en) * 2004-12-20 2015-01-06 Dassault Systemes Method and computer system for interacting with a database
US20060136842A1 (en) * 2004-12-20 2006-06-22 Bernard Charles Method and computer system for interacting with a database
US20070198581A1 (en) * 2005-12-03 2007-08-23 Arnaud Nonclercq Process for selecting an object in a PLM database and apparatus implementing this process
US7620638B2 (en) * 2005-12-30 2009-11-17 Dassault Systemes Process for selecting an object in a PLM database and apparatus implementing this process
US8560109B1 (en) * 2006-02-09 2013-10-15 Cadence Design Systems, Inc. Method and system for bi-directional communication between an integrated circuit (IC) layout editor and various IC pattern data viewers
US20080276184A1 (en) * 2006-06-14 2008-11-06 Jean Buffet Computerized collaborative work
US7814429B2 (en) 2006-06-14 2010-10-12 Dassault Systemes Computerized collaborative work
US8368717B2 (en) 2007-05-01 2013-02-05 Auto Prep, Llc Methods and apparatuses for comparing CAD drawings
US8600706B2 (en) 2007-05-01 2013-12-03 Auto Prep, Llc Systems and methods for identifying crash sources in a CAD environment
US20100223032A1 (en) * 2007-05-01 2010-09-02 M.E.P. CAD Inc. Methods and Apparatuses for Proposing Resolutions to Conflicts in a CAD Drawing with Reflections
US20080303844A1 (en) * 2007-05-01 2008-12-11 M.E.P. Cad, Inc. Methods and apparatuses for placing a flexible drop in a CAD drawing
US20100138762A1 (en) * 2007-05-01 2010-06-03 M.E.P. Cad, Inc. Methods and Apparatuses for Handling a Conflict in a CAD Drawing
US8150660B2 (en) 2007-05-01 2012-04-03 M.E.P. Cad, Inc. Methods and apparatuses for automatically selecting a pipe in a CAD drawing
US8773425B2 (en) * 2007-05-01 2014-07-08 M.E.P. CAD Inc. Methods and apparatuses for proposing resolutions to conflicts in a CAD drawing with reflections
US20100121614A1 (en) * 2007-05-01 2010-05-13 M.E.P. Cad, Inc. Methods and Apparatuses for Preprocessing a CAD Drawing
US8224628B2 (en) 2007-05-01 2012-07-17 M.E.P. Cad, Inc. Methods and apparatuses for placing a flexible drop in a CAD drawing
US20100251028A1 (en) * 2007-05-01 2010-09-30 Reghetti Joseph P Systems and methods for identifying crash sources in a cad environment
US20090148050A1 (en) * 2007-05-01 2009-06-11 M.E.P. Cad, Inc. Methods and apparatuses for comparing CAD drawings
US8441502B2 (en) 2007-05-01 2013-05-14 M.E.P. Cad, Inc. Methods and apparatuses for resolving a CAD drawing conflict with an arm around
US8732599B2 (en) 2007-05-01 2014-05-20 M.E.P. CAD Inc. Methods and apparatuses for handling a conflict in a CAD drawing
US8554520B2 (en) 2007-05-01 2013-10-08 Auto Prep, Llc Systems and methods for differentiating and associating multiple drawings in a CAD environment
US20080309678A1 (en) * 2007-05-01 2008-12-18 M.E.P. Cad, Inc. Methods and apparatuses for resolving a CAD drawing conflict with an arm around
US20090273598A1 (en) * 2008-05-01 2009-11-05 M.E.P. Cad, Inc. Methods and apparatuses for automatically converting objects in CAD drawing from two-dimensions to three-dimensions
US9983763B2 (en) 2009-06-10 2018-05-29 Hexagon Technology Center Gmbh Geometrical and ontological filtering using spatial boundary of 3D objects
CN102483860A (zh) * 2009-06-10 2012-05-30 图形科技公司 利用3d对象的空间边界的本体过滤
US10031640B2 (en) 2009-06-10 2018-07-24 Hexagon Technology Center Gmbh Hierarchical filtering using spatial boundary of 3D objects
CN102483860B (zh) * 2009-06-10 2015-07-15 鹰图公司 利用3d对象的空间边界的本体过滤
US20110225183A1 (en) * 2010-03-11 2011-09-15 Siemens Product Lifecycle Management Software Inc. System and method for digital assistance agents in product lifecycle management
US8984001B2 (en) * 2010-03-11 2015-03-17 Siemens Product Lifecyle Management Software Inc. System and method for digital assistance agents in product lifecycle management
US9454623B1 (en) 2010-12-16 2016-09-27 Bentley Systems, Incorporated Social computer-aided engineering design projects
US10143872B2 (en) 2011-05-27 2018-12-04 Victaulic Company Flexible dry sprinkler
US9122817B2 (en) 2011-06-09 2015-09-01 Brigham Young University Collaborative CAx apparatus and method
US10242430B2 (en) * 2012-03-08 2019-03-26 Brigham Young University Graphical interface for collaborative editing of design space models
US20130239011A1 (en) * 2012-03-08 2013-09-12 Brigham Young University Multi-User Decomposition of Design Space Models
US10102331B2 (en) * 2012-05-04 2018-10-16 Siemens Product Lifecycle Management Software Inc. Determining boolean region participants for a notional context given arbitrary bodies
US20130297268A1 (en) * 2012-05-04 2013-11-07 Siemens Product Lifecycle Management Software Inc. Determining boolean region participants for a notional context given arbitrary bodies
US9734266B2 (en) * 2013-03-15 2017-08-15 IronCAD, LLC Computer-aided design multi-user design negotiation system and method thereof
US20140278275A1 (en) * 2013-03-15 2014-09-18 IronCAD, LLC Computer-aided design multi-user design negotiation system and method thereof
US10635756B2 (en) 2013-03-15 2020-04-28 Bushel Stop Inc. Method and system for designing goods
US9606526B2 (en) 2014-05-28 2017-03-28 Siemens Product Lifecycle Management Software Inc. Intelligent constraint selection for positioning tasks
US20200356879A1 (en) * 2018-01-31 2020-11-12 Landmark Technology Corporation Information processing device, control method of information processing device, and storage medium
US11281820B2 (en) 2019-04-02 2022-03-22 Desktop Metal, Inc. Systems and methods for growth-based design
US12029929B2 (en) 2020-09-08 2024-07-09 Victaulic Company Flexible dry sprinkler

Also Published As

Publication number Publication date
JP3762719B2 (ja) 2006-04-05
US20060250418A1 (en) 2006-11-09
EP1271412A2 (fr) 2003-01-02
EP1271412B1 (fr) 2019-02-27
CA2386272C (fr) 2010-03-09
JP2003099470A (ja) 2003-04-04
CA2386272A1 (fr) 2002-12-22
US7663625B2 (en) 2010-02-16
EP1271412A3 (fr) 2006-03-15
US20020183878A1 (en) 2002-12-05

Similar Documents

Publication Publication Date Title
US7176942B2 (en) Collaborative design
Chen et al. Internet-enabled real-time collaborative assembly modeling via an e-Assembly system: status and promise
US6292707B1 (en) Integrated design and manufacturing system
Anumba et al. Communications issues in concurrent life-cycle design and construction
Smith Using multiple genetic operators to reduce premature convergence in genetic assembly planning
Zhao et al. STEP-based multiview integrated product modelling for concurrent engineering
US7466313B2 (en) Method for interactive construction of virtual 3D models
US7283136B2 (en) Cell descriptor
Schmid Design Patterns to Construct the Hot Spots of
US20050010386A1 (en) Method and system for dynamically modeling resources
Satapathy et al. Distributed intelligent architecture for logistics (DIAL)
Wang et al. Research on consistency maintenance of the real-time image editing system based on bitmap
Chen et al. Collaborative design environment with multiple CAD systems
Cunha et al. An architecture to support the manufacturing system design and planning
KR100317227B1 (ko) 지능망서비스생성을위한개방형서비스생성환경장치및제어방법
US20050177355A1 (en) Cooperative work type application service system
Zhou et al. Implementation of collaborative design environment based on single user CAD systems
Kotulski et al. Synchronisation methods in graph-based knowledge representation for large-scale design process
Kang et al. Fixture assembly planning in a Web-based collaborative environment
KR100366380B1 (ko) 분산협력 시스템 환경하에서 쓰리디 스튜디오 맥스플러그인을 이용한 쓰리디 객체 공유방법
US20220215136A1 (en) System and method for multi-user spatial impact analysis and management
Lu et al. A collaborative scene editor for VRML worlds
Zhang et al. A feature-based collaborative CAD system
JP4732494B2 (ja) 協調作業型アプリケーション・サービス・システム
CN108427839A (zh) 一种应用于二维设计软件和三维设计软件的数据交换方法

Legal Events

Date Code Title Description
AS Assignment

Owner name: DASSAULT SYSTEMES, FRANCE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHARTIER, VALENTIN;ESPOSITO, NICOLAS;REEL/FRAME:012217/0413;SIGNING DATES FROM 20010712 TO 20010829

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

SULP Surcharge for late payment
FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553)

Year of fee payment: 12