OLE for Design & Modeling Applications

Dan Wygant tells you how OLE for Design and Modeling applications can redesign the face of your work and your workstation.

Walter S. Arnold

February 29, 1996

10 Min Read
ITPro Today logo

A coming generation of applications that take advantage of a newstandard in computer-aided design and manufacturing (CAD/CAM)will soon take the Windows NT and Windows 95 market by storm. The standard, Object Linking and Embedding for Design & Modeling(OLE for D&M), extends OLE to handle 3D objects. Intergraphauthored this new technology, and Microsoft and a number of CADvendors have endorsed it as a Microsoft OLE industry solution. This new technology, which resulted from Intergraph's JupiterR&D project is expected to lead to a new breed of OLE-awareCAD/CAM applications for the 32-bit Windows NT and Windows 95operating systems.

OLE for D&M applications can create documents that containoverlapping, precision-placed 3D or 2D OLE objects, as well asconventional non-overlapping OLE objects such as standard teaspreadsheets, art and images. These documents are commonly calledcompound documents because they can hold multiple OLE objects,and because users can view their 3D OLE objects from differentorientations instead of just from the top.

The commands available in OLE for D&M applications from boththe main application (e.g., Microsoft Word) and from the OLE server(e.g., Paintbrush, an OLE server for .BMP files) will allow precisionediting of OLE objects. For example, an OLE server for an AutoCADfile that's linked to a Word document can share the menu bar onthe main application's frame to provide precision-editing commandssuch as extend Line. Similarly, the main application canprovide precision placement or orientation commands such as moveobject, scale object, and rotate object that act on theOLE server.

2D vs. 3D
In a 2D world, you use only two coordinates, x and y, to describea location. When you move off a flat surface into the 3D world,you add a third coordinate, z, to describe the spatial component.Currently, OLE objects are bounded, non-overlapping shapes. OLEfor D&M eliminates these boundaries by allowing you to preciselyplace 3D OLE objects into a document You can look at these objects,which may overlap, from various viewpoints. Because the objectsare placed precisely in relation to each other in space, you canbuild a model or assembly with multiple OLE objects. In the samecompound document you can also combine 3D OLE objects with standardOLE objects such as a Word document or an Excel spreadsheet.

The ability to view and incorporate 3D objects into office-automationapplications brings the benefits of CAD to desktops across anentire enterprise. You can have access to accurate product models,facility plans, and area maps, and you don't even have to knowhow to use the technical application itself.

Because of their cost and complexity, CAD applications have beenlimited to engineering, design, and scientific departments; sharingdata with other departments has often been cumbersome. With Windows,OLE, and OLE for D&M technology, all users can take advantageof objects, drawings, and 3D and 2D models without using traditionaland often monolithic CAD/CAM applications.

Combining Objects
OLE for D&M applications also allow you to move beyond merecompound documents: You can make compound geometric models thatcombine OLE objects of various formats. OLE for D&M applicationscan place these objects correctly in space relative to each otherwhen they are assembled. Each OLE object displays with a position,scale, and orientation specified by its attachment (transformation)matrix. You can also display more than one overlapping OLE objectin the same space or view, just as you can in traditional CAD/CAMapplications.

Objects do most of the work in OLE. The OLE objects "know"their own formats and how to display and manipulate themselves. This capability takes the burden off the main applicationbecause its not required to know how to use different data formatsto combine objects with native data into a CAD model. You canconstruct a seamless model in the main application with objectsfrom various CAD/CAM formats without converting them. The objectsretain their native format and you can use OLE for D&M applicationsto combine them with OLE objects of other data formats to createCAD models.

Just as you can insert a bitmap into a Microsoft Word documentOLE for D&M applications allow you to insert multiple, spatiallyoverlapping objects into their documents. For example, you cancreate a compound document of a bicycle assembly by connectinga bicycle frame to a front wheel. Let's say, for instance, thatthe bicycle frame is a MicroStation file and the frontwheel an AutoCAD file. The two objects can be placed precisely,relative to each other, to provide a seamless, realistic modelin a compound document You can then insert other objects intothis compound file. As you can see in theexample in screen 1, a Word document and an Excel spreadsheethave been inserted to add notes and a title block into a Me. To produce this bicycle assembly with current CAD/CAM technology,you would have to convert either the MicroStation file, the AutoCADfile, or both into the native format of the final document.

Choose Your Views
Typically, current CAD/CAM technology allows you to show multiplesimultaneous windows with different views of the same object ormodel. This means you can see top, right and front views at thesame time. Some of the views can even be shaded, or they cancontain offset and scale notations. Until now, there has notbeen an "OLE way" to maintain different views of 3DOLE objects in space. Because they allow you to create 3D OLEobjects in a compound document OLE for D&M applications providethe familiar View commands that you see in traditional CAD/CAMapplications.

Multiple views make it easier for you to edit objects. With 3DOLE, you can select an object in one view and then select pointsfrom multiple views so that you can perform any editing you need. You no longer need to stop and change your view orientation inthe middle of an editing command. Lefs say, for example, thatyou have three windows displayed: an isometric perspective viewzoomed out to show the entire model, a front view zoomed in onthe object you want to modify, and a top view centered on anotherobject that you want to use to edit the original. You selectthe object in the second window for editing by using an extendLine command. You are prompted to select a point or element toextend the line, and then you move to the third window to selectthe object centered in that view. The line is then extended tothe object in the third window, and you can see the overall resultfrom all three views. This simple extend Line operation mightnot have been possible without multiple views. They can enhancethe ease, precision, and speed of this editing operation. Screen2 shows an example of multiple simultaneous views.

A Flexible Advantage
The advantage of OLE for D&M is the freedom and flexibilityit gives you to construct composite models without having to worryabout whether your objects have compatible formats. Imagine combininghundreds or thousands of differently formatted OLE objects tocreate a single, seamless CAD/CAM model. In each view, the objectsdisplay correctly in space relative to each other and appear tobe seamlessly connected, even though all the objects are of variousfor-mats and may even be displayed by different applications.

Different data formats can also give you more flexibility. AnOLE server application for a particular filename extension, whichis usually related to a particular file forename provides allthe display capabilities for the format to the main application.

The server can also provide other capabilities. For instance,typically when you double-click the mouse on an OLE object theOLE server for the object goes active. While the server is active,it shares the main application's menu bar and provides its owncommands in its own pull-down menus. This capability allows serversthe flexibility of providing commands such as extend I i ne thatwork with their own data formats. It also allows them to simplyadd value to the use of their data format through other typesof commands. For example, an OLE server can provide databaseaccess commands (e.g., show all widgets that cost Less than $300)or perhaps analytical commands (e.g., generate a flow analysisusing specific elements).

Using Constraints
Assembling a CAD model with constraints is perhaps the most necessarycapability of current CAD/CAM technology. Ifs also the most difficultcapability to deliver. Modeling with constraints refers to definingrelationships between objects; for instance, whether two linesare parallel or whether an are and a line touch tangentially.

It is essential to a high-quality CAD/ CAM applicationthat you be able to perform precision modeling with constraints. Let's assume that two or more objects are constrained to eachother's dimensions. If one of them is moved or modified, theother constrained object should move or adjust automatically.Therefore, constrained modeling is also called relationship modeling.

Typically, a CAD/CAM user places one object and then places anotherobject next to it as if they were two pieces of a puzzle. Todo this, you must select the points on the two objects that youwant to connect This selection of points is called locating, andthe seamless connection between objects is the constraint Thesetwo capabilities are used for the precision placement and assemblyof CAD/CAM models in both traditional CAD/CAM and OLE for D&Mapplications. An OLE for D&M application can enable you tocreate a CAD model with constraints, even between OLE objects(including those of different data formats) by using the application'scapability to locate "into" other OLE objects. WithOLE, the main application puts the burden of the locate on theOLE server that understands the specific format.

You can open, or in-place activate, OLE objects for editing simplyby using your mouse to double-click on the object. This automaticallyactivates the native application you used to create the objector the OLE server that's responsible for the objects data formalThe OLE server or the native application inserts its own pull-downmenus together with the main application's pull-down menus.

The native application provides commands for editing and selectingelements by giving a location or by providing a boundary. Thistype of boundary, called a fence, allows you to selectelements if they are lying inside, on, or outside the boundary. You can even make this selection outside the active OLE objectsown extent or in separate views, without deactivating the activeobject For example, suppose you activate an OLE object that providesan extend Line command. You can then select an element or pointoutside the objects own extent or even in a separate window, toextend the line. When you select outside the extent of an activeOLE object using current OLE technology, the active object deactivatesand the command is terminated. With OLE for D&M applications,the active object stays active when you select points outsidethe extent of an active OLE object. This allows OLE for D&Mapplications to have commands that use data located in separateOLE objects in the compound document model.

Using the Clipboard
Currently, if you select outside an OLE object while it is in-placeactive, it deactivates. In some cases, you might want to keepone object active while you retrieve data from another. To dothis, you need a clipboard format that both objects can use. The active object can actually get data from the other OLE objectafter the locate and then continue processing.

For example, consider a pipe and valve assembly. You double-clickon the "pipe," and the OLE object becomes in-place active. You select the thread fit command, which asks you to selecta thread to stretch to fit then you select the threaded valveopening. The command recognizes the threaded opening of the valveyou selected and uses this data to calculate a perfect fit betweenthe valve and the pipe. Now that the pipe has been modified,it tells the main application to update the display. The pipethen redisplays with the correct dimensions to fit the threadopening of the valve you selected. The pipe is still in-placeactive and is waiting for you to select another command (see screen3).

OLE for D&M applications can bring the precision modelingand editing tools of current CAD/CAM technology to OLE, and thereforeto the standard desktop PC. The locate feature gives an OLE forD&M application the ability to extend this geometric-constraintcapability to other OLE objects. This extension then allows youto assemble various OLE objects into a constrained CAD/CAM model.

Open Interoperability
One of the biggest advantages of OLE over traditional non-OLECAD/CAM applications is that you can control data formats fromany vendor to create compound documents and to construct models. For example, various OLE for D&M servers for the OLE objectsin the bicycle model (see screen 1) handle display and locaterequests for the specific data formats they service. In addition,OLE for D&M provides a number of advances over the earlierOLE 2.0 standard including spatially overlapping model placementin both 2D and 3D, correct spatial placement the ability to locateinto individual elements of OLE objects, and the ability to locateoutside an object's extent without deactivating the object.

The capabilities of OLE for D&M applications are profoundand will bring the benefits of CAD into the mainstream of enterprisecomputing.

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.