WO1999064968A2 - Cad/cam method and system for management of a collection of three dimensional objects - Google Patents

Cad/cam method and system for management of a collection of three dimensional objects Download PDF

Info

Publication number
WO1999064968A2
WO1999064968A2 PCT/IB1999/001620 IB9901620W WO9964968A2 WO 1999064968 A2 WO1999064968 A2 WO 1999064968A2 IB 9901620 W IB9901620 W IB 9901620W WO 9964968 A2 WO9964968 A2 WO 9964968A2
Authority
WO
WIPO (PCT)
Prior art keywords
objects
design
collection
engine
computer software
Prior art date
Application number
PCT/IB1999/001620
Other languages
French (fr)
Other versions
WO1999064968A3 (en
Inventor
Gil Davidov
Original Assignee
M.T.D. Software Ltd.
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
Application filed by M.T.D. Software Ltd. filed Critical M.T.D. Software Ltd.
Priority to AU59919/99A priority Critical patent/AU5991999A/en
Publication of WO1999064968A2 publication Critical patent/WO1999064968A2/en
Publication of WO1999064968A3 publication Critical patent/WO1999064968A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects

Definitions

  • the present invention relates to the field of computer aided design. More particularly, the present invention relates to furniture design. Background
  • Design systems are common in fields such as mechanical engineering, electrical engineering, architecture, interior design, etc. Most of these design systems are CAD (Computer Aided Design) systems that include two dimensional (2D) and three dimensional (3D) drawing tools intended to improve the design process. Custom CAD software packages are known for many fields such as VLSI, mechanical CAD, furniture design CAD, architecture CAD, etc. The CAD system outputs a drawing or a computer file that describes the drawing.
  • CAD Computer Aided Design
  • CAM Computer Aided Manufacturing
  • NC Numerical control
  • CAD/CAM Computer Aided Manufacturing
  • the design of several objects splits into paths where the production stations include a variety of processing stations, including machines operated manually, or electro-mechanically or computer controlled (e.g. NC) machines.
  • the CAM software is unable to produce the complete production process because CAM software only generates machine code for NC machines.
  • CAM software is directed towards a single machine process. As a result, the production plan may be generated only for objects that are produced by a single NC machine.
  • CAD/CAM methods are unable to produce such a plan because the input for the manufacturing process is the output of the CAD software, which is graphics objects or drawing e.g., lines, arcs, circles, etc.
  • PPS Product Planing System
  • PDM Product Data Management
  • These systems are database engines that store previously entered characteristics and processes required for the design and manufacturing of the collection of objects. In such systems, once a product is defined, the database engine retrieves the production plan for each member of the collection and the assembly plan for the entire collection of objects.
  • the main limitation of these systems is that only plans for products that were previously defined in the database can be automatically generated. Consequently, the only available flexibility is that which was predefined by the database programmer.
  • Another shortcoming of the PPS/PDM systems is that they employ a text based interface that conflicts with the designed products, which are three dimensional objects such as mechanical assemblies, printed circuits boards, furniture, etc.
  • the design process goes through drawing processes, measuring processes, etc.
  • a graphic interface that facilitates design is desirable.
  • CAD systems and PPS/PDM was introduced in order to improve the interface to the PPS/PDM systems.
  • the CAD system enables the user to design a collection/assembly of three dimensional objects.
  • the user may use a CAD modeler that implements the PPS/PDM design logic in the CAD system, thus enhancing the modeling process.
  • a modeler of a simple writing desk helps the CAD user to draw a desk by defining the required type, dimension, color etc.
  • the output of CAD system in this case is not a drawing, but rather is an entry to the PPS/PDM, meaning the Item key in the PPS/PDM and the related parameters (height, color, style, material etc.).
  • a graphical interface to the PPS/PDM systems is achieved and a production plan for each member and the assembly plan for the collection of objects is generated by the PPS 'PDM.
  • the CAD system generates drawings that cannot be converted into a production plan for each member and an assembly plan for the collection of objects. As such CAD systems are used only as an interface and not as an open design tool that can be used to design any member or collection of objects.
  • the PPS/PDM system generates only predefined data in the database engine.
  • the shortcoming of the combination of CAD and PPS/PDM is "one way data flow" meaning that manual changes to the generated production plan of each member and the assembly plan of the collection of objects in the PPS/PDM systems are not forwarded to the CAD systems. Consequently, any custom design created in the CAD system must be redesigned for production and assembly in the PPS/PDM systems. In the opposite way, any custom design in the PPS/PDM system cannot be tested and displayed in the CAD system without redesigning in the CAD system.
  • a modeler may design a model according to a basic model that can be modified by defining a set of parameters, restrictions, and characteristics.
  • a stair modeler may include parameters such as: type of stairs (e.g., spiral or standard), height between lower and upper levels, and height between stairs. By specifying these parameters, the modeler automatically designs the required stairs.
  • type of stairs e.g., spiral or standard
  • height between lower and upper levels e.g., spiral or standard
  • height between stairs e.g., height between stairs.
  • the modeler automatically designs the required stairs.
  • a problem arises if the stair design depends on a relational location of the stairs to other objects or assemblies.
  • a stairs modeler may require the distance between the lower and the upper levels to be connected by the stairs, however, this distance is based upon the existence of such levels as well as on the location of these two levels.
  • a modeler is required to design a collection of objects and the assembly of the objects that depend on a virtual space having a previously undefined size and location. It would be desirable to be able to design a layout or construction having real 3D spaces that can be analyzed and assigned to the virtual spaces where the collection or assembly is designed.
  • Another problem associated with design systems is the difficulty of distributing production details to a destination (e.g., a furniture plant) when the details originate from a first location (e.g., a furniture store), where a collection of 3D objects is designed.
  • a destination e.g., a furniture plant
  • a first location e.g., a furniture store
  • 3D objects 3D objects
  • an integrated system is required to enable the design and generation of the production plan for each member and the assembly plan for the collection of objects.
  • This system should enable the design of previously undefined, custom made layouts as well as predefined layouts in a "two ways data flow.” That is, the design of production process will affect the design of objects, and vice versa, i.e., design of objects will affect the production plan and assembly plan for the collection.
  • This integrated system enables the design of previously undefined, custom made designs as well as predefined designs in a "two way data flow".
  • design of production process affects the design of objects and structure, and vice versa
  • design of objects or structure affects the production plan and the assembly plan of the collection.
  • Another object of the present invention is to provide a design tool for design sites (e.g., designers, point of sale, and architects) that results in data suitable for transfer to the production site where the data is transformed into production plans for each object and the assembly plan for the collection of objects.
  • design sites e.g., designers, point of sale, and architects
  • a further object of the invention is to provide a system for modeling a collection and assembly of objects, while maintaining internal logic between the objects, in an undefined virtual space.
  • a still further object of this invention is to provide a system for analyzing a set of objects and to form real spaces among them.
  • Another objective of the invention is to provide a system for analyzing a set of real spaces to find the possible sets of collection and assembly of objects, among predefined sets of collection and assembly of objects, to be defined to the real space.
  • a further object of the invention is to provide a system for assigning a real space's dimension, location and restrictions, to the virtual space.
  • a still further object of the invention is to provide a system for maintaining the relationship between the virtual and real spaces so that any changes or modification to the real objects forming the real spaces will result in a change of the dimension, location, and restrictions of the virtual spaces and as a result affects (i.e., produces corresponding changes in) the overall design.
  • the system includes a main engine that manages and facilitates analysis of the 3D objects and a variety of modeling engines that may be external or internal to the main engine.
  • These modeling engines contain predefined logic for assembly or construction of 3D objects.
  • the logic contains the mathematical and geometrical relations between the 3D objects as well as limitations, restrictions, knowledge data etc.
  • the modeling engines can be added to the main engine at any time.
  • the main engine which consists of other sub-engines, manages data that can be in the form of a variety of tables that contain the required information related to the 3D objects.
  • the main engine processes and modifies the data tables according to the modeling engine's logic or the logic of the main engine itself.
  • Each 3D object has a part structure that contain all the data required for managing the object, manipulating it and producing it.
  • the part structure in the part table is defined so that all of its surfaces hold specific data which relates to the finish (e.g., painting, coating, veneering etc.) of each surface, as well as the required processing (e.g., grooves, drilling, routings, etc.).
  • the designer while designing the collection, considers a final object, including the processed object plus all associated sub-parts, as a single object.
  • the structure thus holds the necessary information to describe and create a variety of objects, including the objects themselves and additional sub-objects associated with each of the main object's surfaces.
  • 3D object that is a rectangular wood board having two veneered faces, an edge band on its four peripheral edges, and fifty holes to be drilled on the upper surface.
  • fifty seven 3D objects should be recorded: one main board, two veneered sides, each having a thickness, four edging bands with a variety of thickness, colors, material etc., and fifty drill holes.
  • the board is described as a single object having the same amount or less data than an object created in a traditional solid CAD system.
  • the present part structure refers to predefined reference "objects" having only the necessary data, e.g.. an edge band, which has a thickness, color, supplier minimum order requirements and cost, rather than the standard CAD system that requires a specific definition of each object containing all data.
  • Another important concept, which is implemented into the part structure, is the type field.
  • a part ma ⁇ - be associated with a type of "reference part, type 2.”
  • a reference part holds information for all of its related parts. Other parts look at reference part to obtain information. For example, if five shelves exist, only one part needs to hold information and other parts simply refer at the one part that holds the information. In this way, families of non-identical parts can be managed, without overhead (i.e., extra) of data.
  • This feature also supports many designs concepts where operation to one member would be automatically implemented to the modified member's related objects. For example, modifying the type of wall paper on one wall in a room will result in the modification of the wall paper on all other walls in the same room.
  • the main engine has an important mode that enables the creation of custom made, non predefined designs. This mode is called "breaking the rules" mode.
  • a modeler may design a model according to a basic model that can be modified by defining a set of parameters, restrictions, and characteristics.
  • a stairs modeler may include parameters such as: type of staircase (e.g., spiral or standard), height between lower and upper levels, and height between stairs. Based upon input of these parameters, the modeler automatically designs the required stairs.
  • type of staircase e.g., spiral or standard
  • the modeler automatically designs the required stairs.
  • next to last stair should be attached to a special metal arm, which is attached to the wall.
  • the next to last stair should be cut in a different shape and length from the other stairs.
  • This special mounting was not predefined in the modeler, thus no parameter has been assigned to this type of mounting. The result or output of the modeler is thus an incorrect or inefficient design.
  • the breaking the rules mode permits the user to employ the modeler up to a point where the design is as close as possible to the required custom design. By utilizing the modeler to this point, the user saves time and effort in the design process.
  • the user sets the main engine to the breaking the rules mode. This mode allows the user to change any of the objects, without the implementation of the modeler rules. In the above example the user may change the size and shape of the next to last stair manually after obtaining the final design from the stair modeler. Because both the modeler and main engine update the parts table, the custom made design includes all of the data required for generation of the production plan for each object and the assembly plan for the collection of objects (e.g., stair and other objects). Furthermore, applying the modeler to the custom made design affects only parts (objects) that were not modified in the breaking the rules mode.
  • breaking the rules mode When breaking the rules mode is set, the user may have an interface access to the physical characters of each parts, without the involvement of the modeler. For better understanding, a simple example is set forth.
  • NON breaking the rules mode the user has an interface to set the height of cabinet. He does it by entering into the file, "cabinet total height", the required height. Of course this entry will automatically change the height of the two side panels of the cabinet and will move the top panel of the cabinet.
  • breaking the rules mode When breaking the rules mode is SET, it functions more like CAD. In other words, the user has an interface to click on the side panel and to change its height as desired. This will not effect any other part in the cabinet thus the cabinet height will remain the same, but one of the side panels is now "taller" or "shorter".
  • the main engine analyzes the part table to generate the production plan for each member and the assembly plan for the collection of objects.
  • the analysis is based upon the data records associated with each part in the part table plus additional relevant data from other tables, such as material tables, accessories tables, operations tables, work station tables, etc.
  • the dimensions of the cut of an object made of material ID #2 may be calculated based upon a length from the length field in the part table, a width from the width field in the part table, and a thickness from the thickness field in the material table.
  • Figure 1 is a block diagram illustrating the main engine 200 and its relationship with the breaking the rules engine 150 and the modeler engine 100, according to an aspect of the present invention:
  • Figure 2 is an exemplary part table format, according to a preferred embodiment of the present invention:
  • Figure 3 is a block diagram showing a general logic flow for modifying parts with a modeler and with the breaking the rules mode according to an aspect of the present invention
  • Figures 4a- 4c illustrate exemplary screens viewed when designing a collection of three dimensional objects, according to an aspect of the present invention
  • Figure 5 is an illustration of an exemplary screen showing an individual part menu accessed in the regular mode of operation, according to a preferred embodiment of the present invention
  • Figure 6 is an illustration of a parts list generated by the collection and analysis engine, according to an aspect of the present invention.
  • Figures 7a and 7b show assembly instructions and drawings generated by the collection and analysis engine, according to an aspect of the present invention
  • Figure 8 is an illustration of a management report generated by the collection and analysis engine, according to an aspect of the present invention
  • Figures 9a and 9b show a route card generated by the collection and analysis engine, according to an aspect of the present invention
  • Figure 10 is an illustration of a set of distribution labels generated by the collection and analysis engine, according to an aspect of the present invention
  • Figure 11 is an illustration of a loading list generated by the collection and analysis engine, according to an aspect of the present invention.
  • Figure 12 is a block diagram illustrating the mam engine 201 and its relationship with the breaking the rules engine 150 and modeler engine 100, according to an alterna e embodiment of the present invention
  • Figure 13 is an illustration of a design/construction of a collection of three dimensional objects forming real spaces, according to an aspect of the present invention
  • Figure 14 is a conceptual illustration showing possible relationships among the spaces. In the illustration every rectangle stands for one space;
  • Figure 15a is an illustration of the construction of Figure 13 where the modelei automatically designed a set of drawers in the lower space according to the space dimension, location, and restrictions, according to an aspect of the present invention
  • Figure 15b is the same construction as shown in Figure 15b with a modification of the basic construction of Figure 13
  • Figure 15b demonstrates the real space characte ⁇ stics that were assigned to the virtual space where the drawers were designed, resulting in the required modifications being applied to the drawer objects,
  • Figure 16 shows an exemplary process for analyzing a set of objects to form real spaces among the objects, and finding the possible sets of collection and assembly of objects, among predefined sets of collection and assembly of objects, to be defined to the real space, and assigning possible sets to the space
  • Figure 16 further shows possible construction sets to torm va ⁇ ous closet configurations
  • the various configurations may be defined manually or by a construction modeler, and
  • Figure 17 is a flow diagram showing exemplary logic for determining possible types of sets to be assigned to a certain space, according to an aspect of the present invention DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
  • the integrated system facilitates the design and layout of furniture, its objects, sub-objects, and accessories.
  • the integrated system generates the required plans for production and assembly of furniture or a batch of furniture, and management plans for costing, production control, distribution control, and inventory control.
  • previously undefined designs may generate a previously undefined plan.
  • two way data flow is achieved so that modifying or generating the production process (e.g., drilling or grooving the objects) affects the design, and modifying or creating the design affects the production and other plans.
  • the software enables one to design the shape, color, size, position, etc. of a member (part).
  • a production process may applied to the parts, and may effect the design.
  • Figure 5 shows one of the interface menus which may apply commands to objects.
  • the 5th and 7th commands are for applying processes, such as drilling to parts or controlling and adding more work station to the parts. Since the part data structure consists of physical characters such as shape and size as well as production processes, and since the user has access by interface to edit the part data structure, then there is a two way interaction between the design and the production plan.
  • the system informs the user by means as the "Min” and “Max” columns in Figures 4a, 4b and 4c.
  • Some limitations are not calculated, but defined manually by the user according to his own will. For example, a user may want to limit the height of a cabinet, to the longest row material board that he would have.
  • main engine 200 consists of an interface engine 160, graphics engine (drawing engine) 170, production management engine 180, and collection and analysis engine 300.
  • the collection and analysis engine 300 contains an individual object production process engine 301 and an assembly process engine 302. Part table 400 and general tables 500 are also within the main engine 200.
  • Figure 4a shows an interface screen displaying a design of a simple writing desk and a dialog box that enables the user to define and set some simple parameters of the writing desk. All of the parameters displayed in the dialog box are predefined characteristics of the writing desk. The user sets the parameters to the required values to create the design. To update the design, the required values are sent to the assigned modeler that calculates all of the object's dimensions and locations using the allocated part table 400 and general tables 500. Once the part table 500 is updated by the modeler 100, the main engine 200 reproduces the graphics of the parts on the display screen. If the user had defined a new desk height and width, and a new width for a support panel 20, the result, which was stored in the part table 400, is shown in Figure 4b.
  • Modifying of the parameter results in a predefined design because the parameters were predefined. Now the user may want to transform the design into a non predefined design. As seen in Figure 4a. the predefined parameters, in this case, only control the dimensions. Assume that the user would like to add curves to a top panel 10 and the support panel 20, and would also like to modify the shape of the right desk leg 30 to meet a certain condition/limitation in the office where the desk will be standing. These requested changes are not predefined and are contrary to the modeler logic, which creates a symmetrical writing desk having objects that are all rectangular boards. Thus, the user sets the main engine 200 to the breaking the rules mode.
  • the collection and analysis engine 300 scans the parts table by engine 301 and determines the production process required for each part.
  • the part "right desk leg" 30 records a selected band edge for its front edge, and routing operation for the lower back corner.
  • three main workstations are assigned to this member: cutting station, edging station, and routing station.
  • required information is then generated.
  • member 30 has a certain length and width.
  • Engine 301 requests the thickness of the specified edge band that is recorded in member's 30 front edge. The edge band thickness is then subtracted from the width of member 30 resulting in the cut dimensions for the cutting station. The type and location of the edge band is then recorded for the edge banding station.
  • engine 301 checks all surfaces of member 30 in part table or list to find routing data.
  • the geometric vectored information of the lower back corner is then recorded and stored in the routing work station. This information is than translated to a graphics format recognized by the NC machine software for production (e.g., DXF format).
  • Engine 302 then collects all parts of all the designs to form an optimal production plan for the whole batch.
  • This production plan consists of several instruction documents, tables, files and drawings, to help the personnel on the production floor understand the required production process, and to help the operation management control the production flow.
  • Engine 302 also generates reports and statistics for the management control and strategic management.
  • part table is exported in text format to any known external database engine to generate the required reports, billing, etc.
  • the production process is defined by "collection and analysis engine” 300 and described for the user by set of reports which are illustrated in Figs. 6-11.
  • Fig. 8 "Batch costing and specifications”.
  • the process of costing is as follows: in the "collection and analysis engine" 300, some tables are generated by summing the row material quantity needed by each part, or the defined cost of production process from each part. Since every row material has a price per unit (boards are usually priced by area, fittings by units and edge bands by running meter) , the cost of the whole batch and of individuals items in the batch, may be calculated and presented.
  • the main engine manages the "part table" which contains the data related to each member in the 3D collection.
  • the structure of each member's data is detailed in Fig 2.
  • "collection and analysis engine” 300 collects all the part tables from all files in the batch. Then all parts are listed in one united table, and each part is compared with the rest of the parts, in order to find similar parts by blending of the needed production process to be applied on the part. For example, two parts which have to be laminated with the same paint are "sharing" the same work station along the production process, i.e., the painting room.
  • a sum of the area of all parts made of the same row material may, be used for the row material pre calculation and order. Same cutting size parts, even if they may later go (after cutting) through different processes may be cut together. Each part get a unique number (route card number) which describes the order of work station, and the process needed in each station. Two or more parts, which have the same production process, may get the same unique number.
  • An exemplary route card is shown in Figures 9a and 9b.
  • Figure 12 shows an alternate embodiment of a main engine 201 that generates the part table 400.
  • the user of main engine 201 is a designer or salesperson in a non- production site. Because the data generated by engine 201 is recorded in part table 400 which can be analyzed by engines 180 and 300 in the production site, the result of one-time design in any of the non production sites, is full production, assembly and management plans. Of course the data received from various non-production sites could be combined to form a larger production batch to be processed by engines 180 and 300.
  • Main engine 201 consist of "interface engine” 160, "graphic engine” (drawing engine) 170, and commercial management engine” 181.
  • Main engine 201 is identical in principle to main engine 200 of Fig. 1 with the elimination of engines 300 and 180, and with the provision of "commercial management engine” 181.
  • Transport of data between the production sites and non production sites, and any other locations, is done in a conventional manner such as with modems, internet sites, diskettes etc.
  • the data may consist of all the data which describes the 3D objects (parts tables etc.).
  • the construction to be analyzed is a set of boards forming the construction of a closet, as seen in Figure 16.
  • Figure 16 shows possible configurations of various object to form a closet construction. Each of the configurations shown in Figure 16 forms 3D spaces. Numbers are assigned to the various 3D spaces.
  • Software functioning as a modeler according to the present invention is designed to automatically designs sets of drawers, set of shelves, sets of door hinges and sets of sliding doors. The modeler constructs the various sets with reference to a virtual space. Another set of rules is programmed into the modeler, as seen in the flow diagram of Figure 17. According to the logic, a space which does not contain other spaces (space
  • # 2 in Fig. 13 for example may be "filled” with one of all of the above mentioned sets. If the space does contain at least one other space, than the "filler" may be of the kind “hinge doors" only.
  • the user may define the various dimensions, construction, set of material etc. of the basic construction (Fig. 13).
  • the definitions are preferably done as described above.
  • a set of parameters, restrictions, characters etc. are assigned to the basic construction. Modifying the set, automatically modifies the necessary objects to meet the required parameters, restrictions, characters etc.
  • the construction forms set of 3D spaces which may be filled with various types of collections or assemblies.
  • type of filler which are types of pre defined parametric sets of collections or assemblies, to any 3D space. According to the construction in Fig. 13, an automatic set of restrictions is assigned to the various 3D spaces.
  • Fig. 17 describes the basic logic of restrictions for the type of filler. According to Fig. 17, any 3D space, which doesn't contain any other 3D space, may be filled with any of various types of fillers. 3D space which contains another space (in Fig. 13, one can see that 3D space number 1 contains all other spaces, and 3D space number 3 contains 3D spaces 4,5), may be filled only with the type of filler, "hinge doors". According to the demonstrated logic, 3D spaces 2, 4, 5 may be filled with any one of all the filler types, and 3D spaces 1,3 may be filled, only with filler of type "hinge doors". Fig 15a, demonstrate the assignment of filler of type "drawers" to 3D space number 4.
  • Figure 15b demonstrates a simple change applied to basic construction 13. Vertical support 15 has been moved, to the left and horizontal support 16 has been moved up. As a result an enlargement of the width of the 3D spaces 3, 4, 5 is taking place, while the height of 3D space 4 became bigger.
  • Fig. 16 demonstrates the new locations dimension and construction of filler of type drawers in 3D space 4.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Factory Administration (AREA)
  • Processing Or Creating Images (AREA)

Abstract

A method and a computer software for the design and management of a collection of three dimensional objects. The method and the computer software includes an independent modeler for determining the basic objects' characters and relations among the objects, an interface engine, a graphic engine, individual object production process engine, assembly process engine, and production management engine. The computer software enables the user to design any collection of three dimensional objects, to implement on each individual object, or collection of objects, a predefined or non predefined rules and operation. As a result, the user receives a full production, assembly, management and distribution plans for the collection of the three dimensional objects. These plans are non predefined and are a result of the analysis of the individual objects and the collection of the three dimensional objects. Also provided is a method and a system for the design and modeling of a collection of predefined assemblies of three dimensional objects, in virtual 3D spaces. A virtual 3D space is a continuous or non-continuous space formed by a virtual bounding box with width, height and depth. The system includes a modeler that enables the user to design, fit, modify and construct, a variety of sets of collection of assemblies and collection of 3D objects, into virtual 3D spaces, with their location, size, and relations between the various spaces is non predefined. By programming a modeler to construct certain types of assembly sets (e.g., drawers) with no relation to the frame where the drawers should be located, use of such sets becomes efficient in the sense that the set can be assigned to any location in any frame size. The location and frame size is determined by the virtual 3D space.

Description

METHOD AND INTEGRATED SYSTEM FOR THE DESIGN AND
MANAGEMENT OF A COLLECTION OF THREE DIMENSIONAL
OBJECTS AND FOR MODELING THE COLLECTION OF
THREE DIMENSIONAL OBJECTS IN VIRTUAL THREE DIMENSIONAL SPACES
CROSS-REFERENCE TO RELATED APPLICATION This application claims the benefit of U.S. Provisional Application No. 60/086,016, filed on May 19, 1998, the contents of which are expressly incorporated by reference herein in its entirety.
BACKGROUND OF THE INVENTION Field of the Invention
The present invention relates to the field of computer aided design. More particularly, the present invention relates to furniture design. Background
Design systems are common in fields such as mechanical engineering, electrical engineering, architecture, interior design, etc. Most of these design systems are CAD (Computer Aided Design) systems that include two dimensional (2D) and three dimensional (3D) drawing tools intended to improve the design process. Custom CAD software packages are known for many fields such as VLSI, mechanical CAD, furniture design CAD, architecture CAD, etc. The CAD system outputs a drawing or a computer file that describes the drawing.
CAM (Computer Aided Manufacturing) systems transform the CAD output into a manufacturing process. The CAM system "solves" the drawings created by the CAD system and generates the required machine code for manufacturing the designed object. Numerical control (NC) machines, which are controlled by a programmable controller, manufacture the designed object. Software packages that are a combination of the two systems are known as CAD/CAM systems. When several objects are designed, different objects go through different manufacturing processes. Some objects are ready to use objects, i.e., pre-produced objects that the manufacturer obtains from a third party. Other objects move through numerous production stations, according to the material, shape, and required production processes. In a typical production process the design of several objects splits into paths where the production stations include a variety of processing stations, including machines operated manually, or electro-mechanically or computer controlled (e.g. NC) machines. Thus, the CAM software is unable to produce the complete production process because CAM software only generates machine code for NC machines. Furthermore, CAM software is directed towards a single machine process. As a result, the production plan may be generated only for objects that are produced by a single NC machine.
Thus, a method that generates an appropriate production plan for each object and an assembly plan for a collection of objects is required. Known CAD/CAM methods are unable to produce such a plan because the input for the manufacturing process is the output of the CAD software, which is graphics objects or drawing e.g., lines, arcs, circles, etc.
Other known systems include PPS (Product Planing System) and PDM (Product Data Management ). These systems are database engines that store previously entered characteristics and processes required for the design and manufacturing of the collection of objects. In such systems, once a product is defined, the database engine retrieves the production plan for each member of the collection and the assembly plan for the entire collection of objects. The main limitation of these systems is that only plans for products that were previously defined in the database can be automatically generated. Consequently, the only available flexibility is that which was predefined by the database programmer. Another shortcoming of the PPS/PDM systems is that they employ a text based interface that conflicts with the designed products, which are three dimensional objects such as mechanical assemblies, printed circuits boards, furniture, etc. Because the design process goes through drawing processes, measuring processes, etc., a graphic interface that facilitates design is desirable. Recently, a combination of CAD systems and PPS/PDM was introduced in order to improve the interface to the PPS/PDM systems. In such a combination, the CAD system enables the user to design a collection/assembly of three dimensional objects. The user may use a CAD modeler that implements the PPS/PDM design logic in the CAD system, thus enhancing the modeling process. For example a modeler of a simple writing desk helps the CAD user to draw a desk by defining the required type, dimension, color etc. The output of CAD system in this case, is not a drawing, but rather is an entry to the PPS/PDM, meaning the Item key in the PPS/PDM and the related parameters (height, color, style, material etc.). In such a way, a graphical interface to the PPS/PDM systems is achieved and a production plan for each member and the assembly plan for the collection of objects is generated by the PPS 'PDM.
The main two shortcomings of the original systems, however, remain. The CAD system generates drawings that cannot be converted into a production plan for each member and an assembly plan for the collection of objects. As such CAD systems are used only as an interface and not as an open design tool that can be used to design any member or collection of objects. Moreover, the PPS/PDM system generates only predefined data in the database engine. The shortcoming of the combination of CAD and PPS/PDM is "one way data flow" meaning that manual changes to the generated production plan of each member and the assembly plan of the collection of objects in the PPS/PDM systems are not forwarded to the CAD systems. Consequently, any custom design created in the CAD system must be redesigned for production and assembly in the PPS/PDM systems. In the opposite way, any custom design in the PPS/PDM system cannot be tested and displayed in the CAD system without redesigning in the CAD system.
A modeler may design a model according to a basic model that can be modified by defining a set of parameters, restrictions, and characteristics. For example, a stair modeler may include parameters such as: type of stairs (e.g., spiral or standard), height between lower and upper levels, and height between stairs. By specifying these parameters, the modeler automatically designs the required stairs. A problem arises if the stair design depends on a relational location of the stairs to other objects or assemblies. For example, a stairs modeler may require the distance between the lower and the upper levels to be connected by the stairs, however, this distance is based upon the existence of such levels as well as on the location of these two levels. For a better understanding of the dependence on location, existence, and dimension of other objects, one should note that with a common stairs modeler one may design stairs that lead to nowhere when the upper level does not exist at the stairs location. In the same way , the designed stairs may not reach the upper level, which may be higher than the distance parameter set in the modeler. Thus, a modeler is required to design a collection of objects and the assembly of the objects that depend on a virtual space having a previously undefined size and location. It would be desirable to be able to design a layout or construction having real 3D spaces that can be analyzed and assigned to the virtual spaces where the collection or assembly is designed.
Another problem associated with design systems is the difficulty of distributing production details to a destination (e.g., a furniture plant) when the details originate from a first location (e.g., a furniture store), where a collection of 3D objects is designed. When redesign is required in a PPS/PDM system, subsequent to the design in the CAD system, problems exist in addition to the inefficiency of the redesign. For example, in many cases the designer is not aware of production limitations that constrain the design scope. With the systems described above, including the combination CAD PPS/PDM, the designer may design a product than cannot be produced. This error will be discovered at the production planing level, during or subsequent to the redesign process.
Thus, an integrated system is required to enable the design and generation of the production plan for each member and the assembly plan for the collection of objects. This system should enable the design of previously undefined, custom made layouts as well as predefined layouts in a "two ways data flow." That is, the design of production process will affect the design of objects, and vice versa, i.e., design of objects will affect the production plan and assembly plan for the collection.
SUMMARY OF THE INVENTION It is an object of this invention to provide an integrated system that enables the user to graphically design a three dimensional object and a collection of three dimensional objects in a previously undefined structure and generate a production plan for each object and an assembly plan for the collection of objects based upon the system's analysis of the three dimensional objects.
This integrated system enables the design of previously undefined, custom made designs as well as predefined designs in a "two way data flow". In other words, that the design of production process affects the design of objects and structure, and vice versa, design of objects or structure affects the production plan and the assembly plan of the collection.
Another object of the present invention is to provide a design tool for design sites (e.g., designers, point of sale, and architects) that results in data suitable for transfer to the production site where the data is transformed into production plans for each object and the assembly plan for the collection of objects.
A further object of the invention is to provide a system for modeling a collection and assembly of objects, while maintaining internal logic between the objects, in an undefined virtual space.
A still further object of this invention is to provide a system for analyzing a set of objects and to form real spaces among them.
Another objective of the invention is to provide a system for analyzing a set of real spaces to find the possible sets of collection and assembly of objects, among predefined sets of collection and assembly of objects, to be defined to the real space.
A further object of the invention is to provide a system for assigning a real space's dimension, location and restrictions, to the virtual space.
A still further object of the invention is to provide a system for maintaining the relationship between the virtual and real spaces so that any changes or modification to the real objects forming the real spaces will result in a change of the dimension, location, and restrictions of the virtual spaces and as a result affects (i.e., produces corresponding changes in) the overall design.
The system includes a main engine that manages and facilitates analysis of the 3D objects and a variety of modeling engines that may be external or internal to the main engine. These modeling engines contain predefined logic for assembly or construction of 3D objects. The logic contains the mathematical and geometrical relations between the 3D objects as well as limitations, restrictions, knowledge data etc. The modeling engines can be added to the main engine at any time.
The main engine, which consists of other sub-engines, manages data that can be in the form of a variety of tables that contain the required information related to the 3D objects. The main engine processes and modifies the data tables according to the modeling engine's logic or the logic of the main engine itself.
The primar table that is maintained and analyzed by the main engine will be referred to as a "pan table." Each 3D object has a part structure that contain all the data required for managing the object, manipulating it and producing it.
A large amount of data is required to record all parts, sub-parts, processes, and sub- processes. In order to handle the amount of data and keep the design process as simple as possible, the part structure in the part table is defined so that all of its surfaces hold specific data which relates to the finish (e.g., painting, coating, veneering etc.) of each surface, as well as the required processing (e.g., grooves, drilling, routings, etc.). In such a way, the designer, while designing the collection, considers a final object, including the processed object plus all associated sub-parts, as a single object. The structure thus holds the necessary information to describe and create a variety of objects, including the objects themselves and additional sub-objects associated with each of the main object's surfaces. For example, consider a 3D object that is a rectangular wood board having two veneered faces, an edge band on its four peripheral edges, and fifty holes to be drilled on the upper surface. Normally, for managing and graphically presenting the board, fifty seven 3D objects should be recorded: one main board, two veneered sides, each having a thickness, four edging bands with a variety of thickness, colors, material etc., and fifty drill holes. According to the current invention, the board is described as a single object having the same amount or less data than an object created in a traditional solid CAD system.
The present part structure refers to predefined reference "objects" having only the necessary data, e.g.. an edge band, which has a thickness, color, supplier minimum order requirements and cost, rather than the standard CAD system that requires a specific definition of each object containing all data. Another important concept, which is implemented into the part structure, is the type field. A part ma}- be associated with a type of "reference part, type 2." A reference part holds information for all of its related parts. Other parts look at reference part to obtain information. For example, if five shelves exist, only one part needs to hold information and other parts simply refer at the one part that holds the information. In this way, families of non-identical parts can be managed, without overhead (i.e., extra) of data. This feature also supports many designs concepts where operation to one member would be automatically implemented to the modified member's related objects. For example, modifying the type of wall paper on one wall in a room will result in the modification of the wall paper on all other walls in the same room.
Several data structures are provided. One type is generic part, which is used for a part that has never been previously created. It is similar to a template and it holds default materials and accessories. The second type is part information, which stores four or five vectors that hold for example a set of materiels, accessories, and edge banding allowed to be used by generic part. A general part structure is shown in Figure 2. Each part has 1 of 3 statuses: if a part is status 0, it does not exist; if the status is 1, the part exists, it can be seen on the screen: if the status is 2, the part is a reference part that is created but not currently being used. The user can use it later without having to define all of the information. The main engine has an important mode that enables the creation of custom made, non predefined designs. This mode is called "breaking the rules" mode.
As described above, a set of modelers communicate with the main engine to facilitate the design of a 3D object's collections, such as the designing furniture. A modeler may design a model according to a basic model that can be modified by defining a set of parameters, restrictions, and characteristics. For example, a stairs modeler may include parameters such as: type of staircase (e.g., spiral or standard), height between lower and upper levels, and height between stairs. Based upon input of these parameters, the modeler automatically designs the required stairs. A problem arises if the required design is a custom design, meaning the required design is not within the scope of the predefined design options. For example, the following design is required: a spiral staircase with a given height between lower and upper levels, and specified height of each stair. The next to last stair should be attached to a special metal arm, which is attached to the wall. For such a mounting, the next to last stair should be cut in a different shape and length from the other stairs. This special mounting was not predefined in the modeler, thus no parameter has been assigned to this type of mounting. The result or output of the modeler is thus an incorrect or inefficient design.
The breaking the rules mode permits the user to employ the modeler up to a point where the design is as close as possible to the required custom design. By utilizing the modeler to this point, the user saves time and effort in the design process. Once the design has reached this point, the user sets the main engine to the breaking the rules mode. This mode allows the user to change any of the objects, without the implementation of the modeler rules. In the above example the user may change the size and shape of the next to last stair manually after obtaining the final design from the stair modeler. Because both the modeler and main engine update the parts table, the custom made design includes all of the data required for generation of the production plan for each object and the assembly plan for the collection of objects (e.g., stair and other objects). Furthermore, applying the modeler to the custom made design affects only parts (objects) that were not modified in the breaking the rules mode.
When breaking the rules mode is set, the user may have an interface access to the physical characters of each parts, without the involvement of the modeler. For better understanding, a simple example is set forth. In NON breaking the rules mode, the user has an interface to set the height of cabinet. He does it by entering into the file, "cabinet total height", the required height. Of course this entry will automatically change the height of the two side panels of the cabinet and will move the top panel of the cabinet. When breaking the rules mode is SET, it functions more like CAD. In other words, the user has an interface to click on the side panel and to change its height as desired. This will not effect any other part in the cabinet thus the cabinet height will remain the same, but one of the side panels is now "taller" or "shorter".
Subsequent to the design process, the main engine analyzes the part table to generate the production plan for each member and the assembly plan for the collection of objects. The analysis is based upon the data records associated with each part in the part table plus additional relevant data from other tables, such as material tables, accessories tables, operations tables, work station tables, etc. For example, the dimensions of the cut of an object made of material ID #2, which represents cooper sheet metal having a 0.4 mm thickness, may be calculated based upon a length from the length field in the part table, a width from the width field in the part table, and a thickness from the thickness field in the material table.
BRIEF DESCRIPTION OF THE DRAWINGS The present invention is further described in the detailed description which follows, by reference to the noted plurality of drawings by way of non-limiting examples of preferred embodiments of the present invention, in which like reference numerals represent similar parts throughout the several views of the drawings, and wherein:
Figure 1 is a block diagram illustrating the main engine 200 and its relationship with the breaking the rules engine 150 and the modeler engine 100, according to an aspect of the present invention:
Figure 2 is an exemplary part table format, according to a preferred embodiment of the present invention:
Figure 3 is a block diagram showing a general logic flow for modifying parts with a modeler and with the breaking the rules mode according to an aspect of the present invention;
Figures 4a- 4c illustrate exemplary screens viewed when designing a collection of three dimensional objects, according to an aspect of the present invention;
Figure 5 is an illustration of an exemplary screen showing an individual part menu accessed in the regular mode of operation, according to a preferred embodiment of the present invention;
Figure 6 is an illustration of a parts list generated by the collection and analysis engine, according to an aspect of the present invention;
Figures 7a and 7b show assembly instructions and drawings generated by the collection and analysis engine, according to an aspect of the present invention; Figure 8 is an illustration of a management report generated by the collection and analysis engine, according to an aspect of the present invention,
Figures 9a and 9b show a route card generated by the collection and analysis engine, according to an aspect of the present invention; Figure 10 is an illustration of a set of distribution labels generated by the collection and analysis engine, according to an aspect of the present invention,
Figure 11 is an illustration of a loading list generated by the collection and analysis engine, according to an aspect of the present invention,
Figure 12 is a block diagram illustrating the mam engine 201 and its relationship with the breaking the rules engine 150 and modeler engine 100, according to an alterna e embodiment of the present invention,
Figure 13 is an illustration of a design/construction of a collection of three dimensional objects forming real spaces, according to an aspect of the present invention,
Figure 14 is a conceptual illustration showing possible relationships among the spaces. In the illustration every rectangle stands for one space;
Figure 15a is an illustration of the construction of Figure 13 where the modelei automatically designed a set of drawers in the lower space according to the space dimension, location, and restrictions, according to an aspect of the present invention,
Figure 15b is the same construction as shown in Figure 15b with a modification of the basic construction of Figure 13 Figure 15b demonstrates the real space characteπstics that were assigned to the virtual space where the drawers were designed, resulting in the required modifications being applied to the drawer objects,
Figure 16 shows an exemplary process for analyzing a set of objects to form real spaces among the objects, and finding the possible sets of collection and assembly of objects, among predefined sets of collection and assembly of objects, to be defined to the real space, and assigning possible sets to the space Figure 16 further shows possible construction sets to torm vaπous closet configurations The various configurations may be defined manually or by a construction modeler, and
Figure 17 is a flow diagram showing exemplary logic for determining possible types of sets to be assigned to a certain space, according to an aspect of the present invention DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS The invention will now be described by way of example with reference to the accompanying drawings. According to a preferred embodiment, the integrated system facilitates the design and layout of furniture, its objects, sub-objects, and accessories. As a result of the design, the integrated system generates the required plans for production and assembly of furniture or a batch of furniture, and management plans for costing, production control, distribution control, and inventory control. According to the present invention, previously undefined designs may generate a previously undefined plan. Furthermore, two way data flow is achieved so that modifying or generating the production process (e.g., drilling or grooving the objects) affects the design, and modifying or creating the design affects the production and other plans.
The software enables one to design the shape, color, size, position, etc. of a member (part). In the same way, a production process may applied to the parts, and may effect the design. Figure 5 shows one of the interface menus which may apply commands to objects. The 5th and 7th commands are for applying processes, such as drilling to parts or controlling and adding more work station to the parts. Since the part data structure consists of physical characters such as shape and size as well as production processes, and since the user has access by interface to edit the part data structure, then there is a two way interaction between the design and the production plan. For the purposes of comparison, in a CAD system which is being used as an interface to PPS, drilling a hole or creation of a routing path in a panel, using the CAD system, will not effect the PPS. In the other direction, attaching a drill or routing a path in a panel, to a part in the PPS system, will not generate a circle or the path in the CAD system. In the modeler engine 100 there are mathematical functions which define the minimum and maximum of some parameters values, which define the 3D collection design. For example if one of the parameter in the modeler, defines the minimum height of a drawer front panel, then in a given height of an "air cube" to be "filled" with drawers, the maximum number of drawers will be defined for the user. The system informs the user by means as the "Min" and "Max" columns in Figures 4a, 4b and 4c. Some limitations are not calculated, but defined manually by the user according to his own will. For example, a user may want to limit the height of a cabinet, to the longest row material board that he would have.
Referring now to Figure 1, main engine 200 consists of an interface engine 160, graphics engine (drawing engine) 170, production management engine 180, and collection and analysis engine 300. The collection and analysis engine 300 contains an individual object production process engine 301 and an assembly process engine 302. Part table 400 and general tables 500 are also within the main engine 200.
Figure 4a shows an interface screen displaying a design of a simple writing desk and a dialog box that enables the user to define and set some simple parameters of the writing desk. All of the parameters displayed in the dialog box are predefined characteristics of the writing desk. The user sets the parameters to the required values to create the design. To update the design, the required values are sent to the assigned modeler that calculates all of the object's dimensions and locations using the allocated part table 400 and general tables 500. Once the part table 500 is updated by the modeler 100, the main engine 200 reproduces the graphics of the parts on the display screen. If the user had defined a new desk height and width, and a new width for a support panel 20, the result, which was stored in the part table 400, is shown in Figure 4b. Modifying of the parameter results in a predefined design because the parameters were predefined. Now the user may want to transform the design into a non predefined design. As seen in Figure 4a. the predefined parameters, in this case, only control the dimensions. Assume that the user would like to add curves to a top panel 10 and the support panel 20, and would also like to modify the shape of the right desk leg 30 to meet a certain condition/limitation in the office where the desk will be standing. These requested changes are not predefined and are contrary to the modeler logic, which creates a symmetrical writing desk having objects that are all rectangular boards. Thus, the user sets the main engine 200 to the breaking the rules mode. While modifying objects 10, 20, 30, the assigned objects are assigned a special type (indicating that the parts were changed in breaking the rules mode) in the parts table 400. As a result, according to Figure 3, the modeler which implemented the new parameters into the design will ignore all parts that have the special type, thus keeping the modifications made to parts 10, 20, 30 during the breaking the rules mode. Then, as in the regular mode, the part table 400 is updated, and the main engine 200 builds the parts using general tables 500 and draws the result on the screen, as seen in Figure 4c. Once the design stage ends, main engine 200 reads part table 400 of each designed item into concentrated temporary part table. Temporary part table consists of all parts from all different designs in the production batch. Then, the collection and analysis engine 300 scans the parts table by engine 301 and determines the production process required for each part. For example, the part "right desk leg" 30 records a selected band edge for its front edge, and routing operation for the lower back corner. Then, three main workstations are assigned to this member: cutting station, edging station, and routing station. For each work station, required information is then generated. For example, member 30 has a certain length and width. Engine 301 requests the thickness of the specified edge band that is recorded in member's 30 front edge. The edge band thickness is then subtracted from the width of member 30 resulting in the cut dimensions for the cutting station. The type and location of the edge band is then recorded for the edge banding station.
Furthermore, engine 301 checks all surfaces of member 30 in part table or list to find routing data. The geometric vectored information of the lower back corner is then recorded and stored in the routing work station. This information is than translated to a graphics format recognized by the NC machine software for production (e.g., DXF format).
Engine 302 then collects all parts of all the designs to form an optimal production plan for the whole batch. This production plan consists of several instruction documents, tables, files and drawings, to help the personnel on the production floor understand the required production process, and to help the operation management control the production flow. Engine 302 also generates reports and statistics for the management control and strategic management. One should note that once detailed design, production and assembly information is achieved by executing engines 200 and 301 , which reads the parts table, the generation of the required reports and statistics made by engine 302 is well known and implemented in many data management or database engines. So from the above example and demonstration of Figures 4a- 4c, it is noted that after the main engine 200 forms the part tables, the following procedures are well known "data management" operations. In a preferred embodiment, part table is exported in text format to any known external database engine to generate the required reports, billing, etc. The production process is defined by "collection and analysis engine" 300 and described for the user by set of reports which are illustrated in Figs. 6-11.
The result of the costing is demonstrated in Fig. 8 "Batch costing and specifications". The process of costing is as follows: in the "collection and analysis engine" 300, some tables are generated by summing the row material quantity needed by each part, or the defined cost of production process from each part. Since every row material has a price per unit (boards are usually priced by area, fittings by units and edge bands by running meter) , the cost of the whole batch and of individuals items in the batch, may be calculated and presented.
A description of generating a complete production plan process follows. As previously described, the main engine manages the "part table" which contains the data related to each member in the 3D collection. The structure of each member's data is detailed in Fig 2. When the user enters into the batch all of the files, which consist of the 3D objects and the collections, "collection and analysis engine" 300, collects all the part tables from all files in the batch. Then all parts are listed in one united table, and each part is compared with the rest of the parts, in order to find similar parts by blending of the needed production process to be applied on the part. For example, two parts which have to be laminated with the same paint are "sharing" the same work station along the production process, i.e., the painting room.
A sum of the area of all parts made of the same row material, may, be used for the row material pre calculation and order. Same cutting size parts, even if they may later go (after cutting) through different processes may be cut together. Each part get a unique number (route card number) which describes the order of work station, and the process needed in each station. Two or more parts, which have the same production process, may get the same unique number. An exemplary route card is shown in Figures 9a and 9b. The report types generated by engines 301, 302 according to parts list 401, will now be described by way of example with reference to the Figures 6-11.
In the other way, assigning a design as type of veneering to member 20 of desk 50 in Figure 4c results in a route card 20.1 as seen in Figure 9a where pre-cut station, followed by press station, followed by final cut station, are assigned to the member (work station CNC). Engine 301 performs this analysis of the production process according to records in the parts list 401.
Figure 12 shows an alternate embodiment of a main engine 201 that generates the part table 400. The user of main engine 201 is a designer or salesperson in a non- production site. Because the data generated by engine 201 is recorded in part table 400 which can be analyzed by engines 180 and 300 in the production site, the result of one-time design in any of the non production sites, is full production, assembly and management plans. Of course the data received from various non-production sites could be combined to form a larger production batch to be processed by engines 180 and 300. Main engine 201 consist of "interface engine" 160, "graphic engine" (drawing engine) 170, and commercial management engine" 181. Main engine 201 is identical in principle to main engine 200 of Fig. 1 with the elimination of engines 300 and 180, and with the provision of "commercial management engine" 181.
Transport of data between the production sites and non production sites, and any other locations, is done in a conventional manner such as with modems, internet sites, diskettes etc. The data may consist of all the data which describes the 3D objects (parts tables etc.).
According to another aspect of the invention, the construction to be analyzed is a set of boards forming the construction of a closet, as seen in Figure 16. Figure 16 shows possible configurations of various object to form a closet construction. Each of the configurations shown in Figure 16 forms 3D spaces. Numbers are assigned to the various 3D spaces. Software functioning as a modeler according to the present invention, is designed to automatically designs sets of drawers, set of shelves, sets of door hinges and sets of sliding doors. The modeler constructs the various sets with reference to a virtual space. Another set of rules is programmed into the modeler, as seen in the flow diagram of Figure 17. According to the logic, a space which does not contain other spaces (space
# 2 in Fig. 13 for example) may be "filled" with one of all of the above mentioned sets. If the space does contain at least one other space, than the "filler" may be of the kind "hinge doors" only.
At the beginning of the design process, the user may define the various dimensions, construction, set of material etc. of the basic construction (Fig. 13). The definitions are preferably done as described above. In such case, a set of parameters, restrictions, characters etc. are assigned to the basic construction. Modifying the set, automatically modifies the necessary objects to meet the required parameters, restrictions, characters etc. At any stage, the construction forms set of 3D spaces which may be filled with various types of collections or assemblies. The user may now assign type of filler, which are types of pre defined parametric sets of collections or assemblies, to any 3D space. According to the construction in Fig. 13, an automatic set of restrictions is assigned to the various 3D spaces.
Fig. 17 describes the basic logic of restrictions for the type of filler. According to Fig. 17, any 3D space, which doesn't contain any other 3D space, may be filled with any of various types of fillers. 3D space which contains another space (in Fig. 13, one can see that 3D space number 1 contains all other spaces, and 3D space number 3 contains 3D spaces 4,5), may be filled only with the type of filler, "hinge doors". According to the demonstrated logic, 3D spaces 2, 4, 5 may be filled with any one of all the filler types, and 3D spaces 1,3 may be filled, only with filler of type "hinge doors". Fig 15a, demonstrate the assignment of filler of type "drawers" to 3D space number 4. Since the filler is programmed related to virtual 3D space, the computer software assigns the space's dimensions, location and restriction to the assigned filler. For better understanding the result of the filler construction, right panel 14 of the basic construction 13 had been drawn in as transparent member. One may see that all the internal objects of the drawers were generated and placed in position. Now, Figure 15b demonstrates a simple change applied to basic construction 13. Vertical support 15 has been moved, to the left and horizontal support 16 has been moved up. As a result an enlargement of the width of the 3D spaces 3, 4, 5 is taking place, while the height of 3D space 4 became bigger. Since the generic filler's logic is relative to virtual 3D space, the computer software assigned the new space number 4 dimensions, location and restriction (it became wider and higher and it's location was changed) to the assigned filler. Fig. 16 demonstrates the new locations dimension and construction of filler of type drawers in 3D space 4.
Although the invention has been described herein with reference to particular means, materials and embodiments, the invention is not intended to be limited to the particulars disclosed herein; rather, the invention extends to all functionally equivalent structures, methods and uses, such as are within the scope of the appended claims.

Claims

WHAT IS CLAIMED IS:
1. A method of data representation of a set of 3D objects, where all but one of the objects in the set are 3D objects which form an envelope of the remaining 3D object of the set, as one 3D object
2. The method of claim 1, where each of the 3D objects in the set may be different than the other objects in the set.
3. A computer software for the design and generation of the production plan for each designed member and the assembly plan for the collection of the designed objects, which enable the design of non predefined objects and group of objects, custom made designs of objects and group of objects as well as pre defined designs of objects and group of objects.
4. The computer software of claim 3 where the design of production process affects the design of the objects, design of the objects affects the production plan and assembly plan for the objects.
5. The computer software of claim 4 where the data generated by the computer software is suitable data for the of each member and the assembly plan for the objects.
6. A computer software of claim 3 where the design of the non pre defined objects and group of objects, is subsequent to the design of pre defined objects and group of objects, so the maximum design efficacy is achieved with the design of predefined objects.
7. The computer software of claim 3 where drills and other process forming changes to the member, can be assigned to each of the member's surfaces.
8. A method and a computer software for the design and modeling of a collection of pre defined assemblies of three dimensional objects, in virtual 3D spaces.
9. A method and a computer software according to claim 8, the 3D objects comprising sets of drawers, doors, shelves, in virtual 3D spaces, which forms a closet.
- I i
PCT/IB1999/001620 1998-05-19 1999-05-19 Cad/cam method and system for management of a collection of three dimensional objects WO1999064968A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU59919/99A AU5991999A (en) 1998-05-19 1999-05-19 Method and integrated system for the design and management of a collection of three dimensional objects and for modeling the collection of three dimensional objects in virtual three dimensional spaces

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US8601698P 1998-05-19 1998-05-19
US60/086,016 1998-05-19

Publications (2)

Publication Number Publication Date
WO1999064968A2 true WO1999064968A2 (en) 1999-12-16
WO1999064968A3 WO1999064968A3 (en) 2000-03-23

Family

ID=22195605

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB1999/001620 WO1999064968A2 (en) 1998-05-19 1999-05-19 Cad/cam method and system for management of a collection of three dimensional objects

Country Status (2)

Country Link
AU (1) AU5991999A (en)
WO (1) WO1999064968A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6686935B1 (en) 2000-05-24 2004-02-03 International Business Machines Corporation Method and apparatus for object kerning
WO2005052865A1 (en) * 2003-10-08 2005-06-09 Incode International Limited Modelling 3-d objects
CN101673270B (en) * 2008-09-11 2012-07-25 北京数码大方科技有限公司 Method for managing CAD three-dimensional files
CN112668171A (en) * 2020-12-24 2021-04-16 杭州群核信息技术有限公司 Cabinet body internal structure design method based on free adaptation of sub-components

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2190268A (en) * 1986-04-25 1987-11-11 Toshiba Machine Co Ltd C.a.d.
US5293479A (en) * 1991-07-08 1994-03-08 Quintero Smith Incorporated Design tool and method for preparing parametric assemblies
EP0621545A2 (en) * 1993-04-21 1994-10-26 Hitachi, Ltd. Computer-aided design and production system for component arrangement and pipe routing
WO1996023280A1 (en) * 1995-01-25 1996-08-01 University College Of London Modelling and analysis of systems of three-dimensional object entities

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2190268A (en) * 1986-04-25 1987-11-11 Toshiba Machine Co Ltd C.a.d.
US5293479A (en) * 1991-07-08 1994-03-08 Quintero Smith Incorporated Design tool and method for preparing parametric assemblies
EP0621545A2 (en) * 1993-04-21 1994-10-26 Hitachi, Ltd. Computer-aided design and production system for component arrangement and pipe routing
WO1996023280A1 (en) * 1995-01-25 1996-08-01 University College Of London Modelling and analysis of systems of three-dimensional object entities

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6686935B1 (en) 2000-05-24 2004-02-03 International Business Machines Corporation Method and apparatus for object kerning
WO2005052865A1 (en) * 2003-10-08 2005-06-09 Incode International Limited Modelling 3-d objects
CN101673270B (en) * 2008-09-11 2012-07-25 北京数码大方科技有限公司 Method for managing CAD three-dimensional files
CN112668171A (en) * 2020-12-24 2021-04-16 杭州群核信息技术有限公司 Cabinet body internal structure design method based on free adaptation of sub-components

Also Published As

Publication number Publication date
AU5991999A (en) 1999-12-30
WO1999064968A3 (en) 2000-03-23

Similar Documents

Publication Publication Date Title
US11829685B2 (en) Method for designing and manufacturing custom-made furniture using computer, system, and program therefor
US9679410B1 (en) Systems and methods for parametric modeling of three dimensional objects
US9311432B1 (en) Automated design and manufacturing of complex layouts
US5293479A (en) Design tool and method for preparing parametric assemblies
US11507053B2 (en) System for optimizing the execution of parametric joinery for solid wood products
US11556116B2 (en) Automated manufacturing architectural millwork
KR20020019516A (en) Design support system, design support method, and medium storing design support program
US9785727B1 (en) Method and system of assembly design
US8909501B2 (en) Method and apparatus for optimization of floor covering and system for user configuration and real time pricing information
JP6022290B2 (en) Data structure of unit, unit design apparatus and method, furniture design apparatus, furniture design system, and furniture manufacturing support apparatus
US7353072B2 (en) Method for interpreting design data and associating manufacturing information with the data and software and systems for implementing the method
US20140067338A1 (en) Box-Based Architectural Design
WO1999064968A2 (en) Cad/cam method and system for management of a collection of three dimensional objects
CN108595727A (en) Design method, device and the realization device that case becomes
US11372390B2 (en) System, method, and program for manufacturing computer-designed part members of furniture using machining equipment
JP2012108734A (en) Design support device
CN108153953A (en) A kind of BIM materials plant design CAD and method based on mapping software exploitation
EP1229460A1 (en) System for supporting building production
JPH0241573A (en) Solid cad system
JPH05282404A (en) Package design system
Opiyo Review of the Product Development Process and Information Flow in the Manufacturing Industry: Problems and a Possible Way Forward
JP2000259681A (en) Automatic synthesis system for drawing data

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

NENP Non-entry into the national phase in:

Ref country code: KR

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase