|Publication number||US7634324 B2|
|Application number||US 11/622,301|
|Publication date||Dec 15, 2009|
|Filing date||Jan 11, 2007|
|Priority date||Jan 11, 2007|
|Also published as||US20080172605, WO2008086536A2, WO2008086536A3|
|Publication number||11622301, 622301, US 7634324 B2, US 7634324B2, US-B2-7634324, US7634324 B2, US7634324B2|
|Inventors||Toby S. Smith|
|Original Assignee||Autodesk, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (21), Non-Patent Citations (1), Classifications (19), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
1. Field of the Invention
The present invention generally relates to computer software. More specifically, the present invention relates to a method and system for aligning and laying out drawing elements in CAD drawings.
2. Description of the Related Art
The term computer-aided design (CAD) generally refers to a broad variety of computer-based tools used by architects, engineers, and other construction and design professionals. In the development of residential and commercial building designs, one common and time-consuming task is the layout of drawing elements representing electrical devices and light fixtures, in a CAD drawing. Specifically, drawing elements representing these objects need to be positioned in specific ways relative to other elements in the CAD drawing in order for the CAD drawing to correctly represent the design of a building. Examples of the other drawing elements include lines, arcs, walls, and ceiling grids. Further, the design of the building may also need to conform to various building standards or building codes, and the positioning of the drawing elements needs to satisfy any such requirements. Using existing CAD programs, design professionals are burdened with having to manually perform certain steps, which are further discussed in subsequent paragraphs, to individually layout and orient each of the drawing elements. In addition, if the boundaries of the objects are not straight lines but instead are, for instance, curved lines, then even more steps are needed to achieve proper alignment of the drawing elements representing electrical devices.
Further complicating the process, if the user instead intends to place the receptacle 110 at a point B on the curved section 120-2, as shown in
As has been demonstrated, the prior art CAD program requires its user to perform certain operations manually to add, place, and align a drawing element. If a CAD drawing includes more drawing elements, then more manual operations are required. As the number of manual operations increases, the results become less consistent and precise.
Moreover, because the prior art CAD program does not enforce or check how the drawing elements are laid out pursuant to any construction standards (e.g., a regulation specifying maximum permissible distance between two electrical devices), design professionals also need to manually verify and potentially modify the resulting layout. Referring again to
As the foregoing illustrates, there is a need in the art to provide a method and system for automatically aligning and laying out drawing elements in a CAD drawing that is more efficient and precise than prior art techniques.
Embodiments of the invention include a method for aligning and laying out drawing elements in a computer-aided design drawing and computer-readable medium storing instructions for implementing the method. Specifically, one embodiment of the present invention sets forth a method, which includes the steps of receiving a selection of an insertion point on an object within the CAD drawing, where the drawing element attaches to the object at the insertion point, placing the drawing element at the insertion point, and orienting the drawing element at a predetermined alignment angle relative to the object.
At least one advantage of the present invention disclosed herein is the ability to enable a user to precisely and efficiently manipulate, place, and align multiple drawing elements in a computer-aided design drawing, especially for residential and commercial developments.
Embodiments of the present invention provide a method and system for aligning and laying out a drawing element with respect to an object in a computer aided design (CAD) drawing.
At step 305, a CAD application program implementing one embodiment of the present invention receives a user-selected drawing element. Examples of a drawing element include, without limitation, an electrical device, a light fixture, or a receptacle (e.g., an electric socket, a telephone jack, or a network port). This drawing element can be a new element to be added in a CAD drawing or an existing element to be manipulated in the CAD drawing. At step 315, the system receives a user-designated insertion point to place the drawing element. The insertion point can be a point on an object, such as, without limitation, a point on a line, an arc, a wall, or a ceiling grid. At step 325, the system automatically (i.e., without any further intervention from the user) places the drawing element at the insertion point at an intended alignment angle, which is measured relative to the object containing the insertion point. In one implementation, before the actual placement of the drawing element, the system has obtained the following information: (1) the identity of the user-selected drawing element, (2) the location of the drawing element, (3) the user-designated insertion point, and (4) the intended alignment angle. Note, the system may accept a user-specified angle or may be configured with a predetermined value, such as a right angle.
Additionally, the components illustrated in the system 500 may be implemented as software applications that execute on a single computer system or on distributed systems communicating over computer networks such as local area networks or wide area networks, such as the Internet. For example, a graphical user interface (GUI) 510 may include a software program executing on a client computer system at one physical location and communicating with a CAD application 505 executing at another physical location. Also, in one embodiment, the programming instructions of the CAD application 505 and the GUI 510 may be stored on computer readable media such as a CD-ROM, DVD-ROM, flash memory module, or other tangible storage media.
As shown, the system 500 includes, without limitation, the CAD application 505, the GUI 510, a CAD drawing 520, user input devices 530, and a display device 515. The CAD application 505 is configured to allow a user to compose or select a CAD drawing 520 via the GUI interface 510. Accordingly, the CAD application 505 and the GUI interface 510 may include programmed routines or instructions enabling the user to create, edit, load, and save the CAD drawing 520. In one embodiment, the Autodesk® Inventor™ application program (and associated utilities) may be used. Those skilled in the art will recognize, however, that the components shown in
The CAD drawing 520 includes a drawing element 522 and an object 524. Some examples of the drawing element 522 and the object 524 are discussed throughout this disclosure. In one embodiment, the GUI 510 includes a drawing element selector 512, an alignment tool 513, and a layout tool 514. The drawing element selector 512 of the GUI 510 allows a user of the CAD application 505 to select the drawing element 522 to add, move, or copy in the CAD drawing 520. The alignment tool 513 allows the user to specify certain parameters for carrying out the automatic alignment, according to one embodiment of the present invention. For example, suppose the drawing element 522 is selected to be attached to the object 524 in the CAD drawing 520. The alignment tool 513 provides an input interface for the user to designate an intended alignment angle between the selected drawing element 522 and the object 524. In addition, the alignment tool 513 also allows the user to either turn on or turn off the automatic alignment feature associated with the selected drawing element 522. The layout tool 514 also provides an input interface for the user to specify a layout rule. For instance, the layout rule may include, without limitation, a number of drawing elements to populate the space, and the distance between any two drawing elements. The user defines the rules in the interface and then selects a point in the drawing. Item(s) are then placed in the CAD drawing based on the layout rule.
Similar to the alignment tool 513, the layout tool 514 also allows the user to either enable or disable applying the layout rule to a designated group of drawing elements. Additionally, the layout tool 514 supports various “group” functions, allowing a user of the CAD application 505 to select and manipulate a group of drawing elements at the same time. It should be apparent to a person with ordinary skills in the art to recognize that the aforementioned components in the GUI 510 can be combined or reorganized in a variety of ways.
Alternatively, the user may specify the length of d7 in the layout rule, and instead of calculating d7 based on the length of the perimeter of the wall 720, the system 500 lays out the light fixtures based on the specified length. In one implementation, the system 500 also proactively verifies whether any layout violates a requirement imposed by any standardized code tracked by the system (e.g., building regulations for new construction). For instance, if d7 exceeds the maximum permissible distance, then the system 500 suspends the layout operation and alerts the user of the violation, so the user can modify the layout rule accordingly. It should be apparent to person ordinarily skilled in the art to implement this verification mechanism at various points of the process 600 without exceeding the scope of the present invention. For example, the verification may take place at the step 615 after the user specifies certain parameters in the layout rule, such as the length between any two drawing elements. So, if the specified values violate the applicable building code or regulation, then the user is prompted to enter new values. In another implementation, the verification may take place at the step 635 as the system 500 attempts to populate the drawing elements.
Moreover, in addition to the rule-based approach of laying out the drawing elements, the system 500 also automatically align the drawing elements as discussed in the process 300 above.
As mentioned above, the layout tool 514 in the GUI 510 may support one or more grouping functions. For example, during the initial placement of items, the user may receive a preview based on the rule values and can then change them in the rule if they do not like the preview. After the user selects an initial insertion point, all items are placed in the drawing and then may thereafter be manually edited one-by-one. Further, in one embodiment the placed items may be group-selectable. So, if the user intends to move, copy, or otherwise manipulate a number of drawing elements at once, these grouping functions allow the user to select two or more items and perform the same operation to multiple drawing elements at the same time. For example, if the user wants to move the light fixtures 712, 713, and 714 shown in
While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5123087||Apr 27, 1990||Jun 16, 1992||Ashlar, Inc.||Geometric inference engine|
|US5198986 *||Sep 14, 1990||Mar 30, 1993||Mitsubishi Denki Kabushiki Kaisha||Crosstalk verification device|
|US5412877 *||May 11, 1993||May 9, 1995||Mckendrick Blair T||Fixture gauge and method of manufacturing same|
|US5640497 *||Jan 23, 1995||Jun 17, 1997||Woolbright; Phillip Alexander||Layout redesign using polygon manipulation|
|US6049340 *||Nov 7, 1996||Apr 11, 2000||Fujitsu Limited||CAD system|
|US6189132 *||Apr 9, 1998||Feb 13, 2001||International Business Machines Corporation||Design rule correction system and method|
|US7068288 *||Feb 21, 2003||Jun 27, 2006||Xerox Corporation||System and method for moving graphical objects on a computer controlled system|
|US7098933 *||Feb 24, 1999||Aug 29, 2006||Autodesk, Inc.||Acquiring and unacquiring alignment and extension points|
|US7272789 *||Nov 18, 2003||Sep 18, 2007||Typefi Systems Pty. Ltd.||Method of formatting documents|
|US7290242 *||Mar 28, 2005||Oct 30, 2007||Micron Technology, Inc.||Pattern generation on a semiconductor surface|
|US7333868 *||May 9, 2006||Feb 19, 2008||Tramco, Inc.||Systems and methods for designing and manufacturing engineered objects|
|US20020029219 *||Aug 28, 2001||Mar 7, 2002||Matthias Mulzer||Providing and using predefined part data for a CAD program|
|US20020035408||Sep 19, 2001||Mar 21, 2002||Smith Terrance W.||System and process for client-driven automated computer-aided drafting|
|US20030085887 *||Feb 8, 2002||May 8, 2003||Smartequip, Inc.||Method and system for identifying objects using a shape-fitting algorithm|
|US20050081161||Oct 10, 2003||Apr 14, 2005||Macinnes Cathryn||Three-dimensional interior design system|
|US20050256693||Jun 17, 2003||Nov 17, 2005||Robert Meisenecker||Problem solving by a cad program|
|US20060185275 *||Sep 8, 2005||Aug 24, 2006||Yatt Barry D||Method and system for building, designing with and managing elements of construction|
|USRE39950 *||Nov 4, 1998||Dec 25, 2007||Autodesk, Inc.||Method and apparatus for interactively manipulating and displaying presumptive relationships between graphic objects|
|JPH02278465A *||Title not available|
|JPH04115367A *||Title not available|
|JPH05204899A *||Title not available|
|U.S. Classification||700/103, 345/440, 345/441, 715/204, 345/662, 700/57, 715/243, 345/677, 345/651|
|International Classification||G06T11/20, G09G5/00, G05B19/18, G06F19/00, G06F17/00|
|Cooperative Classification||G06F17/50, G06T19/20, G06T2219/2004|
|European Classification||G06T19/00, G06F17/50|
|Jan 11, 2007||AS||Assignment|
Owner name: AUTODESK, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SMITH, TOBY S.;REEL/FRAME:018748/0709
Effective date: 20070104
|Mar 8, 2013||FPAY||Fee payment|
Year of fee payment: 4
|Jun 8, 2017||FPAY||Fee payment|
Year of fee payment: 8