This page summarizes the changes and fixes to each version of the GBR2OASFRAC Fracture.
Version 1.13 2/1/2019New 64 bit version with VS2015
This is a new 64 bit version with VS2015 compiler. It has all the latest upgrades made to the Gerber translator in the past few years.
Version 1.10f 9/22/2016GBRUNION Smoothing Issue
Certain cases of smoothing and the amount of partitioning resulted in cracks appearing in the polygons generated by GerberUnion. This was because the partition edges were not being excluded from the smoothing.
Version 1.10d 8/9/2016GBRUNION Manager (gbrunmgr.exe)
Allow unit specification where unit can be INCH, MIL, CM, MM, or UM. This has been added for the following arguments: -arcsag:val[unit] -diameter:dia.[unit] -diameter_lpc:dia.[unit] -offset:x[unit],y[unit] -xform:xform_parms Set transformation settings (comma separated). xform_parms is rotation_parms,mirror_parms,scale_parms,offset_parms rotation_parms are anchor_x[unit],anchor_y[unit],rotation mirror_parms are mirror_x,mirror_y scale_parms are scale_x,scale_y offset_parms are offset_x[unit],offset_y[unit] -overlapvalue:value[unit] -circularize[:chord_err[unit]] -reversal:marginx[unit],marginy[unit] -sizingvalue:value[unit] -smoothingvalue:value[unit] -smoothingvalue:value[unit] -window:xmin[unit],ymin[unit],xmax[unit],ymax[unit]
Version 1.10c 4/20/2016Revision to Gerber PreProcessor
This is now applied all the time instead of conditionally as indicated below:
Format is pushed to best precision during input processing. If Gerber data is in mm, data is converted to 5 places of precision before it's interpreted and unionized. Likewise, if data is is in inch, data is converted to 6 places of precision. Union components Updates
Optimization has been applied for handling polygons with large vertex counts.
Version 1.10b 1/13/2016Boolean Sizing Bug
Data was being dropped when sizing was used on a customer Gerber file. This has now been fixed.
Version 1.10a 11/21/2015Faster Boolean
Optimized function for disjointing self touching polygons to work faster.
Version 1.10 11/4/2015Fix Gerber Sizing Issue
Fixed problem with missing trace after sizing certain Gerber polygons.
Version 1.09h 10/23/2015Fix Gerber Interpertation of Thermals
Gerber union fix to the way the software converted thermals.
Version 1.09g 8/17/2015Fix Gerber Interpertation
Handle empty SR blocks.
Before this, these window extents were altered to reflect the current units displayed. This has now been fixed.Scale Circularize Chord Error when Gerber Union Scales its Data
Version 1.09f 7/9/2015Gerber Union Fix
Reduce ADD mass parameters to a minimum amount regardless of the presence or absence of AM mass parameters.
Version 1.09e 6/18/2015Gerber Union Fix
Problem with preliminary step preceding validation and unionization was discovered. This involved removal of overlapping segments in a polygon. The problem was that a given polygon was being conditioned incrementally rather than reevaluated after a given segment was removed. It resulted in a crash. This has now been fixed to fully evaluate a polygon each time a segment is removed.
Version 1.09d 6/8/2015Gerber Union Manager Updates
Max points control fixed.
Version 1.09c 4/22/2015Reduce RS274X AM and ADD mass parameters
Reduce RS274X AM and ADD mass parameters to a minimum amount.
The minimum is approached by detecting similar AM mass parameters and mapping them to one, consequently reducing the amount of dcodes required.
Version 1.09b 11/16/2014Windows 64 bit
Gerber unionization stage has been updated to run with 64 bit executables where such executions are permitted (on Windows 64 bit).
Version 1.09a 4/16/2014Polygon Dropped
Complex polygon with over 250000 vertices was dropped during the union operation. This has been fixed.
Version 1.09 3/26/2014Polygon Dropped
Complex polygon was dropped during union operation under certain banding condition. This has been fixed.
Version 1.08b 1/14/2014Log File
Polygons dropped during repairs are flagged as errors if polygon is considered suspect.
Version 1.08a 1/6/2014Number of apertures
This version supports up to 40000 apertures in the Gerber file (before it was 10000).Dimension Filtering
Added dimension filtering during union validation. For inch it's 0.00004 and for mm it's 0.001. This filtering removes features that are smaller than this dimension when repairing self intersecting polygons
Version 1.08 November 25,2013Internal layer support
This version supports up to 4096 internal layers in the Gerber file.Header File
HEADER FILE, igbr2oasfrac.h, IN "include" directory has been revised.
Version 1.07 October 5,2012Arc Issues
The shell has been updated to only allow positive nonzero chord error.
Version 1.06a June 22,2012Gerber Union problem
Problem was discovered involving data that was stepped and repeated. If such data exceeded a specific vertex count,it would be processed over multiple threads. It's this multithreaded processing which caused the program crash. This has now been fixed.
Version 1.06 June 20,2012Gerber Union Dropping Data
When reentrant polygons are stepped and repeated, validation is required on that data to prevent it from being dropped.Layer Dialog Reorder
This bug was introduced in v3.17 - 08/31/2011. Layers would disappear when reordering. This has now been fixed.Log file in Gerber View
This was done for error checking that was missed from within Gbrvu.
Version 1.05 04/26/122048 layers
One of the modules failed to support Gerber files with over 1024 layers. This has been fixed.
Version 1.04 08/09/11No Fracture option
Added "No Fracture" option in "OASIS Fracture Settings". This option disables polygon fracturing when set. Default is off..
Version 1.03a 06/23/11Empty Gerber SR blocks
This version handles empty Gerber SR blocks and we increased layer buffer size to support 1024 LP commands.
Version 1.03 05/24/11Polygon Repair
A validation phase has been added to repair polygons while preserving data hierarchy. This was done as an optimization to prevent that from happening for multiple reference instances.Tiling Speed
Tiling engine has been optimized to explode data more quickly.OASIS output crash
OASIS formatter had a program crash related to modal sorting. This has now been fixed.Tile Sort
When position sorting was requested, polygon fracturing was not organizing polygon vertices in counter clockwise orientation with bottom most left most point being first. This has now been fixed.
Version 1.02 05/2/11Add Job ID feature
This version includes a new feature which allows the user to define a string of text (Job ID) and a location. The text will be translated to OASIS as part of the Gerber file.
Job ID settings have been added to the library. The GUI has added controls which are labeled: Label Description (a) User String Job ID String (b) X Text X Location in Gerber Units (c) Y Text Y Location in Gerber Units (d) Size Text Height in Gerber Units (e) Rotation Text rotation in degrees (f) Mirror Text reflection across Y The C and C++ API have new member options corresponding to the new GUI controls and they are: ------------------------------------- C Data Structure _sGBR2OASFRACOPTIONS ------------------------------------- mJobIdUserStr (const char *) mJobIdX (double) mJobIdY (double) mJobIdSize (double) mJobIdRotation (double) mJobIdMirror (int) -------------------------------------- C++ Data Structure sGBR2OASFRACOPTIONS -------------------------------------- mJobIdUserStr (std::string) mJobIdX (double) mJobIdY (double) mJobIdSize (double) mJobIdRotation (double) mJobIdMirror (int) The C and C++ API have new commandline arguments for by_Cmd functions, and they also correspond to the new GUI controls. These arguments are: ------------------------------------------------------ C Function NGbr2OasFrac_convertGBRToFracturedOAS_byCmd And C++ Function convertGBRToFracturedOAS (by command) ------------------------------------------------------ Argument Description -jobiduserstr:str Specify Job ID string str. -jobidx:value Specify Job ID X location in Gerber input units. -jobidy:value Specify Job ID Y location in Gerber input units. -jobidsize:value Specify Job ID size in Gerber input units. -jobidrotation:r Specify Job ID rotaion in degrees. -jobidmirror Specify Job ID mirror. The sample program has been updated to handle the new command line arguments.Arc Resolution removed
Arc resolution has been removed from GUI settings. When chord error is 0, it is set to 9 degrees. Otherwise, it is set to 45 degrees.
Version 1.01 04/12/11Format 4.6 issue
There was a bug fix to Gerber union phase with when converting a high format file from 4.6 MM format. It was incorrectly changed to a 2.6 format which produced data overflow. It is now converted to a 3.5 format during this phase when data overflow is detected.
Version 1.00 04/10/11New GBR2OASIS
First release of our GBR2OASIS Fracture converter on Windows.