METHOD AND APPARATUS FOR ELECTRONIC DELIVERY OF ELECTRONIC MODEL IMAGES
A method, apparatus, and article of manufacture provide a distributed computing system delivering and manipulating electronic model images to end users. One aspect of the present invention includes a method for providing electronic delivery of electronic model images. The method generates one or more electronic model images, a portion of the electronic model images being generated from scanned electronic data of a physical object, stores the electronic model images within computer readable memory of a server-based computing system, delivers the electronic model images to a remote client computer over a distributed communications network, manipulates the electronic model images upon the remote client computer, and performs analysis and a course of action using the manipulated electronic model images. The electronic model images comprise in part a polygonal mesh representation of the physical object.
Latest GeoDigm Corporation Patents:
- Dental prosthesis manufacturing aids
- Method and apparatus for matching digital three-dimensional dental models with digital three-dimensional cranio-facial CAT scan records
- Method for manufacturing a dental prosthesis
- DESIGN AND MANUFACTURE OF DENTURES
- Dental prosthesis manufacturing process, dental prosthesis pattern and dental prosthesis made thereby
This application is a Continuation Application of U.S. application Ser. No. 11/330,797, filed Jan. 11, 2006, which is a Continuation Application of U.S. patent application Ser. No. 09/846,037, filed Apr. 29, 2001, now U.S. Pat. No. 7,200,642, and which application(s) are incorporated herein by reference. A claim of priority to all, to the extent appropriate is made.
TECHNICAL FIELDThe invention relates generally to a distributed computing system for the creation and distribution of electronic models of objects and more particularly to a system, method and article of manufacture for delivering and manipulating electronic model images to end users using a distributed computing system.
BACKGROUNDComputational resources available for use by various end users of computing systems has increased significantly. This increase in capability of systems has created the ability for many more end users to utilize computer based image systems to replace processes that utilize paper and physical model processes. In the past, computer aided design, drafting, and manufacture (CAD/CAM) tools represented an area of applications in which computer based image systems have migrated from paper and model based processes to electronic systems.
These CAD/CAM system typically consist of design and drafting tools that allow technical designers to build systems that were previously designed on paper using draftsmen. Over time, the computing system and their respective tools have allowed increasing interactive manipulation of components during the design process. This advance in design of items that are then manufactured has occurred using these computer aided systems.
These CAD/CAM systems, however, typically start their processes with a set of pre-defined libraries of components that may be used by the user of the computing system. For example, electronic schematics possess a library of components that are used to specify a circuit and its layout. The creation of these libraries, as well as the amount of computational resources needed to perform the operations related to these systems, has prevented the wide-spread use of these systems in other areas of technology.
With the advances recently made computational systems, these computer based image systems may be used to permit end users to replace paper and physical models with electronic images. Two areas of technology present additional obstacles to the more widespread use of these systems. First, a mechanism to capture image representations of physical objects accurately and with sufficient resolution is needed in a form that is both inexpensive to operate while providing rapid turn-around for users. Second, a mechanism to easily transmit the images to end users from the location where the image representation of physical objects are generated is also needed. Neither of these latter obstacles has been overcome in existing imaging systems.
SUMMARYThe present invention relates to a method, apparatus, and article of manufacture for delivering and manipulating electronic model images to end users using a distributed computing system.
A system in accordance with the principles of the present invention includes a distributed computing system delivering and manipulating electronic model images to end users. One aspect of the present invention includes a method for providing electronic delivery of electronic model images. The method generates one or more electronic model images, a portion of the electronic model images being generated from scanned electronic data of a physical object, stores the electronic model images within computer readable memory of a server-based computing system, delivers the electronic model images to a remote client computer over a distributed communications network, manipulates the electronic model images upon the remote client computer, and performs analysis and a course of action using the manipulated electronic model images. The electronic model images comprise in part a polygonal mesh representation of the physical object.
Other embodiments of a system in accordance with the principles of the invention may include alternative or optional additional aspects. One such aspect of the present invention is a method and computer data product encoding instructions for providing electronic model image data files to a remote client computer using a server-based computing system over a distributed communications network. The method receives an electronic model image data files by the server-based computing system, stores the electronic model image data files within non-volatile computer readable memory within the server-based computing system, receives a search query from the remote client computer to identify one or more electronic model image data files, receives a file transfer request from the remote client computer requesting one or more electronic model image data files, and transmits one or more electronic model image data files to the remote client computer. The electronic model image data files have a file header info data block containing data used to identify a physical object represented by the electronic model image data file and an electronic model image, a portion of the electronic model image containing a polygonal mesh representation of the physical object generated from scanned electronic data of a physical object.
Yet another aspect of the present invention is a server based computing system for providing electronic model image data files to a remote client computer over a distributed communications network. The computing system has a communications connection to the distributed communications network, a communications server module for receiving remotely generated electronic model image data files, receiving search query requests from the remote client computer, and transmitting a requested electronic model image data file to the remote client computer in response to a file transfer request, a relational database module for maintaining a electronic model image description in a relational database corresponding to each received electronic model image data file for use in processing the search queries received from the remote client computer, and a file storage module for storing the electronic model image data files for use in processing file transfer requests received from the remote client computer.
Another such aspect of the present invention is a method and computer data product encoding instructions for receiving electronic model image data files by a remote client computer from a server-based computing system over a distributed communications network. The method transmits a search query from the remote client computer to the server-based computing system to identify one or more electronic model image data files stored within the server-based computing system, transmits a file transfer request from the remote client computer to the server-based computing system requesting one or more electronic model image data files, receives one or more electronic model image data files, manipulates the electronic model images upon the remote client computer, and performs analysis and a course of action using the manipulated electronic model images.
These and various other advantages and features of novelty which characterize the invention are pointed out with particularity in the claims annexed hereto and form a part hereof. However, for a better understanding of the invention, its advantages, and the objects obtained by its use, reference should be made to the drawings which form a further part hereof, and to accompanying descriptive matter, in which there are illustrated and described specific examples of an apparatus in accordance with the invention.
The present invention relates to a code generation method, apparatus, and article of manufacture for providing a distributed computing system for the creation and distribution of electronic models of objects.
These computing systems typically possess a mechanism to communicate with other computing systems over a communications network 101. The Internet 101, as a publicly available communications network, provides an available communications path between virtually any two computing systems after they first connect to the Internet. While other communications mechanisms exist and may be used, the Internet provides a well-known mechanism to communicate data between two computing systems.
In an image-based eModel system, an end user 110 communicates over a communications network 101 to a server 121 to retrieve electronic eModels from a database 122. The end user 122 may be located anywhere a connection to the communications network 101 exists to retrieve the eModels from the database 122. This database 122 may be located within an eModel data server system 102 that is maintained by third parties that provide maintenance, data back up, and similar data processing overhead functions that are not an overriding concern for an end user. This data back-up, for example, may consist of long-term archiving of data to replace maintenance of physical models that have in the past required a great deal of effort and expense to complete.
The eModels themselves consist of a data file stored on the server 121 in a database 122 that allows quick and efficient access for users. These eModels are generated in a separate eModel generation system 103 that consists of one or more model scanning units 131-134. These units 131-134 are connected together using a local communications network 136 and a communications path 135 to the Internet 101. As such, eModels, once generated may be transferred to the eModel Data server system 102 for ultimate use by end users 110-113.
With reference to
The personal computer 200 further includes a hard disk drive 212 for reading from and writing to a hard disk, a magnetic disk drive 214 for reading from or writing to a removable magnetic disk 216, and an optical disk drive 218 for reading from or writing to a removable optical disk 219 such as a CD ROM, DVD, or other optical media. The hard disk drive 212, magnetic disk drive 214, and optical disk drive 218 are connected to the system bus 206 by a hard disk drive interface 220, a magnetic disk drive interface 222, and an optical drive interface 224, respectively. The drives and their associated computer-readable media provide nonvolatile storage of computer readable instructions, data structures, programs, and other data for the personal computer 200.
Although the exemplary environment described herein employs a hard disk, a removable magnetic disk 216, and a removable optical disk 219, other types of computer-readable media capable of storing data can be used in the exemplary system. Examples of these other types of computer-readable mediums that can be used in the exemplary operating environment include magnetic cassettes, flash memory cards, digital video disks, Bernoulli cartridges, random access memories (RAMs), and read only memories (ROMs).
A number of program modules may be stored on the hard disk, magnetic disk 216, optical disk 219, ROM 208 or RAM 210, including an operating system 226, one or more application programs 228, other program modules 230, and program data 232. A user may enter commands and information into the personal computer 200 through input devices such as a keyboard 234 and mouse 236 or other pointing device. Examples of other input devices may include a microphone, joystick, game pad, satellite dish, and scanner. These and other input devices are often connected to the processing unit 202 through a serial port interface 240 that is coupled to the system bus 206. Nevertheless, these input devices also may be connected by other interfaces, such as a parallel port, game port, or a universal serial bus (USB). A monitor 242 or other type of display device is also connected to the system bus 206 via an interface, such as a video adapter 244. In addition to the monitor 242, personal computers typically include other peripheral output devices (not shown), such as speakers and printers.
The personal computer 200 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 246. The remote computer 246 may be another personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the personal computer 200. The network connections include a local area network (LAN) 248 and a wide area network (WAN) 250. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, and the Internet.
When used in a LAN networking environment, the personal computer 200 is connected to the local network 248 through a network interface or adapter 252. When used in a WAN networking environment, the personal computer 200 typically includes a modem 254 or other means for establishing communications over the wide area network 250, such as the Internet. The modem 254, which may be internal or external, is connected to the system bus 206 via the serial port interface 240. In a networked environment, program modules depicted relative to the personal computer 200, or portions thereof, may be stored in the remote memory storage device. It will be appreciated that the network connections shown are exemplary, and other means of establishing a communications link between the computers may be used.
Additionally, the embodiments described herein are implemented as logical operations performed by a computer. The logical operations of these various embodiments of the present invention are implemented (1) as a sequence of computer implemented steps or program modules running on a computing system and/or (2) as interconnected machine modules or hardware logic within the computing system. The implementation is a matter of choice dependent on the performance requirements of the computing system implementing the invention. Accordingly, the logical operations making up the embodiments of the invention described herein can be variously referred to as operations, steps, or modules.
In one embodiment, each model scanner unit 132 includes two processing devices 321-322 to process the laser scanner data and generate the model image data. In this embodiment, the processing utilizes one such computing device 321 to processing the scanner data to generate a polygonal mesh of triangles and utilizes a second computing system 322 to further process the initial polygonal mesh into a reduced set of surfaces that may be ultimately used by an end user. One skilled in the art will recognize that these two computing devices may in fact be constructed using any number of programmable computing devices where the computing capacity of the devices used will determine the amount of time needed to complete a given processing task. As such, other embodiments of the present invention may be used for these computing devices without deviating from the spirit and scope of the present invention as recited within the attached claims.
In a preferred embodiment, the laser scanner 310 is a line scanner of the type made by Laser Design, Incorporated of Bloomington Minn., Model No. RPS-120. The scanner possess a capability to transfer data to a computing system 321 at a rate of 14,400 data points per second and have a resolution of 12 microns. In order to create adequate eModels for user items, the scanner 301 possesses a volumetric accuracy of approximately 25 microns. The multi-axis platform 311 rotates the user item 300 within the field of view of the laser scanner 310 in order to collect sufficient data points from all orientations to observe the entire surface of the user object 300.
Once the digital eModel is obtained, the plaster model is no longer needed. As such, the storage of the model is no longer required by dental care providers, as has been the case for most of the past practices of dental care providers. Because the eModel is a digital representation of the physical model, a plurality of user controls 411-412 are used by the end user to view the user item 300, in this case the patient's teeth 401-402, from any orientation. Measurements and other manipulations of the eModel are also permitted.
Once an end user receives the eModel, the end user may view and manipulate the eModel as needed to complete any planning, analysis and similar operations in module 614. Test module 615 determines if a new eModel has been created as part of the end user's manipulation of an eModel and if the newly created eModel should be saved for later use. If the new eModel exists and is to be saved, module 616 saves the eModel locally on the end user client computer for later use and the processing ends 602. If test module 615 determines that a new eModel is not to be saved, the processing also ends 602.
The point cloud data file 711 represents a data point for each location on the surface of the user item 300. The file is processed into a polygonal mesh of triangles in a mesh module 702. In this process, the points from the point cloud data file are organized into triangles of neighboring points that describe the surface of the user item 300 that has been scanned. The creation of a polygonal mesh data file 712 that contains the specification of all of the triangles reduces the amount of data to between 100-300 k triangles.
The number of triangles that are used to describe a surface of the user item 300 may be reduced further in a filtering module 703 when a reduced polygonal mesh file 713 is created. This reduction of the number of triangles is accomplished when adjacent triangles are sufficiently co-planer to permit the surface described by two or more triangles to be similarly described using a single triangle. The reduced polygonal mesh data file 713 typically consists of 60 k triangles that permits a manageable amount of data to be used when eModels are processed.
The eModel are completed by an eModel transfer module 704 that attaches a file header that describes the user item in sufficient detail that it maybe retrieved at a later date. The eModel is contained within an eModel data file 714 that may be transmitted over the Internet 101 to the eModel data server for storage within its database.
T1: {P0, P1, P2} or
T1: {[X0, Y0, Z0], [X1, Y1, Z1], {[X2, Y2, Z2]}.
Each triangle in the polygonal mesh is specified using the three points as shown above. No particular order for the points making up the triangle is necessary. The smaller side 812 of the item 811 in this example is initially shown with six triangles 911-916. The triangles in the polygonal mesh may be created using any number of well known methods for reducing point position data into a polygonal mesh that approximates the surface of the object.
For other items, such as the cellular phone shown in
The eModel data server 102 includes a communications server module 1201, a database server module 1203, and an eModel storage server module 1202 to perform its tasks. The communications server module 1201 performs the communications functions needed to receive eModels from the generation system 103 as well as the communication functions needed to interact with end users when they wish to locate and download eModels of interest.
The eModels received from the generation system 103 are stored within two databases. A copy of the file header info block 1101 is stored within a first database 1204 and the entire eModel file is stored within a file storage database 1205. This separation allows the file header info block data to be stored within a relational database to permit rapid searching for eModels of interest. Once the identity of a desired eModel is located in the relational database 1203, the end user may request a copy of the larger eModel file from the file storage database 1205. This separation of the two database functions allows the data storage and data processing requirements of each operation to be scaled independently of each other as the nature of the end user interaction with the server 103 is determined. If significant amounts of database query operations are occurring in a particular use of the server 103, the processing capabilities of the relational database may be increased. If the server 103 is predominantly used to transfer large eModel files to users, data transfer capacity of the file storage database may be increased.
The eModel file header info block database 1204 is connected to the eModel header database server 1203 to provide the relational database functions needed to located eModels of interest. The eModel database 1205 is connected to the eModel file storage server 1202 to provide the file storage for all of the eModels.
Within the communications server 1201, a command and control module 1301 receives requests for operations and coordinates the processing of the other modules and servers to complete a processing and data retrieval request. A client interface module 1303 processes the entire communication request received from an end user 110. The eModel generation interface module 1301 processing all of the communication requests from the eModel generation system 102 to accept and store new eModels within the databases 1204-1205.
In order to perform its processing functions, the communications server 1201 receives the command messages listed in Table 1. These commands allow eModels to be stored into the databases 1204-1205 and allow end users 110 to search for and retrieve eModels from the databases.
The end user interactively moves portions of the eModel that represent the desired teeth to a new position. The dental care provide may remove teeth to determine spacing of the remaining teeth as a course of treatment for a patient is created. All of the possible variations on treatment options may be explored using the eModel until a desired course of treatment is determined.
Like above, once a new eModel is created, the new eModel may itself be manipulated.
The client interface module 1301 consists of an end user authentication module 1811, a database query module 1812, and a file transfer module 1813. The end user authentication module 1811 processes all end user attempts to log into the server to search for and access eModels. The database query module 1812 processes all incoming search requests to generate and process relational database queries to locate matching eModels based upon file header info data. The file transfer module 1813 processes all eModel transfer requests to send eModels to end-users.
The eModel generation interface module 1302 processes all commands to store new eModels generated in the eModel generation system into the data server. The eModel generation interface module 1302 includes a header extraction module 1821, a database storage module 1822, and a file server storage module 1823 to complete its functions. The header extraction module 1821 extracts the file header info data from incoming eModels and formats them for insertion into the relational database. The database storage module 1822 stores the formatted header data into the relational database as needed to permit easy and efficient searches. The file server storage module 1823 performs the operations needed to store the eModels into the file storage server.
Next, the server stores the eModel file into a file storage server in module 1913 in order to allow the eModel to be retrieved by end users. The end users locate the eModels by submitting a query to the relational database to perform a search on the file header info data. The server receives the query request in module 1914 which causes the module 1914 to query the relational database and return the query results to the end user. The end user next sends a request for additional queries if necessary to identify any eModels of interest.
Once the end user has identifies a desired eModel, the end user sends a request for an eModel to the data server which is received in module 1915. Test module 1916 determines if the end user is permitted access to the requested eModel. If access is permitted, the eModel is transferred to the end user by module 1917 and the processing ends. If test module 1916 determines that access to the eModel is not permitted, the error message is returned to the end user by module 1919 and the processing also ends. One skilled in the art will recognize that alternate user authentication and access authorization mechanisms may be used to limit access to end users when database queries are made as well as when eModels are accessed without deviating from the spirit and scope of the present invention as recited within the attached claims.
The end user interacts with the client computer 2001 through the GUI interface module 2012. The end user enters commands using a pointing device such as a mouse or trackball and using keyboard commands. These commands are processed by the command processing and control module 2011 which send processing requests to the other modules to complete the requested command.
Commands to view an eModel is processed by the eModel retrieval module 2013. The eModel retrieval module 2013 obtains a list of the locally available eModels from the eModel storage module 2015 as well as communicates with the remote data server 103 using the data communications interface module 2014. The end user is presented with a list of available eModels from which an eModel is selected and retrieved. The eModel is retrieved from local storage 2016 if available. If not, the eModel may be transferred from the remote storage. If desired, the retrieved eModel may be stored locally when retrieved from the remote server to eliminate the need to down load the eModel in the future. Of course, the eModels may also be stored only upon the remote data server 103 and retrieved when needed.
Once an eModel has been retrieved from data storage, the eModel is processed within the eModel Item Manipulate module 2010. This module displays the eModel to the end user. The eModel Item Manipulate module 2010 includes an item display module 2021, an item set-up module 2022, and an x-Ray processing module 2023. The item display module 2021 displays the eModel graphically to the end user as well as performs the image display related manipulation operations such as zoom, pan, scroll, and similar visual operations. The item set-up module 2022 allows end users to obtain measurements of the eModel and modify the eModel to create new eModels that may be saved locally using the eModel retrieval module 2013. The x-Ray processing module 2023 performs the operations necessary to manipulate x-rays as well as combine them with other eModels to create and store composite eModels. One skilled in the art will recognize that additional manipulation modules may also be used to process commands associated with various composite eModels created using other supported digital image based eModels without deviating from the spirit and scope of the present invention as recited within the attached claims.
Once logged in, an end user is presented with a list of locally available eModels that were obtained in module 2111. Test module 1212 determines if a desired eModel is available locally. If test module 1212 determines that the desired eModel is not available, the client computer logs into a remote data server in module 2113 to locate the desired eModel. A database query used to locate the desired eModel is sent to the remote server in module 2114 before receiving a list of remotely available eModels. The end user selects the desired eModel and sends a request for the remotely available eModel to be transmitted to the client computer in module 2115. The client computer receives the eModel from the remote server 103, stores it locally, and displays it to the user for manipulation in module 2118.
If test module 2112 determines the desired eModel is locally available, the eModel is retrieved and displayed to the user in module 2117 before a user manipulates it in module 2118. The end user interactively manipulates the eModel as needed in module 2118 to perform the analysis and planning functions that the eModel is useful is assisting. Test module 2119 determines if a new eModel has been created that an end user wishes to save locally. If a new eModel is to be saved, module 2120 will save the newly created eModel locally before the processing ends 2102. If module 2119 determines that a new eModel is not to be saved, the processing ends immediately 2102.
The invention may also be described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Typically the functionality of the program modules may be combined or distributed in desired in various embodiments.
A network server 121 typically includes at least some form of computer readable media. Computer readable media can be any available media that can be accessed by the network server 110. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, BC-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the network server 110.
Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media.
While the above embodiments of the present invention describe a network based processing system providing processing services to remote clients, one skilled in the art will recognize that the various distributed computing architectures may be used to implement the present invention as recited within the attached claims. It is to be understood that other embodiments may be utilized and operational changes may be made without departing from the scope of the present invention.
The foregoing description of the exemplary embodiments of the invention has been presented for the purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not with this detailed description, but rather by the claims appended hereto. Thus the present invention is presently embodied as a method, apparatus, computer storage medium or propagated signal containing a computer program for providing a method, apparatus, and article of manufacture for providing a distributed computing system for the creation and distribution of electronic models of objects.
Claims
1. A method of manufacturing a dental appliance, the method comprising:
- a) generating a plurality of first electronic model images on a computer at a first location, the computer having a processor and memory configured to store instructions for generating the first electronic model images, the processor of the computer being configured to implement the instructions for generating, each of the first electronic model images representing a dentition of a patient, each of the patients being associated with an end user, each of the first electronic model images being generated based at least partially on scanned positional data of the dentition of the respective patient;
- b) delivering the first electronic model images from the computer at the first location to a remote computer at a second location over a network, the second location being remote from the first location;
- c) retrieving at a user computer at least a portion of the first electronic model images from the remote computer at the second location, the portion of the first electronic models representing dentitions of patients associated with the same end user, the user computer having a processor and memory configured to store instructions for manipulating the first electronic model images, the processor of the user computer being configured to implement the instructions stored in the memory of the user computer; and
- d) manipulating the first electronic model images to create a plurality of second electronic model images on the user computer, each of the second electronic model images being generated based at least partially on the respective first electronic model image for use in a further operation.
2. The method of claim 1, further comprising:
- delivering at least one of the second electronic model images from the second location to the first location over the network; and displaying the second electronic model image at the first location.
3. The method of claim 2, wherein generating the first electronic model images comprises obtaining polygonal mesh representations generated at the first location from scanned positional data.
4. The method of claim 1, further comprising enabling manipulation of at least one of the second electronic model images on a computer at a third location.
5. The method of claim 4, wherein manipulation of the second electronic model image includes altering an orientation of the second electronic model image.
6. The method of claim 4, wherein manipulation of the second electronic model image includes determining numeric values associated with physical characteristics of the dentition represented by the second electronic model image.
7. The method of claim 4, wherein manipulation of the second electronic model image includes moving a first portion of the second electronic model image relative to a second portion of the second electronic model image to determine an interaction of the first and second portions.
8. The method of claim 1, wherein generating the first electronic model images at the first location comprises generating the first electronic model images at a dental lab.
9. The method of claim 1, wherein generating the first electronic model images comprises scanning physical models to obtain the scanned positional data from which the first electronic model images are generated.
10. The method of claim 1, wherein the further operation comprises storing the second electronic model images at the second location.
11. A method of manufacturing a dental appliance, the method comprising:
- a) generating on a first computer at a first location a first electronic model image of a dentition of a patient, the first electronic model image being generated at least partially based on scanned positional data, the first computer having a processor and memory storing instructions for generating electronic model images, the process or the first computer being configured to implement the instructions for generating;
- b) delivering the first electronic model image over a network from the first computer to a remote computer, the remote computer having memory in which to store the first electronic model image;
- c) retrieving at a user computer at a user location the first electronic model image from the remote computer, the user computer having a processor and memory configured to store instructions for manipulating electronic model images, the processor of the user computer being configured to implement the instructions for manipulating; and
- d) manipulating the first electronic model image at the user computer to create a new model.
12. The method of claim 11, wherein the user location is the first location.
13. The method of claim 12, wherein the first location is a dental lab.
14. The method of claim 11, wherein the new model is an electronic model image.
Type: Application
Filed: Oct 29, 2009
Publication Date: Jul 1, 2010
Applicant: GeoDigm Corporation (Chanhassen, MN)
Inventors: Bruce Willard Hultgren (Victoria, MN), Timothy W. Vadnais (Victoria, MN), Michael Craig Marshall (Prior Lake, MN), Grant James Cermak (Minneapolis, MN)
Application Number: 12/608,774
International Classification: G06F 17/50 (20060101); G06F 15/16 (20060101);