Receive Posts by Email

Blog Home

3D ACIS Modeler R23: What We’ve Done For You Lately

Mon Aug 6, 2012

The challenges of a major software release are not unique to Spatial. And like other organizations, the launch process looks different to various departments in the organization. There are those in Marketing who view each release event as part of a beautiful, butterfly-like progression. On the other end of the spectrum, you have factions within development and testing who see things as more like the manufacturing of really tasty sausage. Across all of Spatial and our partners, however, we are very happy to announce the general availability of 3D ACIS Modeler R23. The R23 release combines improvements to address specific customer requests, general 3D market needs, and improvements that further our strategic roadmap goals.

Tags: 3D ACIS

Read More 0 Comments

How Healthy is Your B-rep?

Thu Mar 8, 2012

We’ve known for a long time that the integrity of B-rep data plays a major role in the success of downstream modeling operations; but it has always been a difficult task communicating this back to our users in a meaningful manner. For ACIS we have had an external geometry and topology checker since the beginning of the product; it serves the function of defining illegal state(s) of the model.  It has, and still does, serve its purpose. But I knew something was amiss when I kept seeing in-house debugging tools written by developers that reported back B-rep pathologies that were never a part of our external checker. The ACIS developer would see a pathology using these tools and, more often than not, deal with the situation by placing a “fix” in the algorithm to detect the pathology and correct the situation by some form of data manipulation (e.g., re-computing secondary geometry) or expanding the algorithm to handle more numerical inaccuracies / bad data. Although this is one way of doing business (and it shields the application developers from the immediate problem), you trend towards a slower modeler on good data, and bloated B-rep data size on bad data. What’s worse, the application developer never understands why.

Tags: 3D ACIS

Read More 0 Comments

When Is a Point Not Necessarily a Point?

Fri Jan 27, 2012

Answer: when it’s a 'HappyPathPoint'.

Tags: 3D ACIS

Read More 0 Comments

Thoughts on Agile - Epilogue

Fri Jan 20, 2012

To finish up this series of posts; what Gregg's post described happened a few years ago. Since that first team room, we've kept and dropped some Agile practices, and each development team has evolved their own processes. But the original idea has stuck. He did have to coerce developers into the room the first time. But it worked. Why? Because he correctly identified the criteria for making them successful, and well, I guess people liked that.  

Tags: 3D ACIS

Read More 0 Comments

Your Smallest Code Change Could be the Most Dangerous

Tue Sep 27, 2011

This post will discuss two aspects of my favorite programming language, C++:

Tags: 3D ACIS

Read More 0 Comments

A Really Good Book

Thu Jul 14, 2011

Way back in the Dark Ages of the mid-90s, I used to read a newsgroup called comp.lang.c++. You can tell this was the Dark Ages because A) it was a newsgroup, not a web board and B) growth of the C++ community hadn’t forced it to transition to comp.lang.c++.moderated in order to keep the signal/noise ratio high. One of the things I remember from this time was some guy who was thinking through ideas for a book and posting articles about design metrics for commentary from the group. I found the ideas interesting, but didn’t pay close attention. (Amusingly, I think I might have found one of these posts just now while Googling to double-check the group name.)

Tags: 3D ACIS

Read More 0 Comments

Growable Array Performance

Thu May 5, 2011

Here’s a subject to which everyone can relate in one way or another: growable arrays. An array is a contiguous memory block that provides O(1) random access via indexing. “Growable” means that the array has the ability to expand, accommodating more elements as needed. I’ve seen numerous homegrown implementations for “generic arrays”, “dynamic arrays”, “generic block arrays” – all written by myself and fellow teammates over the years. We rolled our own because the Standard Template Library has taken quite some time to reach an equal footing on all platforms (SGI, AIX, Solaris, Linux, Windows, etc.).

Tags: 3D ACIS

Read More 0 Comments

Multi-processing in ACIS and CGM

Wed Feb 23, 2011

I have spent many years of my career here at Spatial developing Thread-Safe ACIS and now I’ve been given the opportunity to additionally work on the multi-processing infrastructure in CGM. The two modelers use very different multiprocessing technologies, and it has been interesting comparing and contrasting them. The main goal is the same in both cases, to provide a means for our customers to leverage multiple processors to improve performance in their end-user applications.

Tags: 3D Modeling 3D ACIS CGM

Read More 0 Comments

Contract Checks - Once and Only Once for Unit Testing (Part III)

Tue Feb 8, 2011

In Part I and Part II of this thread, I discussed the advantages of incorporating contract checks into one’s unit testing methodology. I thought it would be useful to include an example, so here it is . . .

Tags: 3D ACIS

Read More 0 Comments

Contract Checks: Once and Only Once for Unit Testing (Part I)

Tue Feb 1, 2011

In her post that started this thread, Stef mentioned Meszaros' book on xUnit.  My reaction when I bought the book was a bit different from hers; it was what I would now describe as a smell.  My instinct was that there’s something wrong if one needs to spend a large fraction of one’s architectural effort on code which is not part of the shipped product.

Tags: 3D ACIS

Read More 0 Comments

Recent Posts