Computer automated system and method for converting source documents bearing symbols and alphanumeric text relating to three dimensional objects

The computer automated system and method of converting a digitized raster image of a scanned source document, bearing alphanumeric text relating to a plurality of physical dimensions and to a plurality of edges of a three dimensional object and of a moiety a symbol represents and of an insertion point of the moiety into the three dimensional object, at least one orthographic drawing view having a plurality of lines oriented in a direction to each other and corresponding to the edges of the three dimensional object, and the symbol, into mathematically accurate three dimensional vectors corresponding to the physical dimensions and the edges of the object and moiety and into a mathematically accurate computer drawing file. The digitized raster image is organized into an orthographic viewpoint file corresponding to the view. The file is imported into a corresponding orthographic viewport in a CAD drawing file having three dimensional vector generating capability in an existing CAD system having a COGO subroutine and using an OCR and an OSR operating within the CAD system. The alphanumeric text relating to the symbol is recognized by the OCR and an attributed symbol vector file is created using CAD block attribution techniques. The alphanumeric text relating to the plurality of physical dimensions and to the plurality of edges of the three dimensional object and the insertion point is recognized by the OCR; the symbol is recognized by the OSR. The recognized alphanumeric text and recognized symbol and the attributed symbol vector file are converted by the COGO subroutine into mathematically accurate vectors which can be used for producing accurate drawings and for Computer Assisted Manufacturing. Mechanical, engineering and architectural drawing (plans) are converted by the present invention.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT 
Not Applicable 
BACKGROUND OF THE INVENTION 
This invention relates generally to a computer automated system and method 
for converting a hard copy source document bearing alphanumeric text and 
symbols relating to the physical dimensions and edges of a three 
dimensional object and of symbol properties of the symbol used in 
association with the three dimensional object into a drawing file 
consisting of three dimensional coordinates and vectors and corresponding 
to the physical dimensions and edges of the object and to the symbol 
properties of the symbol, and in particular, to a computer automated 
system and method for converting engineering drawings and architectural 
plans. The invention is particularly well-suited for utilizing and 
converting a raster image of a scanned source document bearing a drawing 
view, symbols and alphanumeric text relating to heights, widths, depths 
(lengths), and angles of edges of the three dimensional object and of the 
symbols into mathematically accurate vector computer drawing files based 
on the symbols and alphanumeric text scanned from the source document. The 
invention is also well suited for utilizing a raster image produced by 
scanning an engineering drawing document having a having at least one view 
thereon showing the edges of a three dimensional object and having 
alphanumeric text relating to the lengths and directions of lines and 
curves corresponding to the edges of the object, where the invention 
constructs a mathematically accurate drawing of the view from the raster 
file. The present invention is also well-suited for scanning a hard copy 
architectural plan bearing symbols and alphanumeric text relating to the 
size, shape, location and elevation of various structural components, such 
as, but not limited to, walls, windows, and doors and converting the 
symbols and alphanumeric text into a mathematically accurate computer 
drawing of the architectural plan. 
With the development of various interactive Computer Aided Drafting (also 
often referred to as Computer Aided Design) (hereinafter, CAD) software, 
architects, engineers, their draftspersons, and/or technicians 
(collectively, hereinafter "users") are able to produce architectural 
plans and engineering drawings using computer drawing files more easily, 
quickly and accurately than using traditional hand drafting techniques. 
Besides the ease, speed and accuracy of producing these plans and 
drawings, the resultant computer drawing files are easier to edit and 
alter to create new drawings and plans. They are easier to store; they are 
easier to share with other technicians; and the drawing files can be 
exported to other computer applications. In the case of architectural 
plans/drawings, for example, the finished drawings can be rendered in 
different views, materials lists can be generated, loads can be calculated 
and structural members can be tested for integrity. In the case of 
engineering drawings, for example, structural calculations can be made 
testing the integrity of design elements and the drawing can be exported 
to a Computer Aided Manufacturing (CAM) environment. In the CAM 
environment, exact instructions from the computer program related to the 
dimensions of an object can be fed to an external manufacturing machinery 
which in turn produces the object ported in the drawing file. The overall 
advantages of being able to rapidly test and alter designs is well known 
in the art. 
Revising the CAD drawings is easier and more accurate than revising hand 
drafted drawings. In CAD, the lines on the drawings are represented as 
vectors. CAD vectors can be manipulated electronically. With the click of 
a mouse button, lines can be copied, erased, bisected, offset or rotated. 
The same operations in a hand drawing environment would involve the use of 
several tools such as erasers, pencils, protractors, scaling rulers and 
straight edges. But, what makes CAD qualitatively different from hand 
drawing, is that the vectors representing the lines in the drawing are 
actually mathematical expressions and not mere representations of the 
dimensions of the lines. Therefore, any CAD operation performed on an 
accurately constructed vector would produce mathematically meaningful 
results. Complex geometric functions can be performed by manipulating 
vector entities. 
Unfortunately, CAD use is relatively new, having become a significant 
drafting modality in the past 15 years. Even today, only about 50% of the 
architectural plans and engineering drawings are being produced in this 
manner. It is estimated that about 80% of drawings and plans exist in the 
form of hard copy paper documents. 
One of the major tasks facing industry, business and government is 
organization and storage of architectural and engineering information for 
further utilization. Currently, much of the information is stored in the 
form of hand drawn hard copy source documents, e.g., mechanical drawings, 
such as, engineering drawings and architectural plans/drawings, having 
various formats and scales. These documents, which are commonly drawn on 
paper, typically contain a scaled hand drawing of various views and 
components of the three dimensional (3D) object. As used hereinthroughout, 
the term "3D" means three dimensional; and the term "2D" means two 
dimensional. The 3D object may be, but is not limited to, an article of 
manufacture as drawn in an engineering drawing, or to a structure as drawn 
in an architectural drawing. As is known in the art, each view (e.g., 
graphical representation/drawing) reveals information about the shape of 
the 3D object, showing a plurality of edges of the 3D object and any 
penetrations within the 3D object. Since each drawing view is 2D, the 
edges and the penetrations are typically depicted by lines and/or curves. 
Along with the lines and curves recorded on the view, is alphanumeric text 
relating to the actual physical dimension and edge of the 3D object, any 
penetration within the 3D object, and symbol property information 
regarding any symbol on the drawing. The alphanumeric text which is 
recorded on the document is frequently written, typed or printed on the 
document. The alphanumeric text provides information relating to the 
heights, widths, depths (lengths), radius of curvature (if the line is 
curved), as well as, directions and locations of these lines and curves. 
Sometimes, the direction of the line is implicit from the drawing view, as 
when a pair of adjacent lines are orthogonal to or collinear with each 
other (e.g. at 90.degree., 180.degree. or 270.degree. to each other). 
Symbols may also be present on the view. The symbols include, but are not 
limited to, symbols for placement of moieties within the 3D object e.g., 
windows, doors, toilets, electrical outlets, or other features, or symbols 
for the sizes and shapes of apertures which may fully or partially 
penetrate the 3D object, or symbols which are indicia of certain shapes of 
cuts or surface features of the 3D object. 
A vexatious problem, largely unattended in the art, is the lack of an 
accurate easy, quick and cost effective conversion of these hand drawn 
hard copy source documents depicting 3D objects into computer based 
drawings which are mathematically accurate and based on the recorded 
alphanumeric text present on the hard copy source document. Conversion is 
the process of taking a analog hard copy source document and changing it 
into a digital format suitable for use in a digital computer environment. 
Some prior art has attempted to respond to some of the problems of 
converting this paper based information into a usable, reliable computer 
file. Unfortunately current methods are too slow, too inaccurate, too 
costly (because of labor intensiveness) or useful only for two dimensional 
representations. The prior art methods can be grouped into two major 
categories: manual entry and automated methods. 
Manual entry of drawing information into a CAD program is slow and labor 
intensive and requires the user to read the alphanumeric text and symbols 
from sometimes a large unwieldy paper drawing and enter it into the 
computer. The user must constantly go back and forth between paper 
document and computer. This slow process is subject to possible error and 
delay. The advantages of the manual entry method are accuracy, when done 
correctly, and avoiding the costs of the hardware and software required by 
automated methods. Because it is labor intensive, it is not well suited 
for performing large volumes of conversions. 
A number of automated methods are known in the art of conversion of 
cartographic documents (describing two dimensional (2D) land areas 
surveyed) for inputting hard copy document survey data into a computer 
file, manipulating the data using known coordinate geometry (COGO) 
software and CAD software packages to produce vectorized computer 
drawings. The most popular methods fall into two categories: the "manual 
digitizing method," and the "scanning method used with a vectorization of 
the graphics." [See, P. J. Stevenson, Scanning for Automated Data 
Conversion of Cartographic Documents, 1994, titled "Report No. 426 
Department of Geodetic Science and Surveying, The Ohio State University, 
Columbus, Ohio/Report No. CFM-R-94-101, The Ohio State University Center 
for Mapping Columbus, Ohio", pp. 1-95, the disclosure of which is 
incorporated herein by reference; G. Omura, Mastering AUTOCAD B for DOS, 
SYBEX, Alameda, Calif. 1995, pp. 452-480]. The scanning method used with a 
vectorization of the graphics typically uses heads-up digitizing, line 
following and automated raster vectorization for converting scanned raster 
files to vector files. Major problems with using these methods include 
inaccurate drawing of the area surveyed on the hard copy document, scaling 
errors, typographical errors in keying typing in text, and scanner 
distortion of the information on the face of the hard copy document. Both 
the aforementioned manual digitizing method and automated methods for use 
with cartographic documents are described in detail along with the 
limitations of each method, in U.S. patent application Ser. No. 08/445,687 
filed May 22, 1995, page 3, line 20 through page 5, line 27, the 
disclosure of which is incorporated herein by reference. 
Also known in the art is an apparatus and method for manipulating scanned 
documents in CAD. [see, e.g. U.S. Pat. No. 5,353,393 to Bennett et al.] 
CAD generated images are overlaid over scanned raster images. The 2D CAD 
image is generated by tracing over the raster image or by using standard 
CAD commands. This is basically a 2D technique, since 3D CAD drawing 
packages were unknown at that time. The creation of the resultant 2D CAD 
drawing view has potential inaccuracy due to using a scaled raster drawing 
(which itself may be inaccurately drawn or may suffer from scanner 
distortion) or the data may be typed in incorrectly by the user in 
response to the CAD queries, or may be misread by the user of the CAD 
program. 
Also optical character recognition has been most effective when recognizing 
text that is perfectly horizontal and of a standard font type. Recently, 
non-standard fonts and hand written text are recognized by the OCR. In a 
typical drawing or map to be converted, the alphanumeric text of concern 
is often written along the same angle as the line to which it refers. 
Techniques for recognizing hand drawn graphic symbols on scanned 
engineering drawings to produce vectorized graphic data, are known in the 
art. [See, Bhaskaran (U.S. Pat. No. 4,949,388).] Likewise, methods of 
processing information from scanned hard copy documents containing text or 
text and graphics and use of OCR recognized text is known. (Lech et al., 
U.S. Pat. No. 5,258,855). However this recognition process ignores the 
meaning behind the symbols and the text. It simply replaces the raster 
entity with either a vector representation or an ASCII based text string. 
The same limitation exists with Optical Symbol Recognition (OSR). OSR works 
by comparing raster images of symbols with a pre-established library of 
symbols. The OSR recognizes the raster symbol and converts the raster 
symbol into a vector version of the same symbol and then places the vector 
version of the symbol in approximately the same location on the raster 
drawing image as the raster image of the symbol. The user is still left to 
relate a symbol property to the symbol. By "symbol property" or "symbol 
property information" are meant hereinthroughout a physical dimension(s) 
and shape of a moiety that the symbol represents. The user must locate the 
symbol property and manipulate the drawing to incorporate this information 
into the drawing. 
Recently a computer automated system and method for converting source 
documents bearing alphanumeric text relating to the length and directions 
of the bounding lines of an area surveyed using OCR recognition of the 
alphanumeric text has been discovered.(WO 96/37861). The alphanumeric text 
relating to the length and direction of the bounding lines of a land area 
surveyed treats only a two dimensional (2D) representation, e.g. the 
bounding lines are treated as in the same XY plane. 
Engineering drawings and architectural plans are significantly different 
from the bounding lines of a land area surveyed because the lines (and/or 
curves) designating the edges of a surface of the 3D object are not 
necessarily in the same plane, although on the drawing (or plan) which is 
a 2D representation of the 3D object, they may appear to be so. The 
aforementioned inaccuracies of automated methods are particularly critical 
in a three dimensional environment because various edges of the surface of 
the 3D object must fit together exactly. Therefore, conventional automated 
conversion strategies are, at best, only capable of producing two 
dimensional results. 
Also engineering drawings and architectural plans further differ from land 
survey maps in that the former have symbols thereon which are also 
associated with physical three dimensional symbol properties related to 
the moiety the symbol represents and to the placement of the moiety in the 
3D object. The symbols may also have associated alphanumeric text 
providing the physical dimensions of the symbol property. 
Despite recognition and study of various aspects of hard copy source 
document conversion to digital format, the prior art has produced very 
little in the way of providing an accurate computer automated system and 
method of converting a raster file of a scanned hard copy source document 
bearing a drawing view, symbols and alphanumeric text relating to the 
physical dimensions and edges of the 3D object being rendered, as well as 
the symbol associated with the 3D object, into mathematically accurate 3D 
vectors of the 3D object and of moiety the symbol represents and into a 
mathematically accurate vector computer drawing file based on the drawing, 
the symbol and alphanumeric text which was scanned from the source 
document. 
BRIEF SUMMARY OF THE INVENTION 
The present invention responds specifically to the long-felt need 
heretofore unmet by the prior art and especially with a way to overcome 
the intrinsic inaccuracies of converting a raster file image of a scanned 
hard copy source document depicting 3D objects into computer based 
drawings which are mathematically accurate and based on the recorded 
alphanumeric text, the graphical drawing, the symbol (if present) present 
on the hard copy source document. The present invention provides an 
accurate easy, quick and cost effective conversion of these scanned hard 
copy documents. The present invention lends itself to use by those with 
certain disabilities since there is no need to manually type any 
recognized alphanumeric text, since this is easily accomplished by 
"picking" the recognized alphanumeric text. The unique attributed symbols 
of the present invention advantageously provide time and cost savings 
eliminating the need for the user to draw the moiety the symbol represents 
in each of the views in the converted hard copy source document. 
The foregoing, and other advantages of the present invention, are realized 
in one aspect thereof in a computer method of converting alphanumeric text 
relating to a plurality of physical dimensions and to a plurality of edges 
of a three dimensional object, from a hard copy source document having 
recorded thereon the alphanumeric text and a plurality of drawing views of 
the three dimensional object, into mathematically accurate vectors 
corresponding to the physical dimensions and the edges of the three 
dimensional object. The method comprising the steps of: (a) acquiring a 
computer useable raster image of the document having a plurality of 
drawing views thereon of a three dimensional object having a plurality of 
physical dimensions and a plurality of edges; the drawing views having a 
plurality of lines corresponding to the edges of the three dimensional 
object; the lines oriented in a direction to each other; and alphanumeric 
text relating to the plurality of physical dimensions and to the plurality 
of edges of the three dimensional object and recorded on the drawing view 
in association with the lines on the drawing view; and organizing the 
raster image according to an orthographic viewpoint raster file for each 
of the drawing views by selecting one of the drawing views and the 
alphanumeric text associated with the lines on the drawing view; (b) 
setting up a drawing file in a CAD applications program in a computer; the 
CAD applications program having a plurality of orthographic viewports, a 
coordinate geometry subroutine for creating three dimensional vectors, and 
an optical character recognition subroutine, and selecting one of the 
orthographic viewports to correspond in orthogonality to one of the 
orthographic viewpoint raster files; (c)importing one orthographic 
viewpoint raster file into one orthographic viewport which corresponds in 
orthogonality one drawing view; (d) repeating step (c) for each drawing 
view on the document; (e) recognizing the alphanumeric text in the optical 
character recognition subroutine in each of the orthographic viewports 
separately; (f) converting the recognized alphanumeric text in the 
coordinate geometry subroutine into the mathematically accurate three 
dimensional vectors corresponding to the alphanumeric text recorded on the 
document. The document for use in step (a) is a mechanical drawing or an 
engineering drawing or an architectural plan having a plurality of drawing 
sheets. 
In another aspect, the present invention provides a computer method of 
converting alphanumeric text relating to a plurality of physical 
dimensions and a plurality of edges of a three dimensional object, 
relating to a plurality of physical dimensions and a plurality of edges of 
a moiety represented by a symbol and a symbol property and used in 
association with the three dimensional object, and relating to an 
insertion point of the moiety the symbol represents within the three 
dimensional object, from a hard copy source document having recorded 
thereon a plurality of drawing views of the three dimensional object, the 
alphanumeric text, and the symbol, into mathematically accurate vectors 
corresponding to the physical dimensions and the edges of the three 
dimensional object and the moiety the symbol represents. The method 
comprising the steps of: (a) acquiring a computer useable raster image in 
a raster file of the document having (i) a plurality of drawing views 
thereon of a three dimensional object having a plurality of physical 
dimensions and a plurality of edges, the drawing view having a plurality 
of lines corresponding to the edges of the three dimensional object, the 
lines oriented in a direction to each other; (ii) at least one symbol 
disposed on at least one drawing view, the symbol having a symbol 
property, the symbol associated with a moiety in the three dimensional 
object; the moiety having a plurality of physical dimensions and a 
plurality of edges expressed as the symbol property, the symbol having an 
insertion point on the drawing view corresponding to a moiety insertion 
point of the moiety in the three dimensional object; and (iii) a first 
alphanumeric text relating to the plurality of physical dimensions and to 
the plurality of edges of the three dimensional object and recorded on the 
drawing view in association with the lines on the drawing views; a second 
alphanumeric text relating to the symbol property; and a third 
alphanumeric text relating to the insertion point; and organizing the 
raster image according to an orthographic viewpoint raster file for each 
drawing view by selecting one drawing view and the first alphanumeric text 
associated with the lines on the drawing view, the symbol and the third 
alphanumeric text; and organizing a symbol property viewpoint raster file 
for the alphanumeric text relating to the symbol properties of each 
symbol, and; (b) setting up a drawing file in a CAD applications program 
in the computer, the drawing file having a symbol library, the CAD 
applications program having a coordinate geometry subroutine for creating 
three dimensional vectors, an optical symbol recognition subroutine, an 
optical character recognition subroutine and a plurality of viewports, and 
selecting the viewports in at least one orthographic viewport and 
customizing at least one floating viewport; (c) importing the symbol 
property viewpoint raster file into one of the floating viewports; (d) 
repeating step (c) for each alphanumeric text relating to the symbol 
properties of each symbol on the document; (e) importing one of the 
orthographic viewpoint raster files of one drawing views into one of the 
orthographic viewports which corresponds in orthogonality to both the 
drawing view and the orthographic viewpoint raster file; (f) repeating 
step (e) for each drawing view on the document; (g) recognizing the 
alphanumeric text in the optical character recognition subroutine in each 
floating viewport and in each orthographic viewport separately and 
creating recognized alphanumeric text; (h) creating an attributed symbol 
by converting the recognized alphanumeric text relating to the symbol 
property of the symbol into a block of mathematically accurate three 
dimensional symbol vectors representing the physical dimensions and the 
edges of the moiety the symbol represents and creating a vector symbol 
file of the symbol vectors; (i) recognizing each symbol in the optical 
symbol recognition subroutine in each orthographic viewport separately; 
(j) converting in each orthographic viewpoint the recognized alphanumeric 
text relating to the plurality of physical dimensions and the plurality of 
edges of the three dimensional object in the coordinate geometry 
subroutine into a plurality of mathematically accurate vector 
corresponding to the alphanumeric text recorded on the drawing; and 
placing the vectors into an orthographic vector file; (k) selecting the 
attributed symbol in the viewport and converting the alphanumeric text 
relating to the insertion point and inserting the symbol vector file into 
the orthographic vector file and creating a vector file and a drawing file 
corresponding to the physical dimensions and to the edges of the three 
dimensional object with the moiety inserted therein. The document for use 
in step (a) is a mechanical drawing or an engineering drawing or an 
architectural plan having a plurality of drawing sheets. 
In still another aspect for a mechanical drawing, one follows the 
aforementioned steps (a)-(k), however the symbol library in step (b) is a 
preset symbol library having an attributed symbol therein corresponding to 
the symbol on the drawing view. The attributed symbol has a block of 
mathematically accurate three dimensional symbol vectors representing the 
physical dimensions and the edges of the moiety the symbol represents. The 
symbol vectors are in a vector symbol file. Step (h) comprises calling up 
the symbol library and selecting the attributed symbol corresponding to 
the symbol on the drawing view and selecting the recognized alphanumeric 
text relating to the symbol property of the symbol recorded on the drawing 
view, and incorporating the symbol property into the vector symbol file. 
In yet another aspect, the present invention discloses an automated 
conversion system for converting alphanumeric text, relating to a 
plurality of physical dimensions and a plurality of edges of a three 
dimensional object and of properties of a symbol used in association with 
the three dimensional object and of an insertion point of the symbol 
within the three dimensional object, recorded on a hard copy source 
document having at least one drawing view of the three dimensional object, 
the alphanumeric text and at least one symbol thereon, into mathematically 
accurate three dimensional vectors corresponding to the physical 
dimensions and the edges of the three dimensional object and the 
properties of the symbol and the insertion point. The system comprising in 
combination an automatic digitizing unit for document scanning and a 
computer having a three dimensional CAD applications program. The computer 
includes receiving software and recognition software. The program includes 
conversion software, transport software and vectorization software. The 
automatic digitizing unit scans a hard copy document having at least one 
drawing view thereon, having at least one symbol thereon and having 
alphanumeric text relating to a plurality of physical dimensions and a 
plurality of edges of a three dimensional object and of properties of the 
symbol used in association with the three dimensional object, and of an 
insertion point of the symbol within the object and then creates a 
digitized raster file corresponding to the alphanumeric text, the drawing 
view and the symbol, and then outputs the digitized raster image. The 
receiving software is operatively associated with the automated digitizing 
unit, for receiving the digitized raster image into the CAD applications 
unit and creates a digitized raster viewpoint file and transports the 
viewpoint file into a CAD drawing file, having a viewport. The recognition 
software for recognizing the digitized raster viewpoint file text in the 
viewport, and creating an ASCII text file comprises an optical character 
recognition subroutine operating in the CAD applications program for 
recognizing the alphanumeric text, and comprises an optical symbol 
recognition subroutine operating in the CAD application program for 
recognizing the symbol. The conversion software is operatively associated 
with the recognition software, for converting the ASCII text file into a 
converted file useable in the coordinate geometry subroutine. The 
transport software is responsive to the converted file and is for 
transporting the converted file into the coordinate geometry subroutine. 
The vectorization software is operatively associated with the transport 
means and is for converting the converted file into mathematically 
accurate three dimensional vectors having X, Y, Z coordinates and 
representing the plurality of physical dimensions and the plurality of 
edges of the three dimensional object and of the properties of the symbol 
used in association with the three dimensional object, and comprises a 
coordinate geometry subroutine. The document used in the system is a 
mechanical drawing or an engineering drawing or an architectural plan 
having a plurality of drawing sheets. 
In yet still another aspect, the present invention provides a computer 
quality control method for a mechanical drawing. The method comprises the 
steps of: (a) scanning a mechanical drawing hard copy source document 
using an automated digitizing unit, the document having at least one 
drawing thereon of a three dimensional object and alphanumeric text 
relating to a physical dimension and an edge of the three dimensional 
object having a plurality of physical dimensions and a plurality of edges, 
(b) receiving digitized output, the output including the alphanumeric text 
and the digitized drawing from an automated digitizing unit into a CAD 
applications program, the CAD applications program having a coordinate 
geometry subroutine, the alphanumeric text and the drawing having been 
scanned from the mechanical drawing hard copy source document; (c) 
displaying the digitized drawing; recognizing the alphanumeric text using 
a conversion system operating in the CAD applications program, the 
conversion system having a graphics optical character recognition 
subroutine, and recognizing the alphanumeric text using the textual 
optical character recognition subroutine; (e) transporting the 
alphanumeric text into the coordinated geometry subroutine; (f) converting 
the alphanumeric text in the coordinate geometry subroutine into 
mathematically accurate vectors representing the physical dimensions and 
the edges of the three dimensional object; (g) generating a set of 
orthographic views of the three dimensional object using the 
mathematically accurate vectors and overlaying each orthographic view on a 
corresponding view of the digitized drawing. The mechanical drawing 
scanned in step (a) is an engineering drawing or an architectural plan 
having a plurality of drawing sheets. 
Other advantages and a fuller appreciation of the specific attributes of 
this invention will be gained upon an examination of the following 
drawings, detailed description of preferred embodiments, and appended 
claims. It is expressly understood that the drawings are for the purpose 
of illustration and description only, and are not intended as a definition 
of the limits of the invention.

The present invention is further explained by the following examples which 
should not be construed by way of limiting the scope of the present 
invention. 
EXAMPLE 1 
CONVERSION OF ENGINEERING DRAWINGS 
The hard copy source document, an engineering drawing is converted 
according to the method of the present invention. 
FIG. 3 illustrates one type of hard copy source document, an engineering 
drawing. The engineering drawing which measures 8.5 inches by 11 inches 
has four views of a 3D object on it, as well as a table titled "TABULAR 
DIMENSIONS" and a drawing block. The drawing in this Example is for a 3D 
object, a WIDGET. The engineering drawing has been drawn with a number of 
orthographic views and an isometric view, in a conventional manner, known 
in the mechanical drawing art. The view in the upper left hand corner is 
the top view, the view in the lower left hand corner is the front view, 
the view in the lower right hand corner is the right side view and the 
view in the upper right hand corner is an isometric view. The top view, 
the front view and the right side view are orthogonal views, e.g. 
orthographic views. Each drawing view has lines on it, corresponding to 
the edges of the surfaces of the 3D object as projected in that view. 
Solid lines correspond to the surface edges. The solid lines may be 
straight lines or curved lines as corresponding to the edges of the 
surface of the 3D object. Associated with the solid lines are alphanumeric 
text which relates to the heights, widths, depths (lengths), and angles of 
the edges of the 3D object. The broken lines correspond to hidden lines 
within the interior of the 3D object showing edges within the object or 
behind the 3D object, as is known in the mechanical drawing art. 
A number of symbols are present in this drawing. There is a symbol property 
in this drawing providing three dimensional information on the moieties 
certain symbols represent. There is alphanumeric text associated with the 
symbols, with the symbol properties and with the point of insertion of the 
symbol into the drawing of the 3D object. In the top view, a content 
symbol "3/8-24UNF-2A 1.25" refers to 1.25 inch deep internal thread with 
a 3/8 inch major thread diameter, in 24 threads per inch, general purpose 
tolerance, and Unified National Fine, and in the top view, the symbol "C" 
is used to designate a distance from an edge to center of a hole. In the 
front view, content symbols .O slashed., , and "R" refer respectively to 
diameter, to countersink, to "deep" "(depth)", and to the "radius of 
curvature" (of a curved edge of the 3D object). The symbol property, e.g., 
the table, titled "TABULAR DIMENSIONS" has dimensions recorded thereon for 
symbols "A", "B" and "C", for two Options, 1 and 2. The drawing block 
provides information on a drawing scale, e.g., "SCALE 0.75=1", a unit of 
dimension of the 3D-object, e.g., "UNITS: INCHES", a project name (or 
drawing name), e.g., "WIDGET" and an option selected for "TABULAR 
DIMENSIONS", e.g., "Option 1". 
FIGS. 1A and 1B, 4-10 best illustrate the method and system of the present 
invention. In the preferred embodiment, the aforementioned preferred 
hardware and aforementioned preferred software, the disclosures of which 
are incorporated by reference herein, are used to practice the method of 
the present invention. 
As best shown in FIG. 4, the image on the aforementioned engineering 
drawing of FIG. 3 is acquired according to step 1. In step 1.1 the 
computer and scanner are turned on. The scanner is preferably the Contex 
FSC 8000 DSP scanner having its software scanning program which is opened 
in the computer, in the conventional manner. The scanning resolution is 
set to a resolution of 300 DPI. The user types in the instructions via the 
computer keyboard to instruct the scanner to start scanning. The document, 
the engineering drawing of FIG. 3, is scanned and converted to a digitized 
raster image. The digitized raster image is imported into the computer and 
is displayed on the display monitor. Depending upon the size of the 
engineering source documents, the scanner can be either a conventional 
desk model scanner (HP VISIONPORT.TM. by Hewlett Packard, Palo Alto, 
Calif.) or a large scale scanner, such as, the Vidar TRU SCAN 800, Vidar, 
Herndon, Va., however the preferred scanner is the Contex FSC 8000DSP FULL 
SCALE COLOR SCANNER. 
For ease of illustration, the hidden lines on the drawing scanned in step 
1.1 have been omitted and are omitted in subsequent illustrations. However 
in actual practice, any hidden lines on the drawing appear on the raster 
image. 
In step 1.2, using the software provided with the scanner, the user edits 
the digitized raster image to remove any artifact and adjusts alignment, 
if needed. For ease of illustration, to show that a raster image is 
present in FIGS. 4-11, a broken line is used after step 1.1 to illustrate 
the raster image. This is easily seen in step 1.2 where a solid line/curve 
on the drawing shown in step 1.1 is now broken, and all text on the 
drawing is now shown in broken line. The "Tabular Dimension" table has 
been enlarged to best show this. Solid line is used after step 1.2 to show 
creation of recognized alphanumeric text, e.g., ASCII text, and recognized 
vectors in the drawing file. The digitized raster image may be stored as 
raster file "WIDGET GIF" or it may be printed on the printer or plotted on 
the plotter. Preferably the user displays the edited raster image on the 
display monitor and proceeds to step 1.3. 
In step 1.3, the user organizes each edited raster image according to a 
viewpoint. The edited raster image shown in 1.2 of FIG. 4 has 4 views, the 
top view, the front view, the right side view and the isometric view 
corresponding to the same 4 views on the engineering drawing. This edited 
raster image is divided by the user into three orthographic viewpoints, 
and an isometric viewpoint corresponding to the three orthographic views 
and the isometric view shown on the source document in step 1.1 and on the 
edited raster image on the screen of the monitor. A floating viewpoint is 
created for the "TABULAR DIMENSION" table. Each viewpoint raster image is 
saved as a separate digitized viewpoint raster file. The viewpoint raster 
files which correspond to the drawing views, when displayed as in step 
1.3, each have a digitized raster viewpoint image having a digitized 
graphic on it corresponding to the lines and curves present in the drawing 
view, digitized text corresponding to any text associated with the drawing 
view, including alphanumeric text, and digitized graphics of the symbols 
appearing on the drawing view. The floating viewpoint raster file has just 
the digitized text and digitized graphics showing the text, in the table 
"TABULAR DIMENSIONS" and the table lines, etc. These viewpoint raster 
files are named in step 1.4 according to the project name, the view on the 
drawing (or according to the floating viewpoint, if present) and the 
raster file format. The five digitized raster viewpoint files are named: 
WIDGET-T.GIF for the top view/top viewpoint, WIDGET-F.GIF for the front 
view/front viewpoint, WIDGET-R.GIF for the right side view/right side 
viewpoint, WIDGET-I.GIF for the isometric view/isometric viewpoint and 
WIDGET-FV.GIF for the floating viewpoint containing the table. The named 
digitized raster viewpoint files are stored in the computer's hard disk or 
some other suitable storage medium/device to be called up in step 3. The 
digitized raster viewpoint files have a digitized graphic of the drawing 
digitized alphanumeric text and digitized raster symbols. 
In FIG. 5, the user sets up a CAD drawing file. In step 2.1 of FIG. 5, the 
user starts a new drawing file by responding to computer prompts for a 
file name and a file prototype. The user names the drawing based on the 
project name used in step 1, in this instance the project name is 
"WIDGET". The user then selects a prototype drawing which matches the 
source document scanned. Here the source document scanned was an 
engineering drawing that was 8.5 inches by 11 inches in size, so the user 
selects MECH-A from the five preset prototypes for engineering drawings, 
e.g., MECH-A, MECH-B, MECH-C, MECH-D and MECH-E. The user enters this 
information via the keyboard. The prototype drawing file selected has 
associated with it preset settings, including OCR settings, OSR settings, 
a preset symbol library, dimension settings, precision settings, text 
style settings, menu settings and layer settings. The prototype drawing 
file also has a set of page layouts having viewports which the user may 
select. The user selects the page layout having viewports corresponding to 
the views shown in the engineering drawing. In this example, the page 
layout has four viewports corresponding to a top viewport, a front 
viewport, a right viewport and an isometric viewport, because the 
engineering drawing of this example has a top view, a front view, a right 
side view and an isometric view. Other engineering drawings may have other 
orthographic views and/or a perspective view. 
In step 2.2 of FIG. 5, the user customizes any of the preset parameters, if 
needed. 
In step 2.3 of FIG. 5, the user customizes the viewports, if needed. Here a 
the user customizes the viewports by adding a floating viewport to hold 
the table of symbol properties, "TABULAR DIMENSIONS", shown on the 
engineering drawing. At the end of this step in the method of the present 
invention, the user has created viewports in the CAD drawing file in which 
to import the raster viewpoint files created in step 1. 
As best shown in FIG. 6, the user imports each of the raster viewpoint 
files into its corresponding viewport. The user activates a chosen 
viewport by picking the viewport, e.g., by moving the cursor to the 
viewport and clicking on the mouse, or by simply naming the desired 
viewport using an AUTOCAD "VIEW" command. In step 3.1, this is illustrated 
by moving the cursor to the orthographic viewport titled "FRONT" and 
picking it. Next, in step 3.2 of FIG. 6, the user chooses the appropriate 
corresponding orthographic viewpoint raster file to import into the 
selected orthographic viewport. An AUTOCAD command "RASTERIN" is selected 
form a pull-down menu. The user types in the appropriate viewpoint raster 
file name. Here the front viewport raster file name, "WIDGET-F.GIF", is 
entered. In step 3.3 the user is prompted for the drawing scale with the 
prompt "SCALE?". The user views the viewpoint raster image and types in 
the scale, "0.75=1" displayed in the viewpoint raster image. Once the 
scale is entered, the computer software automatically imports the 
digitized viewpoint raster file into the selected activated viewport. This 
is shown in step 3.4 of FIG. 6. This is repeated for each of the 
viewports, and is shown graphically in step 4.1 of FIG. 7. The computer 
defaults to the scale setting in the first viewport for the subsequent 
viewports. This default setting is activated by depressing the right mouse 
button. If the scale needs to be changed, the user simply selects the 
appropriate scale by picking with the left mouse button or by manually 
entering the scale. The textual data captured in the floating viewports 
can be set similarly. 
As best shown in FIG. 7, the alphanumeric text is recognized in each 
viewport in the AUTOCAD drawing. At the end of step 3.4, each of the 
digitized raster viewpoint files has been transported into its 
corresponding viewport, this is shown graphically in step 4.1 of FIG. 7. 
The alphanumeric text in each viewport is recognized separately. The 
alphanumeric text in any floating viewport, if present, is recognized 
first, as shown in steps 4.2 and 4.3 This is done so that the alphanumeric 
text of a symbol property needed for attributed symbols is available for 
symbol conversion in step 5 of FIG. 8. Thus any alphanumeric text relating 
to a symbol property in a table, e.g., tabular text, legend, chart or 
schedule in a floating viewport is recognized first. The digitized raster 
alphanumeric text is converted into ASCII text with the OCR operating in 
the AUTOCAD environment. This is shown schematically in step 4.3 of FIG. 7 
where the broken line text is shown changed to solid line text. In step 
4.4 of FIG. 7, the raster alphanumeric text in each of the other viewports 
is recognized next and converted into ASCII text. Step 4.4 of FIG. 7 
illustrates the conversion of the raster test into ASCII text for the 
front viewport. This is done for each of the viewports and is shown 
completed in step 6.1 of FIG. 9. 
As best shown, in FIG. 8, the digitized symbols on the digitized raster 
image are recognized and converted to graphic vector symbols in each of 
the orthographic viewports where a digitized raster symbol was present. In 
step 5.1 of FIG. 8, the user calls up the symbol library. The symbol 
library exists as a user preset parameter of the MECH-A drawing file. The 
screen shows a partial listing of a symbol library having a number of 
conventional standardized mechanical drawing symbols therein. An arrow is 
drawn to the symbol "11/2-6NC-3 LH" which is a standardized ANSI symbol 
for a 11/2 inches left hand National Coarse Thread having 6 threads per 
inch, tight tolerance. This moiety, the thread, is shown graphically to 
the right of the symbol. This symbol is not used on this particular 
engineering drawing but is part of the standard symbol library available 
for the MECH-A prototype drawing. Also included in the preset parameters 
for the prototype drawing is an extensive moiety file consisting of three 
dimensional drawing blocks intended to cover the physical dimensions and 
edges of moieties representing the standardized symbols in a typical 
mechanical engineering drawing. In the prototype drawings these drawing 
blocks are already associated with the proper content symbol. The arrow 
drawn to symbol ".O slashed. 0.75 A" shows the symbol and the 
moiety/object the symbol represents. This symbol is used on the drawing of 
FIG. 3 and represents a moiety, a cylindrical hole having a diameter 0.75 
inches that is "A" deep. Recall "A" is a dimension found in the symbol 
property table, "TABULAR DIMENSIONS" in the floating viewport. 
In step 5.2 of FIG. 8, the user may add symbols to the symbol library or 
modify symbols in the symbol library by using basic CAD drawing tools to 
construct the symbol as previously described. 
In step 5.3 of FIG. 8, the user sets the values for the attributed symbols. 
The user selects the ATTRIBUTE SYMBOLS command. The user is prompted to 
select 3D data about the physical properties of the symbol. The user may 
key them in, but preferably picks them from the symbol property ASCII text 
in the floating viewport. In step 5.3 as illustrated in FIG. 8, the user 
picks the content symbol ".O slashed. 0.75 A" in response to the "SYMBOL" 
prompt. The user then picks the moiety the symbol represents in response 
to the "OBJECT " prompt. Here the user picks the cylindrical hole having a 
length dimension "A". The user is then prompted for the symbol property 
information relevant to the particular symbol. Here the user is prompted 
for "A". The "A" value is found as a symbol property in the floating 
viewport and is recognized alphanumeric text 180 (ASCII text 352) which 
was recognized by the OCR in the floating viewport in step 4.3. The user 
pulls down the floating viewport and picks the "A" value. This creates an 
attributed symbol from the content symbol. The attributed symbol is stored 
as a vector file, corresponding to the physical dimensions and edges of 
the moiety/object the symbol ".O slashed. 0.75A" represents. 
The front viewport is activated in step 5.4 since that is the viewport in 
which the aforementioned symbol ".O slashed. 0.75A" occurs in this 
Example. The user picks the viewport to activate it. 
In step 5.5 the symbols are recognized with the OSR, the raster text 
symbols associated with the symbol are converted into vector-shaped 
symbols, and any text associated with the symbol is converted by the OCR 
into recognized ASCII text. 
As best shown in FIG. 9, the alphanumeric text corresponding to the 
physical dimensions and edges of the 3D object is converted into 
mathematically accurate vectors and a vector file corresponding to the 
physical dimensions and the edges of the 3D object is created. 
In step 6.1 of FIG. 9, the screen shows the viewports each having a 
digitized viewpoint file therein with the recognized ASCII text and the 
recognized symbols overlaying their raster counterparts. None of the other 
graphic elements have been converted into vectors. The user begins the 
alphanumeric text to vector conversion process by choosing the 
orthographic viewport with the most information in it. In this example, 
the user chooses the front view viewport because the front view has the 
most alphanumeric text corresponding to the physical dimensions and edges 
of the 3D object. The coordinates of the vectors and the vector 
representing the edges of the 3D object created in this viewport serve as 
the basis for subsequent vector production in other viewports. 
In step 6.2, the user picks the origin on the raster viewpoint file image, 
i.e., the point at which the edge furthest to the left intersects the edge 
nearest to the bottom, which corresponds to a vector furthest to the left 
intersecting a vector nearest to the bottom. This sets the coordinate 
grid. 
The starting point is selected next. The user begins with the perimeter of 
the drawing by executing a vector line command ("V-LINE") either from a 
pull down menu or by clicking the wall icon in a toolbar menu or by keying 
the word V-LINE. The program prompts "STARTING POINT?". The default 
response is the origin point. If the user clicks the left mouse button, 
the starting point defaults to origin. If the user clicks the right mouse 
button, then the user is prompted for the "X" and the "Y" components in 
the UCS of the starting point. In the drawing of FIG. 3, the starting 
point and the origin are not identical, so the user clicks the right mouse 
button. 
In step 6.3, in response to the "X?" prompt, the user picks the appropriate 
recognized alphanumeric text in the UCS for the horizontal distance with 
the left mouse button. In this example X=0.35 for the vertical distance. 
The user is then prompted "Y?" In this example, the Y distance in the UCS 
is 0. The user defaults to the value zero by moving the cursor onto a 
blank part of the screen and clicking the left mouse button. The starting 
point appears as a flashing cursor in the shape of a small cross (+) at 
the UCS coordinate (0.35, 0). The user visually compares this starting 
point with its raster viewpoint image counterpart to confirm that there 
are no gross errors. 
In step 6.3 of FIG. 9, the user is then prompted for the coordinates of the 
endpoint of the first line in the drawing in the viewpoint. This 
corresponds to the first vector that is created and drawn in the viewport. 
At the prompt "X?", the user picks the recognized alphanumeric text, on 
the viewpoint, corresponding to the horizontal distance from the origin 
(3.50). At the prompt "Y?" the user responds by depressing the right mouse 
button, since the line is horizontal, the Y value is zero. This 
establishes the X, Y coordinate (3.50, 0) in the UCS as the endpoint of 
the vector. A vector is automatically generated in the WCS and is drawn 
between the start point and the endpoint. This vector appears as a vector 
generated line in the selected viewport and appears simultaneously as a 
vector generated line or a point in the other viewports. The line 
corresponds to the edge of the 3D object in the other viewports. As shown 
in step 6.5 of FIG. 9, the first vector generated in the front viewport 
appears as a horizontal line in the top viewport. It appears as a point in 
the right viewport (not shown) and as an angled line in the isometric 
viewport (not shown). The edge constructed at the bottom of the front view 
is identical to the edge at the bottom of the top view. The endpoints of 
the bottom line are the indexing by which the two orthographic planes of 
two orthographic viewports are connected. These points are automatically 
converted to 3D coordinates in the WCS. The WCS coordinates (X, Y, Z) of 
the three points so far established are respectively (0, 0, 0) 
corresponding to the origin; (0.35, 0, 0) corresponding to the starting 
point,(0.35, 0, 0) corresponding to the beginning point of the first 
vector and (3.50, 0, 0) corresponding to the end point of the first 
vector. 
In step 6.4 of FIG. 9, the user is then prompted for the endpoint of the 
next vector. The user proceeds around a perimeter of the drawing view and 
selects the next adjacent line to create the next vector. At the prompt 
"X?", the user picks the recognized alphanumeric text "2.50", selecting 
the appropriate horizontal distance text (2.50). At the prompt Y?, the 
user picks the recognized alphanumeric text "1.00", selecting the 
appropriate vertical distance (1.00). This establishes the coordinate 
(2.50, 1.00) in the UCS and a vector is automatically drawn from the 
starting point to the endpoint. This vector is stored in the WCS with a 
vector beginning point coordinate of (3.50, 0, 0) and a vector end point 
coordinate of (2.50, 0, 1.00). A vector file is created with each vector 
created added to the file. Alternatively, the user constructs this line 
using direction and distance prompts previously described. This 
alternative is invoked after the user picks the "V-LINE" icon. The default 
mode is the "X?", "Y?" (in the UCS) prompts. If the user wants to directly 
construct a vector, the user responds by entering the key "V" after which 
the program prompts for "DISTANCE" and "ANGLE?". 
The user then proceeds to the next adjacent line in the perimeter of the 
drawing to construct the next vector. The next vector to be constructed is 
an arc so the user picks the "V-ARC" icon. The user is first prompted for 
the endpoint with "X?" and "Y?" prompts, in the UCS and responds by 
choosing the appropriate recognized alphanumeric text for the X distance, 
e.g., 1.50, and for the Y distance, e.g., 1.75. The user is then prompted 
for RADIUS? to which the user responds by picking the appropriate 
recognized alphanumeric text (1.0). Next the user is prompted "SIDE?". 
This prompt is intended to determine to which side the curve is convex 
(bulges). The user responds by picking an empty space to the right of the 
last line. Lastly the program prompts "Less than 180 degrees: Y or N?" The 
left button indicates yes, the right button indicates no. Here the user 
responds by indicating yes which produces a shallow curve which is less 
than 180 degrees of a full circle. An arc is automatically formed between 
the start point and the endpoint. After the arc is formed the user goes to 
the next adjacent line in the perimeter to create the next adjacent 
vector. 
In this example, the next line is not curved, but is a straight line, so 
the user picks the "V-LINE" icon. The user is presented with the same 
"X?", "Y?" prompts in the UCS as previously described. The user responds 
by picking the appropriate recognized alphanumeric text, e.g., X is 1.50, 
Y is 2.25, forming the UCS coordinate (1.50, 2.25). The generated vector 
has a WCS vector beginning point coordinate of (1.50, 0, 1.75) and a 
vector end point coordinate (1.50, 0, 2.25). A next vector is 
automatically created between these points. The vector shows up as line in 
the other viewports. The user proceeds to select next adjacent lines 
around the perimeter of the drawing view until the last vector is formed, 
(e.g., the next line has recognized alphanumeric text corresponding to the 
UCS coordinates (0, 2.25); the next line has recognized alphanumeric text 
corresponding to UCS coordinates (0, 0.35); the next line has recognized 
alphanumeric text corresponding to UCS coordinate (0.35, 0.35) and the 
last line in the perimeter has UCS coordinates corresponding to (0.35, 0); 
and corresponding WCS vectors are drawn. Each vector created is added to 
the vector drawing file for the 3D object. At this point, instead of 
responding to the "X?" prompt (in the UCS) by picking a distance, the user 
clicks the right mouse button and is prompted "NEXT POINT?" to which the 
user responds by picking the start point of the drawing. The program 
automatically defaults to the O-snap (object snap)mode endpoint. The 
endpoint O-snap mode is an AUTOCAD feature that allows the user to pick a 
location near the end of a chosen line and the AUTOCAD program 
automatically returns ("snaps back") to the exact end point of the line. 
Ideally these vector generated lines and curves should overlay the raster 
viewpoint image in the viewport. If there is a problem with a faulty OCR 
recognition, poor drafting or an error in the source document's dimension 
this shows as a nonconformity between the raster viewpoint image and the 
vector drawing in the viewport of the vector generated lines and arcs. 
This nonconformity is correctable prior to propagation in subsequent 
vector production. 
As each vector is formed, the recognized alphanumeric text is deleted and 
replaced. The program automatically deletes the recognized alphanumeric 
text and substitutes text generated as an attribute of the vector in the 
first view. The same operation can be performed on any vector of another 
view by choosing the icon LABEL and picking the appropriate line. A new 
label identifying the dimensional text (length, (depth) width, height, 
angulation, radius, etc.) as an attribute of the vector itself is 
automatically generated and arrayed in a format typical to the art. This 
permits automatic text adjustment to conform with any new scale selected 
for the drawing, automatic text adjustment to fit changes in dimension of 
an edge and conversion of dimensions units from one system to another. 
At the end of step 6, the alphanumeric text and the lines in the drawing 
view representing the edges of the 3D object have been converted to 
mathematically accurate vectors. As each vector is created in step 6, it 
is added to the vector file of the 3D object, e.g. the vector file has the 
3D coordinates in the WCS of the vector, and the vectors correspond to the 
physical dimensions and edges of the 3D object. 
As shown in step 6.6 of FIG. 9, the alphanumeric text corresponding to the 
physical dimensions and edges of the 3D object is converted in the other 
viewports into vectors. The raster image in other orthographic viewports 
is adjusted, if needed, to overlay the vector generated into the other 
viewport. The program prompts "BASE POINT?" to which the user respond by 
picking the lower left-hand corner of the raster viewpoint graphics in the 
viewpoint of the next viewport selected. The program prompts "INSERTION 
POINT?" and the user responds by picking the endpoint of a line generated 
by the appropriate vector. The user then proceeds to the endpoint of the 
vector generated from the previous viewport and uses it as a beginning 
point (start point) for a next vector. This is shown in step 6.6 of FIG. 
9, where the top viewport is selected. Since certain vectors are already 
present from the conversion of the front viewport, the user picks the 
endpoint of one of the created vectors. This provides a beginning point 
for the next vector to be generated. The user then responds to the "X?", 
"Y?" prompts, by picking the appropriate respective horizontal and 
vertical recognized alphanumeric text (3.50 and 2.00 respectively). A UCS 
coordinate (3.50, 2.00) is created. The newly generated vector has a WCS 
vector beginning point coordinate of (3.50, 0, 0) and a WCS vector end 
point coordinate (3.50, 2.00, 0). A vector is automatically created 
between these points. The vector shows up as line in the viewports. 
Subsequent vectors are formed according to the V-LINE and V-ARC prompts. 
This is shown graphically on the monitor screen on step 7.1 of FIG. 10 
In FIG. 10, the symbols on the engineering drawing are converted into 
vectors. In step 7.1 of FIG. 10, the user picks the viewport from the 
drawing file which contains the most attributed symbols. In this 
particular example this is the front viewport. The viewport is enlarged to 
fill the screen. In step 7.2, the user picks a particular attributed 
symbol to be converted. Here the symbol picked is ".O slashed. 0.75A". 
This is a standard symbol for a partial penetration (moiety) having a 
diameter 0.75 inches within a 3D object with a penetration depth of "A". 
The computer program displays existing attributes of the symbol selected. 
The computer program prompts for additional information if needed. 
In step 7.3 the moiety/object which the symbol represents is located on the 
drawing. The user is given a set of computer prompts "X?" for the X 
distance from the origin in the UCS and "Y?" for the Y distance from the 
origin in the UCS to locate the insertion point of the moiety symbol 
represents within the 3D object. The user picks the respective recognized 
alphanumeric text (converted ASCII text) which represents the insertion 
point distances. The values expressed by the recognized alphanumeric text 
is transported into the COGO subroutine to specify the insertion point of 
the vector file of the attributed symbol into the vector file of the 3D 
object and to insert it into the vector file of the 3D object. Here the 
insertion point of the symbol on the front view is picked X=0.75 and 
picked Y=1.00. 
In step 7.4, the moiety the symbol represents is automatically inserted 
into the viewpoints. As shown in step 1.4, this symbol shows up in solid 
line at this point in the front viewport. Also, the moiety/object appears 
in hidden line as a partial penetration within the 3D object, in the top 
viewport, the right viewport and the isometric viewport. 
The user proceeds to pick the other attributed symbols in the drawing and 
proceeds, in like manner. At all times the user is able to check the 
construction of moiety the symbol represents against the viewpoint raster 
graphic in the selected viewport as a method of quality control. 
At the end of step 7, as shown in FIG. 1B, a mathematically accurate 3D 
vector file exists which contains the 3D vectors corresponding to the 3D 
object along with the 3D vectors corresponding to the moiety represented 
by the attributed symbol, inserted therein. This vector file is used to 
create a 3D computer model and is further used for Computer Aided 
Manufacturing of a copy of the 3D-object. Also a mathematically accurate 
AUTOCAD drawing file is created which may be stored, or used to print or 
plot out a hard copy drawing of the newly created converted engineering 
drawing. 
EXAMPLE 2 
CONVERSION OF ARCHITECTURAL PLANS 
FIG. 18 illustrates one type of hard copy source document, an architectural 
plan. The architectural plan has plurality of drawing sheets, e.g., 
drawing views, which show the top plan view, the front view, the right 
side view, the left side view and the back view of a 3D-object, in this 
example, a house. The sheets may have a symbol property information, e.g., 
tabular data, dimensions tables, charts, legends, and/or schedules 
relating to a door schedule for a door symbol, a window schedule for a 
window symbol, etc., the physical dimensions of the moiety the symbol 
represents, and materials specifications thereon. More than one view may 
be on a single sheet. Tabular data may be on sheets along with a drawing 
view or on separate sheets. Here drawing views (plan view, front view, 
right view, left view and back view) and the symbol property are on 
separate sheets. The symbol property is a table titled "DOOR SCHEDULE". A 
drawing block is also present on the plan view. Each drawing view has 
lines on it, corresponding to the edges and surfaces of the 3D object, the 
house, as projected in that view. Solid lines correspond to the surface 
edges. Alphanumeric text relating to the physical dimensions and edges of 
the 3D object are recorded on the face of the plan, typically near the 
lines. In the top view, a symbol for a door having a particular physical 
dimension is present and a symbol for a window having a particular 
physical dimension is present. The "DOOR SCHEDULE" has dimensions recorded 
thereon for different sized doors. The drawing block provides information 
on a drawing scale, e.g., "1/4"=1'", a unit of dimension of the 3D-object, 
e.g., "Feet", a project name, e.g., "HOUSE". 
FIGS. 11-17 best illustrate the method of the present invention for the 
conversion of architectural plans. In the preferred embodiment, the 
aforementioned preferred hardware and aforementioned preferred software, 
the disclosures of which are incorporated by reference herein, are used to 
practice the method of the present invention. 
As best shown in FIG. 11, the raster image on the aforementioned 
architectural plan of FIG. 18 is acquired according to step 1. In step 
1.1, the computer and scanner are turned on. Large size architectural 
source documents require a large scale scanner, such as, the Tru Scan 
Vidar 800 scanner available from Vidar Corp. Of Herndon, Va. However, the 
scanner is preferably the Contex FSC 8000 DSP scanner having its software 
scanning program which is opened in the computer, in the conventional 
manner. The scanning resolution is set to a resolution of 300 dpi. The 
user types in the instructions via the computer keyboard to instruct the 
scanner to start scanning. Each sheet of the architectural plan is scanned 
and converted to a digitized raster image. Here six sheets of the 
architectural plan are scanned in sequence. The digitized raster image is 
imported into the computer and each scanned sheet is displayed separately 
on the display monitor as an unedited raster image. 
In step 1.2, using the software provided with the scanner, the user edits 
the digitized raster image of each scanned drawing page to remove any 
artifact and adjusts alignment, if needed. For ease of illustration, to 
show that a raster image is present in FIGS. 11-17, a broken line is used 
after step 1.1 to illustrate the raster image. This is easily seen in step 
1.2 where a solid line on the drawing shown in step 1.1 is now broken, and 
all text on the drawing is now shown in broken line. The "DOOR SCHEDULE" 
table best shows this. A solid line is used after step 1.2 to show 
creation of recognized ASCII text and vectors in the drawing file. The 
raster images may be stored as a simple raster file or may be printed on 
the printer or plotted on the plotter. Preferably the user proceeds to 
step 1.3 to further process the digitized raster images. 
In step 1.3 the digitized raster images are organized by the user according 
to a viewpoint corresponding to the drawing view and stored as viewpoint 
raster files. The raster image of each drawing view and its associated 
alphanumeric text is moved into one of five orthographic viewpoints 
corresponding to one of the corresponding five orthographic views shown on 
the drawing sheet in FIG. 18. A floating viewpoint is created for the 
"DOOR SCHEDULE" table. Each digitized raster viewpoint is saved as a 
separate file. These files are named in step 1.4 according to the project 
name, e.g. "HOUSE" for the orthographic viewpoints, (or "TABLE-1" 
according to the floating viewpoint) the view on the drawing, for the 
orthographic viewpoints e.g., T for top/plan, F for front, R for right 
side view, L for left side view, B for back view, and the raster file 
format, e.g. GIF. 
For example, the six digitized raster viewpoint files are named: top 
viewpoint file, HOUSE-T.GIF for the top view; front viewpoint file, 
HOUSE-F.GIF for the front view; right viewpoint file, HOUSE -R.GIF for the 
right side view; left viewpoint file, HOUSE-L.GIF for the LEFT VIEW; back 
viewpoint file, HOUSE-B.GIF; and TABLE-1.GIF for the floating viewpoint 
containing the table. The named files are stored as digitized raster 
viewpoint files in the AUTOCAD environment. 
In FIG. 12, the user sets up a CAD drawing file. In step 2.1 of FIG. 12, 
the user starts a new CAD drawing file by responding to computer prompts 
for a file name and a file prototype. The user names the CAD drawing file 
based on the project name used in step 1, in this instance the project 
name is "HOUSE". The user selects a prototype drawing which matches the 
source document scanned. Here the source document scanned was an 
architectural drawing that was 36 inches by 48 inches in size, so the user 
selects ARCH-E from the five preset prototypes for architectural drawings, 
e.g., ARCH-A, ARCH-B, ARCH-C, ARCH-D and ARCH-E. The user enters this 
information via the keyboard. The prototype drawing file selected has 
associated with it preset settings, including OCR settings, OSR settings, 
a preset symbols library, menu settings, dimension settings, precision 
settings, text style settings, and layer settings. The prototype drawing 
file also has a set of page layouts having viewports which the user may 
select. The user selects the page layout having viewports corresponding to 
the views shown in the drawing. In this case the page layout has five 
viewports corresponding to a top viewport, a front viewport, a right 
viewport, a left viewport, and a back viewport. 
In step 2.2 of FIG. 12, the user customizes any of the preset parameters, 
if needed. 
In step 2.3 of FIG. 12, the user customizes the viewports. Here the user 
creates a floating viewport which will be used to hold the symbol property 
of the door schedule. 
As best shown in FIG. 13, the user imports each of the orthographic raster 
viewpoint files into its corresponding orthographic viewport. The user 
activates a chosen viewport by picking the viewport to be activated or by 
simply naming the desired viewport using an AUTOCAD "VIEW" command. In 
step 3.1 this is illustrated by picking the orthographic viewport titled 
TOP. In step 3.2 of FIG. 13, the user chooses the appropriate orthographic 
raster viewpoint file to import into the selected viewport. An AUTOCAD 
command "RASTERIN" is selected from a pull-down menu. The user types in 
the appropriate viewpoint raster file name. For example, here 
"HOUSE-T.GIF", which corresponds to the top/plan viewpoint raster file, is 
entered. The user is prompted for the drawing scale with the prompt 
"SCALE?". Here the user can view the viewpoint raster image to read the 
scale and type in the scale from the viewpoint raster image. Here the user 
types in "1/4"=1'" in response to the "SCALE?" prompt. Once the scale is 
entered, the computer software automatically imports the digitized 
viewpoint raster file into the selected activated viewport. This is shown 
in step 3.4 of FIG. 13 for the front viewport. This is repeated for each 
of the remaining orthographic viewports. The floating viewpoint raster 
file is imported into the floating viewport in like manner. This is shown 
as completed in step 4.1 of FIG. 14. 
As best shown in FIG. 14, the alphanumeric text is recognized in each 
viewport in the CAD drawing file. At the end of step 3.4 of FIG. 13, each 
of the digitized raster viewpoint files has been transported into its 
corresponding viewport, this is shown graphically in step 4.1 of FIG. 14. 
The alphanumeric text corresponding to the physical dimensions and edges 
of the 3D object, the symbol property, and any insertion point (of the 
moiety the symbol represents) into the drawing of the 3D object in each 
orthographic viewport is recognized separately. The alphanumeric text in 
any floating viewport, if present, is recognized first, as shown in steps 
4.2-4.3. This is done so that the alphanumeric text relating to a symbol 
property and needed for creating attributed symbols is available for 
symbol conversion in step 5. Thus any alphanumeric text in a table, chart, 
legend, or schedule is recognized first. The digitized raster alphanumeric 
characters (corresponding to the alphanumeric text on the architectural 
plan) are converted into ASCII text with the OCR operating in the CAD 
environment. This is shown schematically in step 4.3 of FIG. 14 where the 
broken line alphanumeric text in the "DOOR SCHEDULE" is shown changed to 
solid alphanumeric text line text. In step 4.4 of FIG. 14, the raster 
alphanumeric text in each of the other viewports is recognized next. Step 
4.4 of FIG. 14 illustrates the conversion of the raster text into ASCII 
text for the top viewport; the alphanumeric text "40', 26', 30', 12', 10', 
14'" corresponding to the physical dimensions of the walls of the house, 
the alphanumeric text "12'" and "10'" corresponding to insertion points of 
the door and window into the walls of the house, and the alphanumeric text 
90.degree. corresponding to the orientation of the pair of the walls, is 
recognized by the OCR and changed to ASCII text (e.g. recognized 
alphanumeric text). This is done for each of the orthographic viewports 
and is shown completed in step 6.1 of FIG. 16. 
As best shown, in FIG. 15, the symbols on the digitized raster image are 
recognized and converted to vector symbols in each of the orthographic 
viewports where the digitized raster symbols are present. In step 5.1 of 
FIG. 15, the user calls up the symbol library. The symbol library exists 
as a preset parameter of the ARCH-E drawing file. The symbol library has a 
number of standardized architectural plan symbols therein. The screen in 
step 5.1 shows a partial listing of the default symbol library associated 
with the prototype drawing ARCH-E, showing the symbol, the symbol 
properties, e.g. specifications of the symbol, and a drawing of the 
moiety/object of a typical attributed symbol. Generally this symbol 
library is not shown on the screen except to see whether any modification 
are needed. Modifications to or additions to the symbol library are done 
in step 5.2. In step 5.1, the symbol is picked. This is a content symbol 
for a door having physical dimensions of 3 feet 2 inches wide by 6 feet 8 
inches high. This is represented by the text "3'2".times.6'8"". To the 
right is a drawing of the moiety/object, the door. 
In step 5.2 of FIG. 15, the user may add symbols to the symbol library or 
modify symbols in the symbol library by using basic CAD drawing tools and 
commands, as previously described. For example if the user wants to add 
the door symbol to the symbol library, this is easily done. 
Specific symbol properties e.g. dimensional data can be associated with the 
symbol by the user selecting an "ATTRIBUTE SYMBOLS" command. The symbol 
library is displayed. The user is prompted "VIEWPORT?" The user responds 
by naming the floating viewport which contains the appropriate 
information. For example, if the user wants to create an attributed symbol 
for the door symbol . The user selects the viewport containing the symbol 
property, e.g. here the door schedule. This appears as a window or 
floating viewport which can be moved to a convenient location on the 
screen in a manner known to anyone familiar with WINDOWS.TM. operating 
software. As illustrated, the program then prompts "SYMBOL?" The user 
picks the symbol. Here the content symbol is picked. Then the user is 
prompted "OBJECT?". The user picks the drawing of the object/moiety the 
symbol represents; here the moiety is the door. The program then prompts 
for the dimensions of the moiety, such as "WIDTH?", "LENGTH?". The user 
may key-in the dimensions, but preferably picks them from the recognized 
alphanumeric text (ASCII text) in the floating viewport. Here the picked 
width is 2'0", i.e., 2 feet, and the picked length is 5'0", i.e., five 
feet. These alphanumeric texts become attributes of the symbol by using 
typical block attributions techniques well known in CAD. The alphanumeric 
text corresponding to the 3D symbol property for content symbol is stored 
in a symbol vector file for symbol . The vector file corresponds to the 
dimensions and edges of the moiety the symbol represents. The symbol 
then exists in the symbol library as a preset attributed symbol. 
However, it is the symbol which appears in the architectural plan. The 
content symbol in the plan view refers to a moiety, a door which is 3 
feet 2 inches wide and 6 feet 8 inches high. The user picks the floating 
viewport containing the symbol property the "DOOR SCHEDULE". 
In step 5.3 as illustrated in FIG. 15, the attributed symbol is created for 
the content symbol . In response to the "SYMBOL?" prompt, the user picks . 
In response to the "OBJECT?" prompt, the use picks the drawing of the 
door. In response to the "WIDTH?" and "HEIGHT?", the user picks the width 
and height values from the ASCII text which was converted in the floating 
viewpoint and associated with this symbol in the Door Schedule table. Here 
the width picked is 3'2" and the height picked is 6'8". The recognized 
alphanumeric texts (ASCII texts) become attributes of the symbol using 
the CAD block attribution techniques and are stored as a set of symbol 
vectors in a symbol vector file for symbol . The symbol vector file 
contains corresponding vectors to the dimensions and edges of the moiety 
the symbol represents. 
In step 5.4 of FIG. 15, the user activates the viewpoint to be selected for 
symbol recognition by picking on the viewpoint. The top viewport is 
activated in step 5.4 since that is the viewport in which the 
aforementioned attributed symbol occurs. 
In step 5.5, the attributed symbols are recognized with the OSR and the 
raster text symbols associated with the symbol is converted into vector 
symbols and any text associated with the symbol is converted by an OCR 
into recognized ASCII text. The appropriate vector shape file from the 
symbol library is automatically inserted so as to overlay its raster 
counterpart. These steps are repeated for each of the symbols. For 
example, for the content symbol for a window, a similar window schedule 
(not shown) is attributed to the symbol and the appropriate width and 
height is picked from the recognized alphanumeric text (ASCII text). A 
pre-existing vector file for an appropriately sized window is linked to 
the symbol using the CAD block attribution technique. 
As the symbols are recognized, they are automatically placed on a layer 
indexed to the viewport such as SYMBOL-T (top viewport) or SYMBOL-F (front 
viewport). These layers are frozen in all but the appropriate viewport. 
As best shown in FIG. 16, the alphanumeric text corresponding to the 
physical dimension and edges of the 3D object is converted into vectors. 
In step 6.1 of FIG. 16, the screen shows the viewports having each 
viewport raster file image with converted ASCII text (recognized 
alphanumeric text) and the converted symbols overlaying their raster 
counterparts. None of the other graphic elements corresponding to the 
drawing views have been converted into vectors. The user begins the 
recognized alphanumeric text to vector conversion process by choosing the 
viewport with the most symbols and alphanumeric text, e.g., the most 
information, in it. In this example, the user chooses the top viewport 
because the top view has the most information in it. The vectors, WCS 
coordinates and vector generated lines and arcs corresponding to the 3D 
object's edges which are formed in this viewport serve as the basis for 
subsequent vector production and line/arc generation in other viewports. 
In step 6.2, the user picks the origin, i.e., the point at which the vector 
furthest to the left intersects the vector nearest to the bottom, on the 
raster. This is represented by the intersection of raster lines 
corresponding to the edges of the 3D object. This sets the coordinate grid 
in the UCS and in the WCS. 
The starting point is selected next. The computer prompts the user, who 
selects the chooses object to be drawn (e.g. wall, roof, etc.) for a 
starting point for a first vector to be drawn. The program prompts 
"STARTING POINT?". The default response is the origin point. If the user 
clicks the left mouse button, the starting point defaults to origin. If 
the user clicks the right mouse button, then the program starts a series 
of prompts (DISTANCE? DIRECTION?). For architectural plans, the computer 
prompts the user to enter the distance of the start point from origin with 
the prompt "DISTANCE" which appears overlaid on the viewpoint image in the 
orthographic viewport selected. The user picks the correct recognized 
alphanumeric text off the viewpoint image by picking on "DISTANCE" and 
then on the correct recognized alphanumeric text. The computer prompts the 
user for "DIRECTION" from the origin, the user picks on the term 
"DIRECTION" and on the correct direction on the directional icon. The 
correct directions correspond to an arrow orientation corresponding to the 
orientation from the origin. 
The "DISTANCE" and "DIRECTION" picked by user are entered into the COGO 
subroutine. In this example, the starting point and the origin are 
identical so the user merely clicks on the left mouse button. Here both 
the origin and the starting point have coordinates corresponding to (0, 0) 
in the UCS and to (0, 0, 0) in the WCS. 
Since a house has a wall thickness, there is an outer perimeter wall and an 
inner perimeter wall. In a typical conversion, the user begins with the 
outer perimeter wall by executing the "WALL" command either from a pull 
down menu or by picking the wall icon in a toolbar menu. The program 
prompts "WIDTH?". The user responds by either picking or keying in the 
width dimension, e.g. wall thickness, for example 6 inches. If this prompt 
is answered, the program automatically constructs a line parallel to and 
inside of the outer perimeter wall, this is the inner perimeter wall. All 
subsequent prompts refer to the outer perimeter wall. 
In step 6.3 of FIG. 16, the user creates the first vector by responding to 
prompts "Distance" and "Direction" for the architectural plan. Eventually 
in step 7, the other elements such as doors and windows are constructed 
using the vectors formed in this step as a basis for location. 
Where the first vector drawn is a straight line, the first vector begins at 
the starting point coordinate established in step 6.2. This is the 
beginning point of the vector. The computer prompts the user with the 
prompt "DISTANCE" to enter the distance of the line (representing an edge 
of the 3D object in the selected view) from the beginning point of the 
vector. The "DISTANCE" prompt appears overlaid on the viewpoint selected. 
The user picks "DISTANCE" and picks the correct recognized alphanumeric 
text on the viewpoint image. The computer prompts the user for 
"DIRECTION?" from the origin, the user picks the appropriate direction 
from the directional icon. The alphanumeric text selected by the user for 
"DISTANCE" and the arrow orientation selected in response to the 
"DIRECTION" prompt are entered into the COGO subroutine. The first vector 
of a vector file is automatically formed. Here the user picked the 
converted alphanumeric text "40'" for the distance and the 90 degree right 
arrow for the direction. At the same time, the inner perimeter wall is 
created. 
After the first vector for the first wall is formed, the user is prompted 
for "NEXT WALL". The user responds to the default "Yes" or to "No". If the 
answer is "No", the program reverts to the start of the first line where 
the user is able to answer the opening sequence of prompts and correct any 
errant information. If the answer is yes, the user can default by either 
hitting the enter key or, preferably, by clicking the left mouse button. 
The "yes" response confirms acceptance of the vectors just generated. The 
program automatically deletes the recognized ASCII text. A new label 
identifying the length as an attribute of the vector itself is 
automatically generated and arrayed in a format typical to the art. After 
the first wall is formed and labeled, the program assumes that the 
endpoint of the first outer perimeter vector is the starting point of the 
next vector. The program defaults to the values for distance and direction 
previously picked. This is the beginning point for the vector for the next 
wall. Here the user responds "yes" by clicking on the right mouse button. 
The ASCII text of "40'", e.g. forty feet is replaced with a text label 
"40'". 
As is best shown in step 6.4 of FIG. 16, the user is prompted for the 
distance and direction of the next adjacent vector corresponding to the 
next adjacent line in the outer perimeter. Upon picking the appropriate 
recognized alphanumeric text, here 26' (26 feet), and picking the 
direction (here, arrow up, 0 degrees), the second vector is created and a 
second wall is formed. At the same time the inner perimeter wall is drawn. 
The second vector as generated is placed into a vector file. Once again 
the user is prompted, "NEXT WALL". If answered in the affirmative, the 
program executes the labeling process and automatically trims the 
intersecting vectors of the inner perimeter of the wall using a set of 
commands known in the CAD art. Here the recognized ASCII text of "26'" was 
replaced with the text label "26'". 
The user continues in like manner, stepping around the perimeter of the 
structure, creating next adjacent vectors until a closed outer perimeter 
is formed. For this example, one picks the recognized alphanumeric text, 
"30'", "10'", "12'" and "14" for each of the next four walls. If all the 
walls have been constructed properly, then the endpoint of the last vector 
generated should coincide with the starting point of the first vector 
generated. This is verified by using closure method, which is known in the 
art. Thus the method of this invention advantageously provides a means of 
mathematically checking the accuracy of the conversion process by 
verifying the closure of the perimeter. Once the perimeter wall has been 
converted and confirmed. The vectors created serve for creation of the 
remaining vectors of the structure. As each vector is created it is added 
to the vector file for the 3D object. 
After generating all of the vectors corresponding to the perimeter, the 
elevation drawing are already started. This is possible because the vector 
corresponding to the plan view are 3D vectors. A vector created in one 
orthographic viewport produces a vector generated line (or arc if the 
vector is a vector arc) or point in the other orthographic viewports. The 
program prompts "VIEW?" to which the user responds by toggling through the 
viewports "Front", "Right", "Back", "Left" with the right mouse button. A 
click of the left button signifies selection of an orthographic viewport. 
The selected orthographic viewport shows a view of the building which 
appears as a vector drawing based on the distances and directions picked 
when constructing the top view. This is illustrated in step 6.5 showing 
the plan viewport and the front viewport after the first vector is 
created. As shown in step 6.5 of FIG. 16, the recognized alphanumeric text 
is converted in the front viewport into vectors. The identical endpoint 
coordinates of respective vector end points and beginning points in the 
top viewport (plan view) and the front viewport are shown joined by the 
arrows graphically indicating "Identical points". 
The raster image in other orthographic viewports is adjusted, if needed, to 
overlay the vectors lines generated by the creation of the vector in the 
top viewport into the front viewport. The program prompts "BASE POINT?". 
The purpose of this prompt is to establish a reference point from which 
the raster image in the front viewport is to be moved. The user responds 
by picking the lower left-hand corner of the raster graphics in the front 
viewport. The program prompts "INSERTION POINT?" and the user responds by 
picking the endpoint of the appropriate vector. The user then proceeds to 
the end of the vector generated from the previous orthographic viewport 
and uses it as a starting point for a next vector. Proceeding to create 
the vectors as in steps 6.4 and 6.5. 
In step 6.6, the remaining vectors or vector sets corresponding to the 
perimeter of the 3D object shown in the drawing view in initial viewport 
are created in sequence, corresponding to adjacent edges on the perimeter 
of the 3D object in shown in the drawing view. The beginning point for 
each subsequent vector defaults to the endpoint of the previous vector 
generated. The computer prompts the user to enter the distance of the edge 
from the beginning point of the next vector (next edge) with the prompt 
"DISTANCE" which appears overlaid on the orthographic viewpoint selected. 
The user selects the correct alphanumeric text off the viewpoint image by 
picking on "DISTANCE" and then on the correct recognized alphanumeric 
text. The computer prompts the user for "DIRECTION" from the origin, the 
user pick on the term "DIRECTION". At that time the directional icon 
appears and the user picks the arrow oriented in the correct direction. 
The "DISTANCE" and "DIRECTION" picked by the user are automatically entered 
into the COGO subroutine which creates the next vector. 
In step 6.6, a vector is created for the side wall of the 3D object having 
a 12' height dimension. The starting point on the front viewport is picked 
by moving the cursor to the endpoint or a beginning point of a previously 
generated vector. Here the start point corresponds to the starting point 
of the first vector generated in the PLAN/TOP viewport. The recognized 
alphanumeric text (ASCII text) "12'" is picked and the up arrow is picked 
in response to the "DISTANCE" and "DIRECTION" prompts. The picked 
direction and distance are automatically entered into the COGO subroutine 
and a vector in the WCS is created. A vector generated line is over laid 
the drawing line. The ASCII text of "12'" is replaced with the text label 
"12'". At the end of step 6, the edges of the 3D object have been 
converted to 3D vectors with WCS coordinates. This is shown graphically, 
as vector generated lines on the monitor screen on step 7.1 of FIG. 17. 
The next step 7 is the conversion of symbols and the placement of the 
moieties which the symbols represent into the vector file for the 3D 
object, e.g. the placement of features such as doors and windows on the 
exterior and interior walls. 
In step 7.1 of FIG. 10, the user picks the viewport from the CAD drawing 
file which contains the most attributed symbols. In this particular 
example, the top viewport is picked. The viewport is enlarged to fill the 
screen. In step 7.2, the user picks a particular attributed symbol to be 
converted. Here the symbol picked is which represents a door having the 
dimensions of 3 feet 2 inches by 6 feet 8 inches (3'2".times.6'8") 
according to the dimension table. The vector block, e.g. vector symbol 
file, for the attributed symbol for door is brought into the program. The 
computer program displays existing attributes of the symbol selected, e.g. 
the "3'2".times.6'8" DOOR". The computer program prompts for additional 
information if needed. 
In step 7.3 the moiety/object which the symbol represents is located on the 
drawing. The user is prompted for data and recognized alphanumeric text 
relating to the insertion point for the location of the moiety, the door. 
The first prompt is "REFERENCE LINE". On the viewport, the user picks the 
line or corner from or to which the insertion distance is referenced. The 
program prompts "DISTANCE?", (e.g. the distance to center of door is the 
default assumption), and then prompts DIRECTION?. The user either defaults 
to the center of the door by picking the recognized alphanumeric text 
representing the insertion distance, or the user toggles through "center", 
"near side" and "far side" and picks the appropriate choice, and pick the 
insertion distance recognized alphanumeric text. Here the alphanumeric 
text "12'" is picked and the DIRECTION left arrow is picked. The location 
of the vectors corresponding to the symbol, e.g. the symbol vector file, 
is placed in the 3-D object's vector file using a typical AUTOCAD 
insertion routine. 
In step 7.4 the door opening is automatically drawn and the door, the 
symbol's moiety, is placed in the walls of the house. The program prompts 
for door swing, if that data wasn't included in the attributes of the 
attributed symbol. The user responds by picking near the hinge side of the 
door and then roughly picking the desired swing direction. The program 
automatically constructs the door in a manner known to the art. 
The program then prompts "NEXT FEATURE". A default "yes" answer signifies 
acceptance of the last attributed symbol placement and insertion distance. 
The old recognized alphanumeric text for the intersection distance is 
deleted and new dimensional text is automatically placed in the viewport. 
Here the recognized alphanumeric text "12'" is deleted and replaced with 
the dimensional text "12'". The user verifies the alignment and 
registration of the vectors representing the moiety of the attributed 
symbol against the raster backdrop as a method of quality control. 
In the case of attributed symbols for windows (not shown), the program 
prompts for insertion distances, e.g., a height, a width, and a distance 
from the floor to either the bottom or the top of the window opening. The 
program prompts for whatever data was not included in the attributed 
window symbol. Location of the window within the 3D object is established 
in the same manner previously described for doors. 
Simple symbols such as symbols for electrical outlets, plumbing fixtures, 
switches or light fixtures are placed as vectorized symbols on the 
selected viewport to overlay their raster counterparts and are 
automatically adjusted to fit the vector wall. At the end of step 7, a 
vector file exists having the vectors of the moiety associated with the 
attributed symbol inserted into in the vector file of the 3D object at the 
insertion point of the symbol. This vector file can be used to create a 3D 
computer model and is further used to create a scaled 3D model of the 
house using conventional CAM techniques. Also a new mathematically 
accurate AUTOCAD drawing file is created which can be displayed, stored, 
modified, printed, or plotted to create a new hard copy document of the 
converted architectural plan. This is similar to that shown in FIGS. 1A 
and 1B for the engineering drawing. 
While the present invention has now been described and exemplified with 
some specificity, those skilled in the art will appreciate the various 
modifications, including variations, additions, and omissions, that may be 
made in what has been described. Accordingly, it is intended that these 
modifications also be encompassed by the present invention and that the 
scope of the present invention be limited solely by the broadest 
interpretation that lawfully can be accorded the appended claims.