CAD-Portal.com: ImpactXoft IX Design
ImpactXoft's Functional Modeling Explored
   

In Issue 85 we wrote about seeing the latest version of ImpactXoft's (IX), as yet, unreleased version of IX Design. In that issue Ray Kurland, our intrepid traveling editor, wrote that "Seldom have I ever felt that I was awed by a new product -- this is one of the exceptions!" After reading this article I believe that you will also want to know more about the product. To help us understand their product we met for several days with Attilio Rimoldi, President and CEO, and Gian Paolo Bassi, VP and Chief Technology Officer.

ImpactXoft was founded in June 1999 by Attilio Rimoldi and Martin Welch, and is set to soon roll out it's IX SPeeD Suite of products, consisting of IX Design and the IX Collaboration Package. The company has just completed its second round of financing, difficult to do in these days of skepticism about high tech products. About 50 developers at several development sites are busy working on the product, which is due to roll out very soon.

Most of this article will focus on IX Design. The IX Collaboration Package is also very interesting, because different than other collaboration software that deals with the problem of high level assemblies and outside suppliers, IX Collaboration focused on detailed design level collaboration among designers.

Functional modeling
Instead of using the now leading 3D solid modeling technique - history based design - used by virtually every CAD vendor, IX has developed a new technology called functional modeling. History based modeling was explored in the early 90's by PTC, introducing the then ground breaking technology with Pro/ENGINEER. Prior to that, most modeling systems used explicit geometry which only recognized how geometry was attached to other geometry. History based design not only recognized explicit geometry relationships, but added more flexible geometry called features and also recorded the modeling steps used to create the model. By changing parameters of the geometry and its features and then replaying the history caused a new result. Additionally, equations were often used as part of the model development to relate parameters within or among parts. TechniCom explored such capabilities using a series of benchmarks in the early 90's and then again in the late 90's for mid range systems.

In engineering, three characteristics of parts are often discussed. These are form, fit, and function. Existing solid modeling systems focus only on form (the way an object looks) and fit (the physical relationship of one object to another). Functional modeling introduces the concept of function. Each objects carries with it, its own definition of how to behave when interacting with other objects! As an example of the ways in which the modeling differs, we have placed a series of images along with explanatory text on our web site. Click here to view them.

By way of example, we revolved a rectangle 360 degrees to create a cylinder. Then we added a sphere to the top of the cylinder. Next, we added a flange to the base. Interestingly, as we develop each portion of the model, we are able to decide whether its shellable and how it acts when other objects interact with it. To illustrate, we shelled the cylinder and the sphere but we had designated the flange to be non-shellable. Thus the shell acted correctly on the objects. While not shellable, the flange still had a hole cut through it where it intersected the cylinder. IX Design's default behavior of a solid is that it does not disturb the behavior of the solids to which it is attached. In our case, the behavior of the cylinder removed a portion of the flange. When we added material to the top sphere, the shelling worked correctly by following the new contours. We might also have chosen to add material inside the part. Another interesting example is shown in this image of a sample part with a rectangular motor versus this part with a cylindrical motor. By simply replacing the motor, all connecting parts updated because they knew by their function how to interact with the new part. Look at the enormous number of changes that were made automatically.

We initiated detailing by opening a new IX Design part and selecting a new drawing. To start you can load a template to size the drawing, then select the 3D model to be detailed. Since we knew that detailing had been added only within the last few months we were surprised at the robustness of detailing. We judged it to be quite capable of producing high quality drawings documenting the solid model.

IX Design's Rigid Motion capability works by translating or rotating a set of elements with a command, providing a great deal of flexibility. For example, in the hair dryer design discussed below, we were able to build a simple rectangular box on a plane and use the roto-translate capability to properly position it. This is a parametric move and the parameters for the move are accessible in the model file.

Organizer
Files can consist of parts or assemblies. IX Design also allows for alternative representations of parts and sub assemblies using the concept of an Organizer. We saved a couple of images known as Organizer 1, 2 and 3 in this set of images. Organizer 3 differs from Organizer 2 in that we used the variational capability of IX Design to easily manipulate the series of profiles involved with building the handle. The fascinating part about this is that the design is fully variational, so that in the example of Organizer 3 versus Organizer 2, we manipulated the entire set of connected profiles by dragging a series of points to change the profile, and thus the shape of the generating curve for the solid that would become the handle.

It is interesting to note that Bassi, in an example fo designing a hair dryer, has very quickly organized the folders within the configurator so that we have a top down approach to the design of the hair dryer, as illustrated here. This replaces the need for layers by automatically or manually placing geometry in the various folders. The system controls the viewing of objects by using a simple on/off by object type that allows us to show or hide the geometry.

Bassi described the organizer as a "the next generation tool" that takes the place of mini PDM systems. It also allows for the replacement of layers as a way to organize elements easily. Newly created elements can be added to any folder in the Organizer, and is an excellent (in my opinion) for top down design. Non-geometric elements can be added to the Organizer along with elements and files. Here are a few samples.

Configurations help evaluate and make changes easily
We built two alternative configurations of the hair dryer - a round motor configuration and a square motor configuration. The original configuration was called the Default configuration. We were easily able to build new configurations as can be seen from the menu. We then shared parts between the appropriate configurations. When we clicked on the square configuration we got the information related to that and visa-versa. Take a look at some screen shots of configurations. This ability to change easily between alternative solutions illustrates the real power of functional modeling -- little additional effort is required, because each part contains the knowledge of how to interact with other parts.

Navigator
The Navigator displays two additional Windows - one showing associations used, the second showing is "used by" associations. At first glance it doesn't look very useful, but it turns out to be very interesting to explore how the model was built. We found it particularly fascinating because we could navigate by features across a particular model. Clicking on the features allowed us to examine the details of how the selected feature was built. For instance, by clicking on the exhaust pipe and using associations we were able to determine that it was built by a 4 lines being rotated. In addition, "they used by" association tells you what other features are built from a particular element. See this image.

Underlying database
The IX database uses a compound database made up of several items, including the Functional Description, Logical Description, Geometric and Topology Description and the drawings. A single data file has separate parts. The geometric and topological descriptions represent the recipe for the part and can be completely compacted. When the part is compacted this is all that is saved. This "recipe" or "Functional Object Representation" is used to maintain for collaboration and because of its compact size, allow collaboration even over low bandwidth connections.

Design Collaboration
Most of this article explores IX Design. But we cannot leave without mentioning the IX Collaboration Package. This is made possible because of the Functional Object Representation storage capability of the SPeeD suite, in conjunction with server software that manages simultaneous electronic collaboration along with the concept of Design Intent Merge, that automatically reconciles additions and changes to the product definition across multiple collaboration sessions. The result enables globally dispersed team members to create, evaluate, and change product definitions both asynchronously and synchronously. In addition, team members can work only with the geometry that they need for their specific function. The server insures that all team members are working with the latest model data.

Improving fast
Some of you might have had a chance to read a review of the software made by CAD Report earlier in the year. We asked Bassi to review the criticisms and to update the progress made in the software since this February article. In that publication, a number of suggestions were made by the author, Steve Wolfe, on more to be done with IX Design before release. Most have already been added to the software. The following items have already been completed or will be by FCS: mass property calculations, snapping of wireframe entities to vertices and center points, support for IGES, ACIS, Parasolid and STEP, feature Arrays, feature pattern arrays where the patterns related back to and are dependent on the original feature, mirror and copy functions, interference checking on parts and assemblies, 2D kinematics analysis, thin wall features, turning a surface into a solid, and support for reference files rather than loading the entire part into the model.

Functionality planned for the near future (after FCS) includes more advanced kinematic analysis, sheet metal modeling, and VDA support,

Developer tools
The developer tools are already available and ready. They are object oriented, offering great benefits to third party developers. These tools allow the ability to easily integrate with the entire IX infrastructure by appending objects, thus offering full associativity. complete integration into the system, along with object persistence, undo redo, and user interaction. Interfacing to the system using these development tools requires knowledge of visual C++. Bassi insists that one week of training would be enough for a skilled C++ programmer to begin developing with the IX API. Vendors interested in contacting IX should contact Martin Welch whose e-mail is mgwelch@impactxoft.com. For users, IX plans a visual interface that can call .com objects, to be available after FCS.

Modeling a part from the TechniCom mid range MCAD benchmark
Bassi is showing me a great deal of the IX design flexibility by modeling a bracket that we used during our mid range benchmarks in 1999. One of the things that we found was the capability to easily make modifications. Without setting up equations we were easily able to maintain the topology while modifying one or more of the features. We think this is absolutely unique and while we have not tested this, we don't believe any other modeling system has the capability to do this. Additionally we were able to build a cutout for the inner bearing chase external from the external model, drag and snap it onto the center point of the outer bearing chase and voila! The cutout feature took effect. Take a look for yourself by reviewing the three Changes images here.

Software reliability excels
Of tremendous interest is the fact that in the two days we worked on the system, the system never crashed or lost data. This is highly unusual during this early state of development for software of this complexity. Bassi proudly stated that this was an intrinsic part of the software architecture. The system traps errors, can smoothly recover from any that do occur, and users can even use undo to arrive at a previously valid state. Very impressive from those of us that have suffered from an endless variety of system crashes. Are we witnessing a new era in software reliability here?

Pricing, availability and distribution
The IX SPeeD Suite includes IX Design and the IX Collaboration Package. IX Design serves as the design authoring tool, while the IX Collaboration Package consists of server software that manages simultaneous electronic collaboration. The IX collaboration package is available to users via servers at the IX facility at no extra charge. It's use is included with the estimated $2500 annual IX Design subscription. The SPeeD suite is expected to be released with the next 30 to 60 days.

The product has already been released in Japan, by ImpactXoft's partner, Toyota Caelum, Inc. (TCI). Headquartered in Nagoya, Japan, TCI has supported and funded ImpactXoft's creation of the IX SPeeD Suite. TCI will distribute the products in the Japanese market under the name XXen while ImpactXoft will distribute the IX SPeeD Suite to the rest of the world market. Deliveries will begin in the Japanese market starting in June, 2001. ImpactXoft distribution plans include web based sales, as well as direct and indirect sales. See their web site for the latest information on how to order copies or get demo software.

What needs improvement
We agree with Wolfe's comment that it is awkward and aggravating to work using coordinate systems. Bassi counters that this is an advantage. While it is somewhat more awkward, working with coordinate systems allows for additional flexibility. For instance when working on a plane, users can build 2D geometry offset, or even at an angle from that plane. Still, there are better techniques, such as that used by SolidWorks, by starting on a face.

The user interface is indeed homely. ImpactXoft plans to improve the UI after FCS. Today IX Design allows some customization. Users can change color and add gradients to the background. The software needs improvement here, but is certainly usable as is. We hope that IX focuses on improving the menu structure, making it more Windows like. We would also like to see the introduction of templates that would guide the user through the design process.

Because of the status of the product, no integrated third party products are available. We anticipate that this will change in the future with the successful adoption of the software by users. IX Design uses ACIS as its base geometry modeling system. Therefore, many third party products should be able to directly read the geometry.

Conclusions
Basically, the modeling software, using its design menu approach along with a remote or local server, enables design collaboration (called Simultaneous Product Development), a method in which members of the entire global development chain work in parallel to create and finalize part and assembly definitions. Along with the collaboration, IX's solid modeling software incorporates functional modeling, a new technique that eliminates the confusion of changing full history based models and simplifies the entire design process by making it easier to make changes.

In  history based modeling, one of the most significant drawbacks is that this technique only works for small changes to the model. As any user of solid modeling can describe, large parametric changes will invariably break the model. This becomes even worse as parent relationships extend into many other parts and assemblies. Sets of highly complex relationships built using equations of parameters only exacerbate the problem. Functional modeling changes the paradigm! And for the better. Since features carry their own function, the resulting model does not depend upon its history, but rather its content. We believe that IX's functional modeling is a precursor for a change in solid modeling techniques.

Above, we illustrated how IX Design approached one of the tests on TechniCom's mid range benchmark. Soon we hope to be able to put IX Design through the full paces of our mid range benchmark. We will report to you on the results.

In summary, we are enamored with the entire software suite and highly recommend that users get copies for their internal testing as soon as the product becomes available.

www.impactxoft.com

 

 




CADWire News:


Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/home/cad-portal/private/MYSQL/mysql.sock' (2) in /home/cadportal/public_html/eWeekly/product_reviews/impact/ixd.php3 on line 546
Link Server is down, try again later!