open access web page header

Introduction

acsOaBool is a plug-in engine designed to provide boolean operations for the Open Access run time environment. It provides the following boolean operations:

  • Union
  • XOR
  • Minus
  • Intersection
  • Sizing
flow for acsBool

Description

Introduction

The Reference implementation of Open Access does not include boolean operations - one cannot compute the intersection of poly with the diffusion region below it. Yet boolean operations are fundamental to layout, LVS, DRC and DFM applications. Clearly there is a need for a low cost, efficient, robust and easy-to-use plug in that provides these basic operations.

Plug-In Implementation

We have implemented the boolean as a plug-in that C++ programmers can quickly and easily incorporate into their applications. By inheriting the oaRegionQuery class, one that is constantly used by all applications, we have made it quite straightforward to specify the sets of shapes to booleanize and to retrieve them from the plug-in. The boolean is intended to be invisible to the application.

Performance

It is not that difficult to write a boolean operation for simple conditions: small data sets, Manhattan geometry and a limited number of vertices per polygon. It is another matter to code a boolean that supports very large data sets (say 100K+ polygons), all angle data and polygons with 5,000 vertices.

 

acsOaBool does all that. It is also multi-threaded so it can subdivide the boolean work onto as many additional CPU's as are available.

   

Platforms

Sun Ultra Sparc
Solaris 1 64 bit
Sun Opteron
Solaris 10 64 bit
Linux X86
RedHat 3/4 64 bit



OA Main Page API Download Revision History Sample Code


ARTWORK CONVERSION SOFTWARE, INC.       Company Profile
417 Ingalls St., Santa Cruz, CA 95060    Tel (831) 426-6163     Fax 426-2824    email: info@artwork.com