`
`(12) United States Patent
`Mathews et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7.689,387 B2
`*Mar. 30, 2010
`
`(54) METHOD AND APPARATUS FOR
`PROVIDING ACCESS TO DRAWING
`INFORMATION
`(75) Inventors: Brian Philip Mathews, San Francisco,
`CA (US); Ratnakar G. Dev, San Rafael,
`CA (US)
`
`(73) Assignee: Autodesk, Inc., San Rafael, CA (US)
`
`7, 1997 Jolliffe et al.
`5,646,862 A
`5,675,782. A 10/1997 Montague et al.
`5,890,147 A * 3/1999 Peltonen et al. ................ 707/1
`5,911,776 A * 6/1999 Guck ......................... 709/217
`5,940,082 A * 8/1999 Brinegar et al. ............. 345,442
`6,057,929 A
`5, 2000 Walker
`6,243,713 B1* 6/2001 Nel
`SO
`
`tal. ............ TO7 104.1
`a
`
`(*) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 535 days.
`This patent is Subject to a terminal dis
`claimer.
`
`(21) Appl. No.: 11/376,820
`
`22) Filed:
`(22) File
`(65)
`
`Mar 16, 2006
`ar, 10,
`Prior Publication Data
`US 2006/O190443 A1
`Aug. 24, 2006
`lug. 24,
`O
`O
`Related U.S. Application Data
`(63) Continuation of application No. 09/539,500, filed on
`Mar. 30, 2000, now Pat. No. 7,047,180.
`(60) Provisional application No. 60/132,057, filed on Apr.
`30, 1999
`swa- s
`s
`(51) Int. Cl.
`(2006.01)
`G06F 7/50
`(2006.01)
`G06F 7/00
`(52) U.S. Cl. ................................ 703/1715/964; 707/3
`(58) Field of Classification Search ..................... 703/1;
`345/672, 595; 700/98, 182; 715/964; 707/3
`See application file for complete search history.
`Ref
`Cited
`eerees e
`
`(56)
`
`U.S. PATENT DOCUMENTS
`
`5,133,052 A
`5,608,874 A
`
`7, 1992 Bier et al.
`3/1997 Ogawa et al.
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`"AutoCAD and its applications Advanced”. Terence M. Shumaker et
`al., The Goodheart-Willcox Company, Inc., 1998, p. 347.
`(Continued)
`Primary Examiner Paul L. Rodriguez
`Assistant Examiner Dwin M Craig
`(74) Attorney, Agent, or Firm Gates & Cooper LLP
`
`(57)
`
`ABSTRACT
`
`A computer implemented system, method, and article of
`manufacture provide access to a drawing. A server computer
`has one or more server component applications. One or more
`drawing files are created by a first drawing application and
`d on th
`puter. A
`h
`p
`Stored On the Server COmouter. A Search Server COmponent
`application executes on the server computer and provides a
`query engine that allows queries of the one or more drawing
`files to locate data. A conversion server component applica
`tion executes on the server computer and dynamically convert
`the drawing files into a drawing file format viewable by a
`client application executing on a client compute. The server
`component applications are further configured to provide the
`one or more drawing files that have been dynamically con
`verted to the client computer.
`
`21 Claims, 7 Drawing Sheets
`
`SitaRNETijolaiserwear
`
`SATWESERVERPAGES
`
`aCCESS
`ANAGER
`
`
`
`
`
`
`
`
`
`WB
`application
`
`824
`
`AfAGEENT
`COWSOE
`
`SWER
`aPPical
`CSNAP-N
`
`432 428
`
`422
`
`DAWSA
`
`O3ECEX
`
`AGE ENGINE
`
`
`
`44
`
`afs
`
`48
`
`Instacart, Ex. 1030
`
`1
`
`
`
`US 7.689,387 B2
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`7/2001 Nasr et al. ..................... 707/5
`6,263,332 B1
`8, 2003 Bodin et al.
`6,604,106 B1
`6,725,251 B2 * 4/2004 Ito et al. ..................... TO9,203
`7,047,180 B1* 5/2006 Mathews et al. .............. 703/27
`OTHER PUBLICATIONS
`“How Networks Work” by Derfler et al., Fourth Edition, 1998, Que
`Corporation, ISBN: 0-7897-1595-3, p. 119.
`"AutoCAD and its applications” by Terence M. Shumaker et al., The
`Toodheart-Willcox Company, Inc., 1998, pp. 267. 268, and 277.
`
`“Understanding Thin-Client/Server Computing” by Joel P. Kanter,
`Microsoft Press, 1998, pp. i through 261.
`Internet Information Services 5.0 Technical Overview, 1999, 36
`pageS.
`For Starters: #12. Rise of the Serving Class: Internet Information
`Server 4.0, 1999, 8 pages.
`Internet Information Server 4.0 Data Sheet, 1999, 3 pages.
`Comparing Internet Information Server with Competing Products,
`1999, 4 pages.
`Active Server Page, 1981-1999, 1 page.
`* cited by examiner
`
`2
`
`
`
`I|: 2 ‘i:I|: ;[|:
`
`
`
`i
`a
`
`f
`
`Mm
`oO
`
`f
`
`aWY
`N/ N OC
`
`U.S. Patent
`U.S. Patent
`
`Mar. 30, 2010
`Mar. 30, 2010
`
`Sheet 1 of 7
`Sheet 1 of 7
`
`US 7.689,387 B2
`US 7,689,387 B2
`
`S
`2
`_
`wn
`
`S
`2
`=
`wn
`
`S
`S™
`~
`s
`
`—
`is
`
`.
`b
`
`Mw
`is
`
`
`
`
`
`Lae
`
`d
`
`N
`
`Q
`C
`O
`2
`Q
`
`FIG.1(PRIORART)
`
`VN
`
`O
`U
`
`d
`108
`S
`
`O
`
`106
`S
`
`S.
`- N.
`2S,
`(/)
`
`NTSERVER
`
`N
`
`104
`S
`
`CM)
`Ws
`"a
`
`S
`102
`
`O
`
`100
`S
`
`- )
`by
`
`3
`
`
`
`U.S. Patent
`U.S. Patent
`
`Mar. 30, 2010
`Mar. 30, 2010
`
`Sheet 2 of 7
`Sheet 2 of 7
`
`US 7.689,387 B2
`US 7,689,387 B2
`
`ASVEVLVd
`
`9b¢e
`
`gam
`
`YaAYuas
`
`Ole
`
`MYOMLAN
`
`c0¢
`
`b0c
`
`YASMOU
`
`80¢
`
`¢Old
`
`003
`00¢
`
`
`
`
`
`
`
`
`
`
`
`
`
`4
`
`
`
`
`
`
`U.S. Patent
`
`Mar. 30, 2010
`
`Sheet 3 of 7
`
`US 7,689,387 B2
`
`48SMO1Q
`
`OLe
`
`XACNI/SH
`
`LN
`
`YAAYsaS
`
`LYFAANOD
`
`HIAVaS
`
`NOILVOlIdd¥
`
`daAYdas
`
`90€P0&ZOE
`
`YAAYAS
`
`90¢
`
`€Old
`
`5
`
`
`
`
`
`
`
`
`U.S. Patent
`U.S. Patent
`
`Mar. 30, 2010
`
`Sheet 4 of 7
`
`US 7.689,387 B2
`US 7,689,387 B2
`
`NOILVOMIddvV
`
`gam
`
`OLE
`
`uesMoug
`AISMOIG
`
`a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`pepvolYAIAYASNOILVWYOINILANYALNISW
`
`NOILVONMdd¥
`
`Ni-dVNSOWN
`
`YAANaS
`
`YaAYaS
`
`LNINFOVNVN
`
`FIOSNOOXCNISW
`
`
`
`
`
`SAIIVdYSAYASSAILOVSW
`
`ANIDNAFOVAIX8dLOsrgoONIMVYG
`
`
`
`
`9obEb
`
`cor
`
`OcP
`
`1VdSMG
`
`YaOVNVA
`
`YaAAdFAS
`
`NOILVONIddV¥
`
`OLpOLbble
`
`vOla
`
`6
`
`
`
`
`
`
`U.S. Patent
`
`Mar. 30, 2010
`
`Sheet 5 of 7
`
`US 7.689,387 B2
`
`
`
`Autodesk OWG Search-Microsoft Internet Explorer
`p
`
`Tips for searching
`Sear
`ain
`
`Documents 1 to 8 of 8 matching the query "exterior".
`
`Summary 7 layers, 6 blocks, created 922.985:59:59PM
`itle:Exerioridow
`on Gard
`Subject Archiectural Details
`Author. Jason Pai
`
`http:All roce?troCAGiQ/CS 830) 2-dig
`size 47588 bytes - 6/18/98 12:04:06 AM GMT
`---
`it
`E.2cs 8350 du
`-
`Summary 7 layers, 8 blocks, created 92298600.00A.
`de: Exerior Door Sill
`Subject archiectural details
`Author. Jasonal
`
`http: fibu note?troCfdwa/cs 83.50 t.dw
`size 33273 bytes -6/17/98 11:41:28 PM GMT
`
`O9.
`
`500
`
`FIG. 5
`
`7
`
`
`
`U.S. Patent
`
`Mar. 30, 2010
`
`Sheet 6 of 7
`
`US 7.689,387 B2
`
`
`
`utodesk DWG Search - Microsoft Internet Explorer
`
`--
`
`----------- - W
`
`---
`
`EHEnk glauciesk-Mansie Sea
`
`Enter your query below:
`incow
`
`G
`Tip sfors earching
`Search Agálfi.
`
`Duuli?ibilsi lu 4-u? +rridlutify the quury'widow"
`
`8
`
`
`
`U.S. Patent
`
`Mar. 30, 2010
`
`Sheet 7 of 7
`
`US 7.689,387 B2
`
`706
`708
`
`704
`
`710
`
`712
`
`arocadeo Drawing infty Microsoft inlinet Eplore
`Fle Edi yiew Gc
`{
`v.
`Addiesel to
`
`
`
`-------
`-
`---
`------
`4 Eurs gatodesk. Mansite Search allowg search
`---
`
`é
`Autodesk
`
`| KOH.ne
`
`Project Stildards
`
`Kalamazoo Site
`
`seard,
`Search Details
`
`literispiidae.
`Phone lookup
`
`
`
`WIRE MES: Kiribow Guaro Two Sul Relow
`August stay as grues
`-- / Tri paint
`S. Ral PAIHEO
`sealt
`
`w
`
`flat-1 sor Pated) alia a cab M
`ALukinuki Na. As Setty ED
`
`C
`
`is a
`
`Re
`O. Oth Towe
`On Thawed Jinlocked
`3. TEXT, Cn. Thawed. Unlocked
`KEYNOTE: Orhawed. Unlocke
`S.). On Thavanninrkar
`8. DTL. On Thawed. Unlocked
`7: JULINE. Cn. Thawed. Unlocked
`
`DCL-3ACC
`
`-
`
`.
`
`. .
`
`s
`
`702
`
`500
`
`FIG. 7
`
`il
`
`:
`
`i
`
`i
`:
`
`an
`
`.
`
`9
`
`
`
`US 7,689,387 B2
`
`1.
`METHOD AND APPARATUS FOR
`PROVIDING ACCESS TO DRAWING
`INFORMATION
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application is a continuation application and claims
`the benefit under 35 U.S.C. Section 120 of the following
`co-pending and commonly-assigned U.S. utility patent appli
`cation(s), which is/are incorporated by reference herein:
`U.S. patent application Ser. No. 09/539,500, entitled
`METHOD AND APPARATUS FOR PROVIDING
`ACCESS TO DRAWING INFORMATION', filed on Mar.
`30, 2000, issued as U.S. Pat. No. 7,047,180 on May 16, 2006,
`by Brian P. Mathews and Ratnakar G. Dev, which application
`claims the benefit under 35 U.S.C. S 119(e) of commonly
`assigned U.S. Provisional application Ser. No. 60/132,057.
`entitled AUTOMATED SEARCHING AND DISTRIBU
`TION OF DESIGN DRAWING DATA TO INTERNET
`BROWSERS. filed on Apr. 30, 1999, by Brian Philip
`Mathews et. al.
`This application is related to the following commonly
`assigned patent applications, all of which applications are
`fully incorporated by reference herein:
`U.S. patent application Ser. No. 09/501,474, now U.S. Pat.
`No. 6,628,285, entitled “INTELLIGENT DRAWING
`REDLINING AND COMMENTING FEATURE", by Vin
`cent Abeyta, et. al., filed on Feb. 9, 2000 and issued on Sep.
`30, 2003; and
`U.S. Provisional Patent Application Ser. No. 60/126,170,
`entitled “CAD DRAWING COLLABORATION VIA WEB
`BASED SYSTEMS, by Mark E. Sweat et al., filed on Mar.
`25, 1999.
`
`10
`
`15
`
`25
`
`30
`
`BACKGROUND OF THE INVENTION
`
`35
`
`45
`
`1. Field of the Invention
`The present invention relates generally to transmission of
`data between computers, and in particular, to a method, appa
`40
`ratus, and article of manufacture for providing access to draw
`ing information and for automated searching, translation,
`filtering, change notification, version management, and dis
`tribution of design drawing data.
`2. Description of the Related Art
`The use of Computer Aided Design (CAD) application
`programs is well known in the art. CAD application programs
`use specific formats to store drawing data. These formats
`include “.DWG” formatted drawings, “.DWF formatted
`drawings, and other formats.
`50
`The drawing formats are typically unique to a given CAD
`application program. The drawing formats were designed to
`store drawing data on a single computer or a single host
`computer, and are not easily transported via computer data
`links, typically because of the size of drawing files and the
`uniqueness of the computer objects.
`However, with the advent of collaborative efforts using
`computer data links, custom libraries of CAD objects, and
`other computer-based tools that allow multiple users to access
`drawings from geographically diverse sites, the drawing for
`mats have become cumbersome to the progress of remote
`computing. The now widespread use of the Internet, Intra
`nets, and Local Area Networks (LANs) requires that the
`drawing formats be more compatible with network and web
`enabled systems.
`65
`Consequently, there is a need in the art for improved tech
`niques to access, translate, and manipulate CAD designed
`
`55
`
`60
`
`2
`drawing data on a network. Further, there is a need in the art
`for improved techniques for formatting the data Such that the
`various parties that desire access to the CAD data can obtain
`the information desired. These problems may be better under
`stood by describing drawing formats and prior art access
`techniques.
`Drawing Formats
`As described above, CAD application programs use spe
`cific formats to store drawing data. These formats include
`“.DWG” formatted drawings, “.DWF formatted drawings,
`“.DXF formatted drawings, and other formats.
`The “DWG” format is a standard file format for saving
`vector graphics from within CAD drawing programs such as
`AutoCADR) available from AutoDesk, Inc.
`The “DWF' (drawing web format) format is an industry
`internet standard recognized by IETF, was developed by the
`assignee of the present invention, AutoDesk, Inc. and is an
`open file format for the transfer of drawings over networks,
`including the internet. DWF is a highly compressed file for
`mat that is created from a DWG file. DWF files are easy to
`publish and view on the web. Further, DWF is a vector graph
`ics format for the transfer of drawings over intranets and the
`internet. DWF is a graphics format for vector data, unlike GIF
`or JPEG which are graphics formats for raster data. DWF files
`can be generated by any application that supports DWF
`exporting. Further, any DWF file can be viewed by any DWF
`viewer. DWF uses compression to speed up data transfer
`times. Further, DWF removes the “non-visual components
`of a drawing, like attributes, properties, and complex object
`behavior. In other words, DWF is an “electronic plot that is
`“view-only”. DWF supports hyperlinking, so that vectors or
`areas in a drawing can be made “active'.
`Users of DWF have three benefits: speed, security and
`precision. DWF provides speed because of the high compres
`sion utilized so that files are Smaller and faster to transmit and
`open than fill-blown CAD files. Most DWFs are from 50-90
`percent smaller than DWG files. DWF provides security
`because DWF files cannot be modified, so they maintain the
`integrity of the original CAD DWG file which it is based on.
`In effect, the DWF is a “digital plot” of the original DWG
`drawing. DWF provides precision because DWF files are
`vector-based. When Zooming in a DWF, precision is main
`tained; with other bitmap formats (e.g., GIF or JPEG), Zoom
`ing results in “fat pixels'.
`“DXF formatted drawings are drawings formatted in the
`document exchange format. Many CAD systems import and
`export the DXF format for graphics interchange.
`Access Techniques
`FIG. 1 illustrates techniques for publishing drawing infor
`mation (i.e., providing access to drawing information). A
`drawing program Such as AutoCADR) is utilized to create one
`or more DWG drawings 100. The drawings may then be
`converted to DWF format 102 (or other format) by the draw
`ing program.
`Once the format has been converted by a drawing program
`user, the DWF file may be published using a web server. For
`example, in FIG. 1, an information internet server (IIS) 104
`(available from Microsoft) is utilized in combination with NT
`server 106 (available from Microsoft) to publish the DWF
`information. IIS is an internet file and application server that
`is included with the Microsoft Windows NT Server operating
`system. IIS can be used alone as a web server, or in conjunc
`tion with compatible technologies to set up internet com
`merce, to access and manipulate data from a variety of data
`Sources, and to build web applications that take advantage of
`server Script and component code to deliver client-server
`
`10
`
`
`
`US 7,689,387 B2
`
`3
`functionality. Other internet servers that the prior art utilizes
`include the Netscape Enterprise Server and the Apache
`SeVe.
`Server 104 creates HTML documents 108 that may be
`viewed by browsers 110. Many browsers are available in the
`prior art including Internet Explorer and Netscape Navigator.
`Thus, the prior art provides the ability to view a DWF file 102
`and information about the DWF file 102 using a drawing
`program to convert DWG files to DWF files and a server 104
`to create HTML pages 108 for viewing over the internet using
`a browser 110.
`
`SUMMARY OF THE INVENTION
`
`To address the requirements described above, one or more
`embodiments of the invention provide a method, apparatus,
`and article of manufacture for automating the finding and
`serving of CAD design data. One or more embodiments of the
`invention increase the level of access and automation possible
`with design data. One or more embodiments of the invention
`provide a server comprised of various components including
`an information extraction component, a search component,
`and a conversion component. The various components pro
`vide users with enhanced access to drawing and design data.
`One or more embodiments of the invention also provide pro
`grammable, Scriptable components that can query, filter,
`manipulate, merge, and translate design drawing data using a
`graphical user interface. Further, network and web site
`administrators can use the present invention to dynamically
`index and publish design drawing data.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`Referring now to the drawings in which like reference
`numbers represent corresponding parts throughout:
`FIG. 1 illustrates the prior art environment for providing
`access to drawing information;
`FIG. 2 is an exemplary hardware environment in accor
`dance with one or more embodiments of the invention;
`FIG.3 illustrates the details of a server, server components,
`and the interaction between server components in accordance
`with one or more embodiments of the invention;
`FIG. 4 illustrates further details of a server design in accor
`dance with one or more embodiments of the invention; and
`FIGS. 5-7 illustrate the user interface in accordance with
`one or more embodiments of the invention.
`
`DETAILED DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`4
`can query, filter, merge, and translate design drawing data
`using a graphical user interface Such as a Web browser inter
`face. Further, network and Web site administrators can use the
`present invention to dynamically index and publish design
`drawing data.
`The present invention allows for the custom creation of
`HyperText Mark-up Language (HTML) pages from CAD
`files automatically. Further, the present invention automati
`cally translates DWG and DXF files into a number of other
`formats, e.g., DXF, DWF, JPEG Joint Photographic Experts
`Group), BMP (BitMaP), DWGR9-14 (a DWG format for one
`or more AutoCADR) versions/releases), and other formats.
`The present invention also allows for searching of DWG,
`DXF and DWF files to locate databased on drawing proper
`ties, text, layers, blocks, attributes, or other search parameters
`Supplied by a user.
`The present invention is compatible with popular web
`browsers, e.g., Netscape Navigator and Internet Explorer.
`Further, the present invention interfaces with Microsoft
`Active Server Pages (ASP) and Common Gateway Interface
`(CGI) scripts. These compatibility and interface capabilities
`of the present invention allow the present invention to create
`powerful, data-driven networks and web sites that index,
`query, translate, filter, manipulate, and reference DWG data
`for a variety of uses, including product catalogs, detail man
`agers, standards libraries, and other extranet/intranet/Internet
`applications. Further, the present invention allows designers
`to create a self-service network such as an FTP (file transfer
`protocol) or web site that allow others to download drawings
`in whatever format is desired, which eliminates the need for
`designers to perform conversion and publishing tasks.
`Hardware Environment
`FIG. 2 schematically illustrates a hardware and software
`environment in accordance with one or more embodiments of
`the invention, and more particularly, illustrates a typical dis
`tributed computer system 200 using a network 202 to connect
`client computers 204 to server computers 206. A typical com
`bination of resources may include a network 202 comprising
`the Internet, LANs, WANs, SNA networks, or the like, clients
`204 that are personal computers or workstations, and servers
`206 that are personal computers, workstations, minicomput
`ers, or mainframes.
`The Internet 202 connects client computers 204 executing
`Web browsers 208 to server computers 206 executing Web
`servers 210. The Web browser 208 is typically a program such
`as Netscape's Navigator or Microsoft's Internet Explorer.
`The Web server 210 is typically a program such as IBM's
`HyperText Transport Protocol (HTTP) Server or Microsoft’s
`Internet Information Server. In one or more embodiments, the
`servers 206 also interface and/or manage a database 216.
`Generally, components 202-216 all comprise logic and/or
`data that is embodied in or retrievable from device, medium,
`signal, or carrier, e.g., a data storage device, a data commu
`nications device, a remote computer or device coupled to the
`computer via across a network or via another data communi
`cations device, etc. Moreover, this logic and/or data, when
`read, executed, and/or interpreted, results in the steps neces
`sary to implement and/or use the present invention being
`performed.
`Thus, embodiments of the invention may be implemented
`as a method, apparatus, or article of manufacture using stan
`dard programming and/or engineering techniques to produce
`Software, firmware, hardware, or any combination thereof.
`The term “article of manufacture'(or alternatively, “com
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`In the following description, reference is made to the
`accompanying drawings which form a part hereof, and in
`which is shown, by way of illustration, several embodiments
`of the present invention. It is understood that other embodi
`ments may be utilized and structural changes may be made
`without departing from the scope of the present invention.
`Overview
`The present invention discloses a method, apparatus, and
`article of manufacture for providing access over a network to
`drawing information including the automating, finding, trans
`lation, filtering, merging, manipulation, and serving of CAD
`design data. The level of access and automation possible with
`design data is increased. A server comprises several compo
`nents including an information extraction component, a
`search component, and a conversion component. The inven
`tion also provides programmable, Scriptable components that
`
`60
`
`65
`
`11
`
`
`
`5
`puter program product’) as used herein is intended to encom
`pass logic and/or data accessible from any computer-readable
`device.
`Those skilled in the art will recognize many modifications
`may be made to this exemplary environment without depart
`ing from the scope of the present invention. For example,
`those skilled in the art will recognize that any combination of
`the above components, or any number of different compo
`nents, including different logic, data, different peripherals,
`and different devices, may be used to implement the present
`invention, so long as similar functions are performed thereby.
`Specifically, those skilled in the art will recognize that the
`present invention may be applied to any database, associated
`database management system, or peripheral device.
`Computer-Implemented Graphics Program
`Embodiments of the invention may be implemented in a
`variety of applications and environments. For example, in one
`implementation, a network for architects may be created with
`standard and best practice drawings that are searchable, trans
`formable, etc. In a second implementation, a building system
`web page may be created that offers a searchable catalog of
`components. In a third implementation, a facilities manage
`ment application may allow updates and indexes to a floor
`plan that is published on the internet. In a fourth implemen
`tation, a project web site may allow easy access to drawing
`data via a quick preview (e.g., a thumbnail view) without the
`author manually publishing or converting the drawing or
`manually searching for information using a drawing viewer.
`The above four implementations are illustrative of the types
`of applications that may utilize embodiments of the invention.
`However, embodiments of the invention may be utilized in
`any type of application, system, network, etc.
`Server Implementation
`Components of the invention may be used in any type of
`network or system Such as an intranet or LAN. One or more
`embodiments implement server 206 and server components
`to provide the user with various capabilities and options. FIG.
`3 illustrates the details of a server 206, server components,
`and the interaction between server components in accordance
`with one or more embodiments of the invention. As in the
`prior art, drawings are created by a drawing program Such as
`AutoCADR) and stored in a database 100 in DWG format.
`However, inaccordance with one or more embodiments of the
`invention, the drawing program does not need to convert the
`DWG file into another format (e.g., DWF format).
`Server application 300 contains various components that
`enable various capabilities. The information extraction com
`ponent 302 provides information relating to the file such as
`the size of the file, relevant dates, the author, etc. Such infor
`mation may be displayed to the user using HTML 108 on a
`web browser 110. However, this information may also be
`utilized internally and not presented to a user.
`Search component 304 provides a query engine that allows
`complex property and tag-based queries of the drawing files
`stored in database 100. Search component 304 may also
`provide a live LAN (local area network) crawler that traverses
`the LAN to obtain information. In one or more embodiments,
`the crawler is live and not batched so that the index stays
`Current.
`The conversion component 306 enables the transformation
`from one drawing file format to another drawing file format
`(e.g., DWG to DWF). Additionally, the conversion compo
`nent 306 is cached for speed and scalability.
`Server application 300 and its components 302-306 may
`interface with a variety of applications to provide the func
`tionality of components 302-306 to a variety of types of
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 7,689,387 B2
`
`10
`
`15
`
`6
`systems in a variety of applications. In one or more embodi
`ments, server application 300 and its components 302-306
`interact with an ASP 308. ASP (Active Server Page) 308 is a
`web page that contains programming code written in VB
`(visual basic) script, JavaScript, or other scripting language.
`When IIS server 310 encounters an ASP 308 that is requested
`by browser 110, IIS server 310 executes the embedded pro
`gram to create HTML pages 108. Essentially, ASPs 308 are
`utilized to dynamically generate HTML pages 108 for view
`ing by browsers 110. ASPs 308 are supported by IIS 310 and
`NT server 106 that enable the HTML 108 generation. Thus,
`when one of the server components 302-306 is activated, the
`programming code of an ASP 308 may be executed to pro
`duce HTML pages 108. In one or more embodiments, ASP
`308 provides for the conversion and storing of a drawing file
`into a selected format. For example, when the user selects a
`desired file format hyperlink (see description below), the ASP
`308 interacts with the conversion server component 306 to
`convert/transform the drawing and the ASP 308 provides for
`the user interface (e.g., the prompts to open, save, and select
`the save location).
`FIG. 4 illustrates further details of a server design in accor
`dance with one or more embodiments of the invention. On the
`user side, browser 110 may be utilized in combination with a
`web application 424 or other application installed on a user
`computer to interact, manipulate, retrieve, and display web
`pages or drawings. For example, the browser 110 or other
`application may interact with VoloView.(R), an application
`available from AutoDesk, Inc. Alternatively, any application
`or application programming interface (API) can be utilized
`on the user/client or server side to utilize the components
`302-306 of the invention.
`Components of the invention include translate ASP pages
`component 400 (e.g., convert server component 306), DWG
`info ASP pages component 402 (e.g., info server component
`302), search ASP pages component 404 (e.g., search server
`component 304), server manager 406, cache manager 408,
`file access manager 410, extraction component 412, drawing
`filters 422, server application MMC (Microsoft Management
`Console) snap-in 432, and DWG DAL (data access) 420. The
`remaining components of FIG. 4 may be utilized by embodi
`ments of the invention.
`Drawing applications 414 (e.g., AutoCADR) create the
`various DWG files and Store them as DWGS on a LAN 100.
`The files may be manipulated and displayed by ObjectDBX
`416 (an object oriented database available from AutoDesk,
`Inc.) and image engine 418. DWG DAL (data access) 420
`interacts with ObjectDBX 416 and image engine 418 to pro
`vide access to the information in the DWG files. ObjectDBX
`416 is the software framework component that AutoCADR)
`uses to access, read, and write to intelligent object databases.
`Developers can take advantage of a system that utilizes
`ObjectDBX 416 by designing their application as two distrib
`uted components: a core logic component (arx) and a data
`base extension component (.dbX).
`Server manager 406, such as the AutoCADR) Server Man
`ager, interacts with the drawing application 414. Cache man
`ager 408 provides for uploading and storing the DWG files
`100 in local cache. File access manager 410 manages control
`of the files.
`The IIS 104 and ASP 308 provide for the interaction
`between browser 110 and the drawings 100. As described
`above, ASPs 308 are responsible for invoking the various
`components in accordance with a user's request. For
`example, ASP 308 may translate the drawing into a different
`format 400, retrieve? extract information 402, or search 404
`the DWG files 100 for certain information or attributes. Each
`
`12
`
`
`
`7
`of these actions from ASPs 308 may utilize other system
`components (e.g., server manager 406, cache manager 408,
`file access manager 410, or extraction component 412).
`Search component 404 may utilize an index server 428 that
`interacts with drawing filters 422 to filter and retrieve infor
`mation. For example, each drawing filter 422 may filter infor
`mation from a different type of drawing format such that one
`drawing filter 422 may be for DWG files, another filter 422 for
`DWF files, and another filter for DXF files, etc. Additionally,
`management console 426 may contain a server application
`10
`MMC (Microsoft Management Console) snap-in 432. A
`MMC snap-in 432 is a component responsible for performing
`management tasks. MMC 426 serves as a host for Snap-in
`defined user interfaces, but does not limit what the snap-ins
`432 can do or how they communicate with the administered
`services.
`Other configurations and/or user interfaces are possible
`without departing from the scope of the present invention. For
`example, any type of computer, such as a mainframe, mini
`computer, workstation or personal computer, could be used
`with the present invention. In addition, any Software program,
`network, application, or operating system having a user inter
`face could benefit from the present invention.
`Interface
`The components described in FIGS. 3 and 4 may be uti
`lized as an Application Programming Interface (API) for
`servers 206 to present information to a user, programmer, or
`developer. In one implementation, the components are uti
`lized to produce web pages that are displayed on a browser
`110. Such an interface may allow the real time search,
`retrieval, file format conversion, and display of drawing infor
`mation. FIGS. 5-7 illustrate the user interface used in accor
`dance with one or more Such embodiments.
`FIG. 5 illustrates a typical web browser interface 500 as
`displayed on a client 204. Within interface 500, a query box is
`indicated that allows a user to enter a query, e.g., a word,
`symbol, or other item that the user wishes to locate within
`CAD files accessible by the user. As shown in FIG. 5, the
`query entered is “exterior.” The user then clicks on the
`“search' or “go' button to enter the search terms into the
`present invention. Additional hyperlinks are provided to
`allow the user to obtain assistance in searching the DWG files
`("Tips for searching) or to create a new search query
`45
`(“Search Again”).
`Once the present invention completes the search, the CAD
`files that contain the search terms are displayed in a con
`densed format for the user to view. As shown in FIG. 5, eight
`documents matched the search term "exterior.” The first
`document is entitled cs 8300 2.dwg, and the second docu
`ment is entitled cs 83.50 1.dwg.
`FIG. 6 illustrates the typical web browser interface 500 as
`displayed on a browser 208 for a new search term. Within the
`query box, the user has replaced “exterior with “window.”
`The CAD files that contain the search term “window' are
`displayed in a condensed format for the user to view. As
`shown in FIG. 6, four documents matched the search term
`“window.” The first document is entitled cs 8300 2.dwg,
`and the second document is entitled cs 8300 4.dwg. As
`demonstrated in both FIGS. 5 and 6, thumbnail views 502,
`504, and 602 of the drawings are displayed. In accordance
`with one or more embodiments of the invention, the user may
`select the image in the thumbnail views 502,504, and 602 and
`move the image within the display area 502,504, and 602 or
`perform other actions on the image while still in thumbnail
`V1eW.
`
`55
`
`8
`The user can enter more than one term in the query box to
`perform more advanced searches if desired.
`After performing the searches as described with respect to
`FIGS. 5 and 6, the user may decide that a specific drawing
`meets the criteria for more detailed viewing. To view the
`specific drawing in more detail, the user merely selects or
`clicks on the desired drawing or hyperlink (e.g., the tide of the
`document that appears underlined and in a different color).
`FIG. 7 illustrates a typical web browser interface 500 as
`displayed on monitor 202 which displays