gbrvu_windows_title.gif

GBRVU/w Revision History

This document summarizes enhancements and fixes to GBRVU/W. Please consult this page on a regular basis to determine what changes have been made to our programs.



Version 3.59a 8/6/2024

Updated Boolean Components

This fixed problem of incomplete unionization. There were exceptions encountered that were not handled. This caused some data to be output without having been unionized.

Revised GerberUnion flow to skip Gerber SR cell

When sizing iS nonzero, the program that optimizes unionization for SR data, gdscomp64, is skipped.

Updated Gerber Validation

The split274x was updated.




Version 3.59 3/5/2024

Revise GBRUNION GUI to Permit Auto-computation of Circularize Chord Error

The "Gerber Union" tool has "Arc resolution" and "Chord error" by which circular data is segmented to. It also has "Circular Control" which has its own chord error, by which segmented data is circularized to. This control used to only allow positive nonzero values to be entered.
This restriction was revised to allow for blank or zero value so as to automatically compute an optimal chord error. The computation involves the following:
1. When circularize_chord_error is zero or blank, the minimum nonzero circular aperture diameter is compared against its default value, 2um or its equivalent, and the smaller of the two is used.
2. The minimum arc segmentation chord error allowed is 0.01um or its equivalent.
3. The circularize_chord_error is enforced to be eight times the arc segmentation chord error.

Preserve multiple FontDir aperture file entries

Add ASM50X mode

When this mode is invoked the following occurs:
The "Tools" menu is revised to only show these menu items: Drill, Report, Layer Offset, and Film Merge.
The "Export RS274X" dialog box launched from "File"|"Export" menu item will only support "Output Mode" "Standard".

Programmer's notes: The mode is activated with the existence of asm50x.txt in same executable directory.




Version 3.58 08/30/2023

Fixed Memory Corruption when layer count exceeded 131572

Layer count greater than 131572 caused memory corruption and lead to failure in processing layer data and could not be displayed.

Updated Boolean Components

The Boolean libraries used by GerberUnion have been updated to the most recent version.
Updated the Gerber validation module.




Version 3.57d 07/26/2023

Updated Boolean Components

The Boolean libraries used by GerberUnion have been updated to the most recent version.
Updated the Gerber validation module.




Version 3.57c 09/14/2022

Program improvements

The Boolean libraries have been updated to the most recent version.
Updated the Gerber validation module.
Reduced sleep time of the wrunbat module between program launches.




Version 3.57b 06/21/2022

Updated Boolean Components

The Boolean libraries have been updated to the most recent version. Specifically, the speed of the boolean engine was improved when sizing is used.




Version 3.57a 06/07/2022

Comma in Filename/Path

This problem manifested itself as a problem because comma is used as a delimiter in the job file (a dynamically created resource file) for the actual import of the Gerber data into various modules. If the path or base name contained one or more commas this would/could cause some confusion when reading the job file. This has been fixed.
Note: This was done in v3.57


Updated Boolean Components

The Boolean libraries were updated to the lastest versions.




Version 3.57 06/05/2022

File name with Comma

Fixed a problem when a file name or folder name had a comma. This problem manifested itself as a problem because comma is used as a delimiter in the job file (a dynamically created resource file) for the actual import of the Gerber data into various modules. If the path or base name contained one or more commas this would/could cause some confusion when reading the job file.




Version 3.56a 03/11/2022

Updated Drill2gbr tool

Added tool scanning for drill slots (G85) and Rout (G00) commands.
Added zero inclusion scan for drill slots and rout.
Added support for drill slots (G85) and Rout (G00) commands.

Updated Boolean Engine

New boolean engine with improved speed.




Version 3.56 09/21/2021

Updated to support revisions to GBRUnion and its supporting modules.

Fixed Polygon Assumption

Bug Fix:Assuming Polygon Input is LEONOV when "skip_gdscompact" is invoked. If gdscompact is skipped, the input data comes from gbr2gdxb engine which does not produce LEONOV polygons. This incorrect assumption has now been fixed.

For Input Files with > 1000 Layers, Skip GDSCompact

The GDSCompact routine is skipped over when total Gerber layer count exceeds 1000. Why? Performance Issues?

Job File Reading Speed Improved

The job file read module was significantly sped up for files with large layer counts

Updated Boolean Libraries

The Boolean engine library used by GBRUnion has been updated to the most recent version.

Updated Gerber Validation Module

The module that validates the input Gerber file has been updated.

Gerber Interpreter Updated

The Gerber interpreter module has been updated to handle input files with very large layer counts. Prior to this update, input files wit >48,000 layers caused problems.




Version 3.55 4/13/2021

Fixed interpretation of X multiplication in Gerber Macro

The 'x' multiplication operator was being supported but not the 'X'. This has now been fixed.

Scaling large files over 2GB

Scaling would fail and report error when some of the intermediate files were over 2GB. This has now been fixed.




Version 3.54a 3/3/2021

Software Updates

Boolean and Gerber validation components have been updated.

This version was compiled with VS2015. VS2008 is discontinued.




Version 3.54 2/9/2021

Software Updates

Boolean components were updated.

Gerber validation components were updated.

Merging stage (gdsfilt64.exe) input/output synchronization was fixed on Windows.




Version 3.53h 1/20/2021

Software Updates

Boolean components were updated.

Alter boolean flow for Manhattan sizing -manh and -dirtydata.




Version 3.53g 12/20/2020

Software Updates

Fix for memory corruption when -dirtydata or -manh with non zero sizing was used. When these arguments are encountered, the boolean step is altered. This means that the intended boolean engine command line is processed and altered to become two command lines. The memory corruption occurred when an argument greater than 260 characters was encountered. This can happen when there are a large enough set of Gerber mass parameters, Layer Polarity Dark/Clear switches (i.e. %LPD*% and %LPC*).


Version 3.53f 11/25/2020

Software Updates

Added "-dirtydata" argument and alter boolean flow for manhattan sizing. If -dirtydata is present in gbrunmgr command line or manhattan sizing is found, the following will occur :
(a) Data will be unionized separately in each layer.
(b) It will be sized by 10 percent of target size.
(c) Data will then be unionized sequentially.
(d) It will be sized by target size minus 10 percent of target size.


Version 3.53e 11/4/2020

Software Updates

New boolean flow for Manhattan sizing.

Fix -macro_tol command line parsing.

Update Gerber validation component and boolean components.


Version 3.53d 10/15/2020

Software Updates

New "Mesh Adjust" option in the Preference menu - This will slightly grow apertures to handle mesh hatches with edges that barely touch. Validation must be set in "Preferences" for this to work.

New "-mesh_adjust" argument to the Gerber union manager - This works the same as in the Gbrvu as long as it is not called with "-nosplit".

Gerber union manager fix to -macro_tol argument parsing.

Updated Gerber validation and boolean components.


Version 3.53c 08/5/2020

Software Updates

This version fixes a problem where Gerber Union was failing to translate properly files with spaces in the name.

All GerberUnion settings will get saved when user hit OK in the main dialog.

Removed single thread restriction in embedding level of Gerber Union.


Version 3.53 03/13/2020

Software Updates

This version fixes a problem with the Gerber Union interpreter when two point trace draws done on the same point and failing to draw correctly.

When in query mode, hitting the tab key will advance the query to the next object instead of the next vertex.

Query mode now highlights every object instead of just flashes.

This version fixes a problem with traces drawn with vertex count greater than 65536.

The sliver control was missing in gbrunmgr command line call. This has now been fixed.

Some arc draws caused a crash when arc direction was clockwise. When segmenting such arcs, the absolute value of the difference between the starting and ending angles was required to compute the number of arc segments. This has now been fixed..

Added "Optimize for Viewing" Option in Preference menu - This option makes input file more manageable for the viewer by configuring validation to circularize and reduce the maximum amount of vertices for boundaries to 32K. Note that if circularize is already set, validation will us the user setting for chord error instead of 1um which it is set to use automatically for optimization..

Gerber Union Revisions

Errors and warnings for processes are more informative.

Invoke logging for gerber layer and aperture import.

Call GDSFILT only when there are multiple input gerber files.

Automatically stops execution when error is detected - If any program launched by Gerber Union returns an error code, Gerber Union will terminate itself.


Version 3.52b 11/21/2019

Updated Gerber Union

This version fixes an overlapping issue that occurred when exceeding max points or with manual partitioning.

Enhancements have been added to boolean engine with respect to validation.

Unionization has been improved to be nearly thread independent


Version 3.52a 9/7/2019

Updated Gerber Union

This version includes the latest Gerber union modules.


Version 3.52 8/27/2018

Flexlm node locked licensing

Currently, this licensing scheme fails on terminal servers (remote desktop).
To clarify the failure, any recently updated installation or any recently updated licensed program will now determine whether it is remotely or locally executed and launch a warning message if determined it had been launched remotely.
During installation, the message will appear, and the installation will finish without checking.the license.
During execution of an updated licensed program the message will appear just before reporting a license failure.

Drawing Optimization

Circular data is drawn more quickly at low zoom levels by controlling arc resolution.
When the Display Filter is active, arc data is rendered with a chord error that corresponds to the Display Filter value, i.e. it is independent of the Arc Resolution parameter in File->Gerber Settings...->Arc Resolution.
When the Display Filter is *not* active, arc data is rendered with a chord error that corresponds to two screen pixels.

Gerber Union Revision

Added "Thread Number Control" to main dialog. Allows user to set the maximum number of threads to be used during any process. The default value (blank or 0 value in the "Thread Number Control" text field) corresponds the number of cores.

Added "Engine Arguments..." button to bottom of "Gerber Union Advanced" dialog.
This button launches "Engine Arguments" dialog containing three edit boxes for appending command line arguments:
Manager -- For gbrunmgr engine arguments. This is only used for single file input. Multiple file will not use this.
Boolean -- For boolean engine arguments. This enginie is for unionization.
Gds Compact - SR -- For gdscompact engine arguments. This engine is for optimizing unionization when encountering RS274X (S)tep and (R)epeat mass parameters either greater than one column or one row.


Version 3.51 8/10/2018

Software Updates

File size retrievals were mistakenly done using 32 bit standard functions instead of 64 bit ones. This has now been fixed.

Maximum layer count increased from 65536 to 262144.

Optimization applied to the following modules:

Layer table length is now dynamic - The amount of layers that are displayable is no longer the maximum amount allowed, currently 262144, but rather whatever is reflected in the open file(s) so long as the maximum is not exceeded.

Recent file history is now saved.

Gerber Union doesn't allow layer count to exceed 65536 layers - A warning to this effect is launched instead of the tool.

Removed MDA and MSK file support.

Revisions to Preference Dialog:

Store View Area controls.




Version 3.50a 3/5/2018

Mass Parameter Fix

Split274x components were fixed to handle a problem with a file that included consecutive empty mass parameters.




Version 3.50 2/23/2018

GerberUnion DXF Fix

DXF layer base name was not being passed out. This has now been fixed.

GerberUnion MultiLayer Fix

Failed to locate "rs274xjb64.exe". This has now been fixed.

Update Aperture Highlight

An update message needed to have been sent to this modeless dialog. This has now been fixed.




Version 3.49 1/9/2018

First Windows 64 bit release

All relevant executables and DLL's have been ported to 64 bit Visual Studio 2015.
Safenet USB licensing is no longer supported - Flexid USB keys are now supported for node locked and floating license.
Plotting menu and tool bar buttons have been removed.
MDA format is no longer supported.




Version 3.49 11/27/2017

Arc resolution and Chord error fix

When Gbrunion started using gbrunmgr.exe instead of the integrated viewer model, "gbrvu.exe", the viewer failed to pass on the arcres and arcsag arguments to "gbrunmgr.exe". This has now been fixed..

Multiple consecutive SR Mass Parameter Fix

Multiple consecutive SR Mass Parameter are now handled properly and only the last SR parameter is taken into account.




Version 3.47 5/3/2017

Licensing update

Recompiled DLL for flexl tolerant capability - This allows validation to be retried for communication problem events.

Adapted to use "split274x.dll"

This allows updates to be done to the Gerber preprocessor without having to recompile executables dependent on its code.The current "split274x.dll" reflects the following:
(a) More implied intelligence is applied with respect to G75 codes.
(b) Bug fix for multiply defined dcodes higher than 40000.




Version 3.46a 11/22/2016

Debug Libraries

3.46 was accidentally shipped with debug libraries. This has been fixed.

Multi-layer with same Gerber name but different suffix

GBRUnion's multi-layer mode failed when the files shared the name but different suffixes. i.e A3434.top, A3434.bot, A3434.IN2 ... This only happens when forced validation is off.




Version 3.46 11/20/2016

Pre-processor Macro Tolerance Control

Artwork's Gerber products (viewers, rasterizers and converters) make use of a front end data conditioner called split274x. This routine performs a number of tasks -- one of them is to look for "duplicate" aperture definitions and to merge them. A default tolerance of 1 um is used to determine if two nearly identical apertures should be merged.

One of our customers is now working at such precision that a 1 um "snap" of aperture is too large and has asked us to modify this behavior.

We've implemented this change via a command line on the gbrunmgr command line (as our customer does this operation in batch mode.)

Example

The user wishes to tighten the tolerance for aperture merge from 1 um to 0.1 um. This would be done using the argument -macro_tol:0.00001.

gbrunmgr                                batch manager
 input.gbr                              input file
  -out:out.gds                          output file
   -wdir:c:\temp                        working directory
    -outputyype:gds_stream              output format
     -arcres:9                          arc resolution
       -macro_tol:0.00001               sets tolerance for macro merging to 0.00001  

New Command Line for Partitioning

Replaced "-no_part" argument with -single_part argument in GBRUNION.

The "-single_part" argument forces the compaction and Boolean routines to run in single threaded mode (multi-threading is the reason that output data appears to be sliced - the slices are where the data has been divided into separate threads.)

The -no_joinpart command line argument is removed.


Flexlm Libraries updated

Updated Flexlm to version 11.13.1.2.


Circularization Blocked for GDSII output

GDSII output in GerberUnion is safe guarded against circularize option.


Arc Rendering Bug Fixed

Fixed a problem where arc traces with radii greater than width were segmented incorrectly.


Version 3.45c 10/7/2016

Gerber Union Updates

When a butterfly figure interacts with something else it created a self touching polygon which was problematic for subsequent boolean operations.

After union, some polygons with touching holes had very acute angles touching butting lines mistakenly, causing gaps in the data. This has been fixed.

The text file passed to gbrunmgr's (-polywin:file command line option)" now accepts comma and tab characters in addition to space characters as delimiters for xy coordinates.


Version 3.45a 8/15/2016 GBRUNION Manager Unit Problem

Unit values on the command line carrying an exponent in their expression (for example 1.0e-005) were not handled properly. This has now been fixed.


Version 3.45b 9/22/2016 GBRUNION 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 3.45a 8/15/2016 GBRUNION Manager Unit Problem

Unit values on the command line carrying an exponent in their expression (for example 1.0e-005) were not handled properly. This has now been fixed.


Version 3.45 8/9/2016 Fixed Forced Validation Option

File extensions - Files with same base name and different extensions were being treated as the same file. This has now been fixed.
Gbrutil Launches - Since this application launched Gbrvu with files not containing a file extension, this condition also presented a problem manifested by a program crash. This has now been fixed.

GBRUNION 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 3.44a 6/21/2016 Updated License Modules

Floating licensing scheme has been fixed for the following features:
Gerber Union (boolw32f.exe, bool64f.exe, gbrcomp.exe, gbrcomp64.exe)
Rs274x/Export (pentax.exe)

The wrong libraries were linked into the components mentioned above. This has now been fixed.
The problem manifested itself on certain license servers depending on the version of that flexlm server.




Version 3.44 6/17/2016 Updated License Modules

Updated the licensing modules to address customer reported issues.




Version 3.43 6/14/2016 Added Force Validation Option

"Import Settings" group has "Force Validation" check box.
If option is On, it will always occur. If off, it will run under the following condition:

  • High precision RS274X FS statements.
  • Multiply defined apertures.
  • Over 5000 ADD mass parameters specified or one ADD mass parameter has dcode greater than 5000
  • Gerber Union Fix

    Viewer integrated code with respect to Gerber Union was switched to the use of the Gerber Union executable, gbrunmgr.exe, in v3.42.
    This transition was incomplete because it did not account for the "Transformation Settings" in the "Advanced" dialog of the "Gerber Union" tool. This has now been fixed.

    Gerber Union Revisions

    Gerber Union executable displays "Usage" dialog box if simply clicked on.

    Incorrect command line arguments are detected and reported in in the new "Usage" dialog box.

    Redundant "*_cat.log" files are removed.

    Added -xform:xform_parms argument to Gerber Union executable.
    This sets transformation settings (comma separated).
    xform_parms is rotation_parms,mirror_parms,scale_parms,offset_parms

    rotation_parms are anchor_x,anchor_y,rotation
    mirror_parms are mirror_x,mirror_y
    scale_parms are scale_x,scale_y
    offset_parms>are offset_x,offset_y


    Version 3.42 4/20/2016 Revision to Gerber PreProcessor

    This is now applied all the time instead of conditionally as indicated below:

  • Format specified was too high.
  • Multiply defined apertures were detected.
  • High dcode value was detected.

  • 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.
    Robustness has been improved by adding internal checks between steps.


    Version 3.41 1/13/2016 Boolean Sizing Bug

    Data was being dropped when sizing was used on a customer Gerber file. This has now been fixed.
    Convex partitioning for each polygon required using double comparison rather than rounded integer comparisons.

    Gerber Union Circularization speed improved

    Gerber Union circularization speed was improved by applying multithreading, and optimizing self touching check.

    Arc Resolution in Registry

    Arc Resolution is now saved in the registry.


    GBRVU version 3.40 11/20/2015 Faster Boolean

    Optimized function for disjointing self touching polygons to work faster.

    Flexibility in Join Partition of Gerber Union

    This control used to be tied to rectangular partitioning and auto partitioning both being on. This restriction has now been removed. To use it in Gbrvu, just set "Join Partition" check box in "Advanced" dialog of Gerber Union" dialog. To set it in gbrunmgr.exe, just pass "-union" argument.


    GBRVU version 3.39a 11/4/2015 Gerber Union Sizing Issue

    Fixed problem with missing trace after sizing in Gerber Union.

    New Licensing

    Adopted new Flexlm license model, and no more support for disk serial number.


    GBRVU version 3.39 10/23/2015 Fix Gerber Interpertation of Thermals

    Gerber union fix to the way the software converted thermals.


    GBRVU version 3.38 8/17/2015 Fix Gerber Interpertation

    Handle empty SR blocks.
    Checks Gerber data to see if format is X.Y, that X and Y are enough for that data. Before, everything that would depend on that format had scaling problems that would result in an overflow.

    Protect Gerber Union Window Extents Against Unit Display Changes

    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

    GBRVU version 3.37 7/9/2015 Gerber Union Fix

    Reduce ADD mass parameters to a minimum amount regardless of the presence or absence of AM mass parameters.


    GBRVU version 3.36b 6/18/2015 Gerber 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.


    GBRVU version 3.36a 6/8/2015 Gerber Union Manager Updates

    Max points control fixed.
    Folded polygon was dropped but now repaired.
    Sized polygon was dropped. Issue was fixed.


    GBRVU version 3.36 4/22/2015 Reduce 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.

    The reduction is applied for files with:
    High formats.
    Multiply defined apertures.
    Over 5000 ADD mass parameters specified or one ADD mass parameter which has dcode greater than 5000.

    Improve Circularizing

    Improve Circularizing in Gerber Union module.


    GBRVU version 3.35 1/10/2015 Drawing Optimizations

    Extents of SR cells and layers are checked before drawing anything in current view port.
    Display filter control has been added to toolbar. The default is on with 5 pixels.
    Cleaned up unnecessary message peeking which was slowing down drawing.

    Draw Interrupt Improvements

    Draw interrupt is more responsive for the following events: Pan middle button down
    Mouse wheel up or down
    Zoom (Home, Window, In, Out)
    Pan
    Info ( vertex query, window query, measure)
    Redraw
    Fill/Outline toggle
    View (Last or Next)
    Draw interrupt (Toolbar stop or Escape key)

    Other Enhancements

    Zoom Factor capabilities improved 100x.
    Status messages added to display import and loading stages.
    CTRL (Left, Right, Down, Up) arrow pans view port one page.

    Gerber Union Updates

    A 64 bit Gerber Union manager program was created to support large Gerber files. It's called gbrunmgr64.exe

    Both 64 and 32 bit Gerber Union manager programs can run 64 bit Gerber interpretations (gbr2gdxb64.exe) and 64 bit SR optimizations (gdscompact64.exe) in addition to the 64 bit unionization (boolw64f.exe) it already uses. On a 32 bit windows OS, the 3 32 bit counterparts, gbnr2gdxb.exe, gdscompact.exe, and boolw32f.exe are used.

    Added "-skip_gdscompact" argument. This is used to skip SR optimizations.


    GBRVU version 3.34a 11/12/2014 Extract Flash Center

    Fixed a problem with the aperture diameters output of the new Extract Flash Center.


    GBRVU version 3.34 11/11/2014 New Extract Flash Center

    New option in the Tools menu to extract flash center to a text file based on Advantools Hefei requirements.


    GBRVU version 3.33 8/11/2014 Revised Gerber Union to support rectangular array mode

    This mode automatically partitions input into boxed areas instead of stripes. This auto partitioning mode will be ignored and striped mode will be used instead for the following conditions:

  • Circular boolean is requested
  • embedding level is requested
  • Negative sizing is requested

  • The Gbrvu Gerber Union GUI has this option in its "Advanced" dialog box. It works only with auto partitioning and is labeled "Rect Array".
    The "Striped" option to the left of it is for the older striped auto partitioning mode.
    The "gbrunmgr.exe" engine activates this mode with the argument "-autopartrcarray".

    Various Upgrades

  • Allows up to 8191 points for GDSII or EGS in Gerber Union output.
  • Allows working directories with space in the name.

  • GBRVU version 3.32 5/11/2014 Various Upgrades

  • Add support for use of 64 bit boolean engine in Gerber Union. Detection is automatic.
  • Support for up to 65536 layers instead of 4096
  • Set chord error to be 1/3 of circularize chord error when circularize is on.

  • GBRVU version 3.31c 4/16/2014 Polygon Dropped

    Complex polygon with over 250000 vertices was dropped during the union operation. This has been fixed.


    GBRVU version 3.31b 3/26/2014 Polygon Dropped

    Complex polygon was dropped during union operation under certain banding condition. This has been fixed.


    GBRVU version 3.31a 1/14/2014 Log File

    Polygons dropped during repairs are flagged as errors if polygon is considered suspect.

    XY coordinates for warning/error messages are now specified in floating point values rather than integer based.


    GBRVU version 3.31 1/6/2014 Number 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


    GBRVU version 3.30 11/25/2013 Internal layer support

    This version supports up to 4096 internal layers in the Gerber file.


    GBRVU version 3.29 10/15/2013 Window ghosting

    This version disables window ghosting which appears in Windows Vista and above.
    Before this, drawing was being interrupted by Windows Vista and above. Larger Gerber files could not be drawn to completion.


    GBRVU version 3.23a October 15,2012 Embedding level with sizing bug

    If intersecting polygons remained after positive sizing was applied, embedding level grouping could erroneously scratch away certain data. This has now been fixed by applying a second unionization if embedding level is selected along with positive sizing.


    GBRVU version 3.23 October 5,2012 Arc Issues

    The shell has been updated to only allow positive nonzero chord error.
    Gbr Union Manager Engine has been updated to set arc resolution to 45.0 when none is specified and chord error is nonzero.


    GBRVU version 3.21a June 22,2012 Gerber Union bug

    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.


    GBRVU version 3.21 June 20,2012 Gerber 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.


    GBRVU version 3.18, November 30,2011 New feature - Flash info to text file

    This tool is launched from "Tools | Collect Flashes..." menu item.  It
    allows a user to select any set of flashes and save the selection to a
    specified output text file.
    
    The output format is:
    
        Type    Format
        ----    ------
        Round   X Y Radius
        Custom  Custom X Y 0 0
        Other   Type X Y Width Height
    
    The method for selections are:
    
        Type     Selects
        ----     -------
        Click    First flash where mouse is clicked
        Window   All flashes contained in specified window
        All      All flashes loaded in viewer
    
    The type of selectable flashes are:
    
        Type     Description
        ----     -----------
        Round    Rs274X/ACS Round
        Donut    Rs274X/ACS Donut
        Square   Rs274X/ACS Square
        Rect     Rs274X/ACS Rectangle
        Thermal  ACS Thermal
        Target   ACS Target
        Octagon  ACS Octagon
        Oblong   Rs274X/ACS Oblong
        Thmsq    ACS Thermal Square
        Custom   Rs274X Macro
        Any      Any Type
    
    The mode of operations will add or remove flashes from the collection.
    


    GBRVU version 3.16h, March 30,2011 Embedding level

    This fixes problem with Gbrunion RS274X embedding level output. The boolean engine was reporting an incorrect number of layer counts. This condition has existed since 10/15/09. It has now been fixed.


    GBRVU version 3.16e, January 10,2011 Gerber Union fix

    Gerber Union was not able to handle a Gerber file containing layer polarity changes numbering greater than 239. This happened during the Gerber interpretation. This has now been fixed.


    GBRVU version 3.16b, November 22,2010 Regions with arcs

    This bug was introduced in Nov 8 for changes done in Gbr2DXF involving closing Gerber regions that were not explicitly closed. The closing was applied when it was not necessary. This has now been fixed.


    GBRVU version 3.16, November 17,2010 3.6 Format overflow.

    Overflow problems were occurring with a MM file having 3.6 format. The file was scaled down to 2.6 but still generated overflow problems because the difference in minimum and maximum extents caused an overflow.
    The solution was to scale the data to 3.5 format if the extent overflow condition is detected.


    GBRVU version 3.13b, February 17,2010 Dropped data.

    In cases where an input has more than one layer polarity, the XOR stage requires that such input be unionized. The problem was that the unionization stage was passing bad data that was not validated and subsequently dropped. This has now been fixed.


    GBRVU version 3.13, October 19,2009 Increase number of layers supported.

    Raised support for 2048 layers.

    Enhancements with respect to Netex-g Labels.

    Support netexg padstack label display.
    Support netexg filtering of labels displayed.
    Handle inefficiencies for removing large groups of labels.


    GBRVU version 3.12f, September 8,2009 Gerber file with missing LPD command.

    GBRVU had problems loading multiple Gerber files which had missing internal LPD commands. The software was improved to support that.


    GBRVU version 3.12d, June 9,2009 GBRUNION Command line problem.

    The Gbrunion command line engine was having problems interpreting Gerber data w.r.t. closed regions when encountering format statements in excess of 8 digits. This has now been fixed.

    GBRUNION Circularize bug

    Main chord error control was not used when circularize was checked but disabled. This has now been fixed.


    GBRVU version 3.12c, May 1,2009 GBRUNION Circularize bug

    Output that is set to be scaled or to be a unit other than the input was not scaling the circularize chord error. The result was that the amount of scaled data converted to circular data was different than data without scaling. This has now been fixed.

    GBRUNION DXF output bug with long names

    For DXF output, the file base names are used for layer names. Since long layer names present a problem in some DXF versions, the layer names that violate are truncated into a unique layer names.


    GBRVU version 3.12B, February 23,2009 GBRVU Edge Rasterizer - Droplet Edit

    The wrong droplet was moved when another droplet was selected during editing. This has now been fixed.

    Added "Tools | Layer Offset..." Menu Item

    This launches the "Layer Offset" dialog box which allows offsetting any set of files opened from their original position.

    Zoom Window New Functionality

    If the window formed is done dragging the mouse right to left, the viewer will zoom out. Otherwise, it will work as before.

    Added "View | Zoom To XY Coord..." Menu Item

    This launches the "View Area" dialog box which allows a user to either zoom into a specified window or specify a center - width - height set of values to zoom into. A virtual window marker or cross hair marker will also appear, if the user requests it.


    GBRVU version 3.12A, February 9,2009 GBRVU Edge Rasterizer Enhancement

    Added "Min Void Area" Settings - this allows the user to define a minimum value so voids will be smaller than this value.


    GBRVU version 3.12, January 28,2009 Added Reverse Vertex Info Tracing

    When tracing an object, 't' will trace forward and 'T' will trace backwards.

    Edge Rasterizer - Edit Droplet Location dialog box revised

    Hitting any directional button will immediately move the selected droplet.
    Hitting "Cancel" will restore it to its original position when it was selected.
    Hitting "OK" will leave the droplet in its current position.

    Edge Rasterizer bug fix

    If an SR mass parameter is in a layer polarity not containing data, it had no effect on the subsequent data. This has now been fixed.



    GBRVU version 3.11a, November 4,2008 Unit info in Info

    Added unit information to Info dialog.

    GBRUNION Rotation

    Allow any rotation in Gerber Union as oppose to only 0,90,180,270.

    Added View | Unit Display

    This launches the "Unit Display" dialog box which is already accessible from the "Preferences" dialog box. Alt U" MENU ITEM.



    GBRVU version 3.11, October 31,2008 Bug fix to Circular Boolean

    The circular boolean engine has been updated to handle a bug with respect to missing polygons caused by certain intersections of arcs and straight line edges. Polygons were missing because of this. It is now fixed.

    Transformation Settings

    Added "Transformation Settings" to "Advanced" settings.
    These settings provide control of:
    Anchor Point -- point to mirror and rotate about.
    Rotation -- 0, 90, 180, and 270 degrees counter clockwise
    Mirror -- (X ==> mirrors across Anchor Point Y),
    (Y ==> mirrors across Anchor Point X)
    (XY ==> mirrors both X and Y)

    Scale -- Scale in X and Y
    Offset -- Translete data by (X,Y) offset

    When enabled the following controls are disabled:
    -In Gbrunion main dialog
    (a) "Output Scale" edit box
    (b) "Use Circular Boolean" check box

    -In Gbrunion Advanced dialog
    (a) "Placement" controls

    Pipe Communication to extract info text from GBRVU

    gbrvu_pipe_info_v100doc.zip



    GBRVU version 3.10h, October 20,2008 GBRUNION REVISION

    Added "Overlap" option to "Advanced" settings. When active, this option overlaps adjacent polygons along their butting edges by the value specified in the GUI. If a hole is smaller than the overlap value, then polygons will be used to cover the butting edges intersecting these holes.

    Boolean Engine Update

    Added handling for multiply defined apertures in a given Gerber file.



    GBRVU version 3.10c, August 7,2008 Bug fix for Gerber Union crash

    The boolean engine crashed on a PADS file. This has now been fixed.



    GBRVU version 3.10b, June 23,2008 New Circularize option for better Circular output

    Add Circularize check box and chord error controls to convert straight line segments into arcs if possible.
    That also included disabling the main chord error control and use only arc resolution for Circularize mode.



    GBRVU version 3.10a, April 24,2008 Empty layers with SR

    GBRVU can now handle empty layers beginning with an SR mass parameter.

    Small arcs

    GBRVU converts arcs with end point and radius length less than 3 grid points into lines.

    Placement control for Gerber Union

    Added placement control for Gerber Union. Three types of placement controls have been added:

  • Center about (0,0) -- Center of output is at (0,0).
  • First Quadrant -- Lower left of output is at (0,0) : Margin X and Y values can further offset the data.
  • Manual -- Output is offset by X and Y values.

    Output precision

    Force Gerber Union engine to output data with target grid precision of Gerber output.
    This was done to prevent outputting illegal polygons generated from resulting grid snapping.



    GBRVU version 3.09f, January 16,2008 GBRVU Installation problem with hardware key

    GBRVU had an installation problem when using the Sentinel key option. This was fixed.



    GBRVU version 3.09e, January 12,2008 Gerber Union DXF error in circular mode

    Gerber union DXF output in circular mode had a .1 mil error in the position of an arc under some conditions. Problem reported by Hortek and was fixed.



    GBRVU version 3.09d, December 12,2007 Change to Edge Rasterizer GUI

    Add dialog controls displaying the "Notch Depth" and "Pitch Bounds" in
    relation to the current raster settings.  These controls are updated
    for the following events:
      (1) When the dialog box comes up
      (2) When the nominal pitch is toggled between the unit and percent
          input
      (3) When the Units are changed in the GUI
      (4) When the "Update Display" button is hit
    


    GBRVU version 3.09c, October 5,2007 GBRUNION bug fix for window selection

    The problem occurred when the working directory had spaces in it. In this condition and when window(s) have been selected, Gerber Union would fail to generate output.

    Gerber Drill output crash

    A division by zero caused this when the format was 3.3 or less.

    Change to Edge Rasterizer GUI

    Add thread number and striping controls.


    GBRVU version 3.09, July 2,2007 Enhanced arc resolution

    Gerber view now supports enhanced arc resolution for smoother lines and arc rendering.

    Measurement options

    Gerber view now supports measurement display in inches, um, and mm

    Edge Resterizer new features

    Several new features in the Edge Rasterizer program.
    With an option to set droplets diameter, pitch and dpi.
    With an option to set the units in inches, um, and mm.
    With an option to produce just edge pixels or edge and interior pixels.
    Converts Gerber to TIFF.

    Product version components includes:
    Multiple input files selection.
    Option to set the droplets diameter, pitch and DPI.
    User defined input data window.
    User defined transformation.
    Interior droplet filling.
    TIFF packbits monochrome output.
    Multi-Threaded Boolean supporting up to 4 CPU cores.



    GBRVU version 3.08e, June 12,2007 Safenet licensing

    Gerber view now support USB keys.

    Edge Resterizer GUI

    Several new features in the Edge Rasterizer program.
    Add Advanced settings.
    Change fill mode controls. (i.e. removed multiple sizing and changed scan line label to filled)
    Add "Specify Window" dialog controls to window settings.
    Add output type controls for Gerber or Tiff output.
    Hot key launches Unit Display dialog.
    "Offset" field label is changed to "Additional Offset".
    Unit display now affects measurement information.

    Use of Registry

    Gerber view now uses the registry to store defaults instead of the gbrvu.ini file.


    GBRVU version 3.07d, February 21,2007 Sizing problem in Gerber Union

    Gerber Union with circular output had a problem with sizing. This has now been fixed.


    GBRVU version 3.07c, February 12,2007 Display bug when viewing small flashes

    At certain zoom levels, a flash is represented as a single pixel if it is too small to draw. The bug was that this was being done for other flashes. This has now been fixed.

    Error during Gerber Union with circular DXF

    Warning messages were appearing in Circular Gbrunion that were not appearing in standard Gbrunion. This has been fixed.


    GBRVU version 3.07a, January 27,2007 Viewing labels in GBRVU from NETEX-G
    A Bug was fixed for net/node labeling when added from NETEX-G's 
    Labels dialog.  Program used to crash.  This has now been fixed.
    
    Label viewing/editing has been designed to dominate over window
    selections.  This implies two things:
    (a) The Label dialog OK button saves label changes and window
        selections instead of the "Select" button normally found in
        the window selection tool bar of the viewer.
    (b) The auto on setting for rectangular window selection is not
        done for label viewing.
    

    GBRVU version 3.07, January 20,2007 Boolean crash during multiple Gerber files with multiple aperture definition

    Standard Boolean program crash was handled with respect to Delphi problem files set. This has now been fixed.

    Circular boolean problem with Hortek files

    Circular boolean problems with respect to the Hortek files was fixed. The problems were:
    (a) Program errors appeared.
    (b) Data was dropped
    (c) Polylines that were found open were closed.

    ADD Tools|GBR_RIP MENU ITEM

    This launches a dialog box which controls GBR_RIP from the viewer..

    BUG FIX TO NETEXG WINDOW SELECTION

    A program crash occurred from changes introduced in v3.06c having to do with setting rectangular selection on initially whenever the selection tool bar appears. This has now been fixed.

    REVISION TO PREFERENCES FILE EXTENSION HANDLING

    File extensions separated by a comma were not recognized. The program has been revised to accept commas as well as semicolons.


    GBRVU version 3.06e, December 12,2006 Consecutive RS274X SR mass parameter problem

    Consecutive RS274X SR mass parameters with no draw data in between caused the viewer to display data without arraying it when called for. This has now been fixed.

    Memory corruption with Samsung files

    In attempts to view more than one of the files at the same time, the large number of internal layers in combination with aperture conflicts encountered caused memory corruptions or data truncations in three areas:
    (a) Layer Reordering
    (b) Aperture Data Collection
    (c) RS274X Importing
    These have all been handled.

    Plotting problem

    A problem was discovered in plotting traces with rectangular apertures found in aperture conflicts. Traces were drawn incorrectly because of the problem. This has now been fixed.


    GBRVU version 3.06d, December 6,2006 Gerber Union bug in Circular mode

    This image is a fix for Circular Gbrunion with respect to Hortek problem file. It had problems dealing with some overlapping flashes. This has now been fixed..


    GBRVU version 3.06b, October 18,2006 Loading external aperture file

    Users can now load or edit and external aperture file from the File|Aperture sub menu.

    Edit/Copy Window

    Edit/Copy Window mouse event handling same as zoom window.

    Plot Layers Separately

    There was a bug in the extents calculation when using the plot layer separately with window option.

    Layer View mode

    Fixed layer view mode.

    Layer Table position

    Layer table position is now saved from one session to another.


    GBRVU version 3.06, August 15,2006

    Major changes and enhancements were made to GBRVU and GBRUnion in this release.

    File Report Data

    added the following information to the file report: Zero Suppression, data mode (absolute/incremental), circular interpolation and data extents (Xmin,Ymin Xmax,Ymax)

    Layer Table Dialog Ehancements

    Removed buttons to job and aperture file dialogs.

    added a button to re-order the layers. This opens a dialog enabling a user to delete layers, move up, move down and reverse order. Very helpful when the order of the layers viewed is important to what you can see.

    Layer Coloring

    Added a view mode control (in the layer dialog) with the following options:

    Toolbar Revision

    Window selection controls now appear in a new toolbar below the main one to allow visibility of all the controls. Previously the window selection toolbars were so far to the right that they could not be viewed on many screens.

    Automatic redraw after changing status bar or toolbars to correctly align virtual draws with data.

    GBRUNION Enhancements

    Advanced Options Dialog/Window

    Created an Advanced dialog box that adds additional options (these were moved from the main GBRUnion dialog because they are set less often.)

    Circular Boolean Advanced Dialog

    The following controls were moved or added to circular boolean advanced:

    Remember Last Output Directory

    GBRUnion now remembers the last output directory specified by the user and will default to that if subsequent union operations are done. [requested by Steve DB]

    Enable "Layer Control" radio buttons for multiple file input.
    Extents Selection Issue

    Fixed a problem involving selection windows. After selections were made, a user could not revert to data extents during the same session.

    Circular Boolean Partition and Join

    Partitioning for circular boolean with embedding level is now allowed. Join partitioning for circular boolean now allowed.

    Output Grid has been disabled for circular boolean

    Union Step and Repeat Optimization

    For any Gerber files containing relevant SR commands, unionization will be done on the data to be arrayed first. This should greatly speed up the unionization of such files.

    DXF Circular Disabled

    DXF circular boolean has been currently disabled.

    Check Union Output File Name

    Disallows output filename being the same as any input Gerber file.

    Fix for High Format Gerber Files
    When unionizing a file, GBRUnion typically outputs a Gerber file with more precision than the input file in order to reduce noise due to the boolean. In the case of a high precision input file (e.g. 3.5 BUG FIX TO READING HIGH FORMAT GERBER FILE WITH NO APERTURES DEFINED (GBRUNION RELATED - KGK PROBLEM) This condition caused the viewer to fail to rewrite the Gerber file into one with a lower format specification acceptable to the viewer. Consequently, Gbrunion would fail because of this. This has now been fixed.
    GBRVU version 3.05, May 8,2006 Maximum points in Circular Gerber Union

    Added support for maximum points in Circular Gerber Union.

    Image Reversal in Gerber Union

    Added reversal option in Gerber Union to generate an inverse image.

    Data partitioning support in Gerber Union

    Added data partitioning support, for circular boolean, consistent with standard GBRUNION.

    Window selection in Gerber Union

    Added window selection support, for circular boolean, consistent with standard GBRUNION.


    GBRVU version 3.04, April 17,2006 Sizing in Circular Gerber Union

    Problem passing sizing value to circular boolean was fixed.


    GBRVU version 3.03, April 14,2006 RS274D support for Circular Gerber Union

    Added support for RS274D in circular union.

    Bug fix for dropped data in Circular Gerber Union

    Fixed a bug which caused data to be dropped in Circular Gerber Union.

    DXF POLYLINE support in Circular Gerber Union

    Added 0 width closed pline support in circular union with DXF output.


    GBRVU version 3.02a, March 28,2006 Add Circular Union for DXF and Gerber output

    GBRUNION users can now export DXF and Gerber data with true arcs as oppose to vectored arcs.


    GBRVU version 3.02, March 8,2006 ADD PLOT PREVIEW CAPABILITY

    You can now preview the plot before sending it to the printer.
    For file output, changes were made that are curently different from legacy version:
    (1)Cancel from "Save As" dialog will not continue to plot
    (2)Default directory in "Save As" dialog is output directory.

    BUG FIX TO WHITE BACK GROUND

    There was a state problem dealing with files that did not end with a scratch layer. This has now been fixed.

    Keyboard shortcuts menu items which launches floating window
    Fixed tool bar color button
    
    Removed CTRL KEY DOWN functionality for selection.
    
    
    THE FOLLOWING EVENTS HAVE BEEN CHANGED TO...
         L. mouse down - drag - release to complete event:
    
    
    
         (a) Zoom Window
         (b) Pan
         (c) Query Window
         (d) Rectangular Selection
    
    
    
    
    The following events have been changed to use L. mouse click - move -
    L. mouse click
         to complete event:
    
         (a) Measure - (Note that measure currently does not work with grid or
    object snapping)
         (b) Polygonal Selection
    
    
    
    NAVIGATING WHILE IN SELECTION MODE
        Panning:
          middle mouse ,space bar, and ctrl key
    
        Zooming:
           - add < ctrl + >, < ctrl - >
    

    GBRVU version 3.00

    First release of our new GBRVU.

    Show new tool bar

    Theres are four different groups of tool bar buttons:

    1. Main for layer, fill/outline, redraw, and stop
    2. View for ,home view, zoom window, zoom in, zoom out, view last, and view next
    3. Info for point query, window, query, measure, and highlight aperture
    4. Plot for plot screen, and plot window.

    Add "Apply" Button to layer dialog

    This button allows user to see layer attribute changes take affect without having to dismiss the layer dialog.

    Allow file Drag & Drop

    Any number of Gerber (RS274D or RS274X) files can be dragged into the viewer so as to be displayed.

    Auto detect input Gerber files for Auto Import

    Gerber files are now automatically scanned to detect whether they are RS274X or RS274D to allow window file associations of Gerber files with the viewer.

    Modified GBRUNION window selection

    There are now two choices for data selection:

    1. Use data extents
    2. Use Window selections
    If the second one is selected, the user can hit the button labeled "Set Window Selection(s)" and a new set of tool bar buttons appears for window selection. To use it do the following:
    1. Select one of the window buttons, rectangular or polygonal,
    2. Select one of the modes, standard, additive, or subtractive to respectively define windows, modify current windows by unionizing current selection to other window(s), and subtracting current selection from other window(s)
    3. Hold ctrl button down while defining a given window and use click move click mouse actions to do it. To finish defining a polygon, click on the last point twice.
    4. Once all windows are defined hit finish button to complete selection.

    Bug fix in RS274X output of GBRUNION

    Single layer output failed to generate output. This has now been fixed.

    Excess of 255 layers

    If the number of files is around 255, the viewer crashed when trying to write to the job. This has now been fixed.


    v2.72 08/28/2005 Support for large number of input files.

    The size of an internal buffer was reducing the number of files displayed to something less than the actual number of input files. This has been fixed by increasing the buffer size.


    v2.71 08/11/2005 Remove filtering of consecutive equal drills

    Equal drills are not removed anymore.

    GBRVU crashes when loading many layers from the command line

    GBRVU crashed when it was asked to load 24 layers from NETEX-G. This has been fixed.

    Bug when generating drill files with space in the name

    GBRVU complained when it generated drill files with spaces in the name. This has been fixed.


    v2.70 07/12/2005 Reversal option for GBRUNION

    Added reveresal option in Gerber Union along with XY margin settings for the frame.


    v2.69 05/27/2005 Boolean Engine Updated

    This release of GBRUnion (which lives inside of the GBRVU release) uses a new boolean engine that can "repair" certain illegal polygons. This means that the likelihood that a polygon is dropped in the output because the boolean engine deemed it to be illegal (typically a small self-intersecting loop) is reduced or eliminated.

    Path to Boundary Conversion Fix

    fixed a bug when converting a short path (one where the length is less than the width) turn into a boundary. The old routine might generate an illegal polygon which would be dropped.


    v2.67c 4/14/2005 License Bug in Pentax Export Corrected

    The pentax export engine was updated to support flexlm node lock licensing. [Reported by Midas Vision Systems.]

    Improved Boolean (GBRUnion)

    The boolean engine has been updated for improvement of polygon repairing during unionization i.e. small errors in self intersection that would have previously been dropped in the output are now repaired and output.

    RTL Plot Driver Enhancement

    Added support for full page format in RTL -- forces the bitmap dimensions to be exactly the same as the requested page size. The type of RTL output to choose for this feature is one of the following:

    HP650C Color Std FP
    HP650C Color Fast Enhanced FP
    HP750C Color FP

    this is a spinoff from updates to GDSPLOT requested by Hitachi.


    v2.67 2/15/2005 Scan for Multiple Dcodes in one Layer

    The viewer cannot handle dcodes defined in the same layer so it rewrites the Gerber file(s) with the remapping of repeated dcodes into the next available ones.

    GBRUNION Arc res and Arc sag issue

    Arc resolution and arc sag values were always set to 9 and 0 respectively when multiply defined apertures were encountered. This has now been fixed.


    v2.66d 2/2/2005 Custom file generation for macros containing variables.

    The problem occurred when a G75 or G74 gcode was encountered. There was an internal memory buffer that was overwritten after the gcode was read which reased the x value specified in the aperture. This has now been fixed.

    File Export bug fix

    Boolean engine was fixed for "File | Export" menu item. When the option was set to link zero width polylines into boundaries, lines that were not linkable were dropped.


    v2.66c 12/4/2004 Format of Gerber File.

    The viewer and the Gerber Union modules now support extended format statements such as 3.6 and 4.6.

    Working Directory

    Force working directory to be the same as the job file when passed as an argument.


    v2.66a 10/17/2004 GBRUNION - De-Embedding level.

    The De-Embedding level routine had a bug when running on a computer with dual CPU. It had been fixed.

    GBRUnion handles illegal Gerber polygons

    We have noticed that in some customer files, polygons were created incorrectly - small bow ties were created in points were arcs connect to a line. That would create illegal boundaries in GDSII or EGS. The program is now smart enough to remove such small errors.


    v2.66 10/08/2004 Extents Calculation Corrected in GBRUnion.

    The automatic extent calculation in GBRUnion did not account the aperture width. This could have caused data on the very edge of the design to be clipped. This has been fixed.

    GBRUnion Output fixed for "Islands"

    Previous versions did not properly output Gerber if the "cutline" option was not checked. This version now supports "paint" and "scratch" (also referred to as LPD/LPC in RS274X).

    Limitation - only one Gerber File can be processed at a time.

    If the cut line button is not checked, the GBRUnion will output a multi-layer RS274X file (assuming this needed) with as many LPD/LPC layers as required to properly create the islands.


    v2.65 08/04/2004 Bug Fix - No more crash on Gerber files with overspecified size/precision.

    GBRVU has a maximum of 8 places dynamic range. Some users were creating Gerber files with formats such as 3.6 or 4.5 which caused GBRVU to behave in an unpredictable fashion. GBRVU now will "clip" the input data using the following rules.

    If the input Gerber file is specified as M.N then it will be treated as if it were X.Y by clipping.

    Step 1

    
     if ((N < 1) || (N > 6))   then  Y = 6
    
                               else  Y = N
    
    

    Step 2

    
     if ((M + Y) > 8 )         then  X = 8 - Y
    
                               else  X = M
    
    

    Example M.N = 4.5

    Step 1: Since N is neither less than 1 nor greater than 6, Y = N = 5
    
    M+Y= 4+5 = 9 which is greater than 8; hence X = 8-5 = 3
    
    the data is clipped to 3.5
    
    Improved Smoothing in GBRUnion

    GBRUnion smoothing now has the ability to remove multiple co-linear points when they vary by less than 10% of the smoothing value. This was added in response to a file where the area fill strokes leaked out very slightly beyond the outline stroke resulting in a tiny wave in the outline. The field analyzer mesh circuitry picked up on this tiny wave and generated many more triangles than needed. [reported by Corning-Frequency DE.]


    v2.64 06/03/2004 GBRUNION Fix - Multiple Dcode problem

    Polygon apertures were missing on output whenever multiply defined dcodes were encountered..

    GBRUNION Fix - Small arcs

    Under unique conditions, some traces composed of arcs were being dropped.


    v2.63c 09/16/2003 Memory Management problem

    Memory leak occurred when multiply defined apertures were detected and there was a large enough number of Gerber files to unionize at once. This has now been fixed.


    v2.62 06/16/2003 (RELEASE) Memory Management problem

    A program crash occurred whenever a file set was opened containing many internal layers and having multiply defined apertures. This has now been fixed.


    v2.61 06/06/2003 (RELEASE) Interface to NETEX-G

    The ability to define nets and nodes interactively has been added in order to make this process faster for NETEX-G.

    Polygonal Selection

    A clipping window can now be defined (using a series of mouse clicks) that is in the shape of a polygon.

    Display Fix

    When multiple Gerber files that each have paint and scratch internal layers were displayed, the scratch layers from one file interacted with the other files. Fixed.


    v2.60 03/26/2003 (RELEASE) combined patches 2.59d and c.

    v2.59d 03/24/2003 (PATCH) DXF Layer Naming

    DXF Layer names were generated using the prefix_suffix. Motorola requested not to use the suffix i.e. input file called test24.gbr would produce a layer called test24_gbr but now produces only test24.


    v2.59c 03/21/2003 (PATCH) Rendering of Area Fills Fixed

    Areas defined with arc and trace combinations were closed improperly. There is currently no closing attempted on such combinations.

    Flexlm License Support Added

    Added support for the Flexlm license manager to GBRVU and all submodules including GBRUnion.

    GBRUnion Multiple Layer Support

    The way that multi-layer union works has been modified. If mutliple input files are supplied and union is requested (multi-layer) then the output file for DXF, EGS and GDSII stream will contain a union of each file in a single output layer. Previous to this, all input files were merged into one output. [Requested by Motorola]


    v2.59b 03/07/2003 Fixed a Bug when multiple files input to GBRUnion

    If multiple Gerber files were input to GBRUnion and a d-code was redefined between files the GBRUnion output would fail. This has been fixed.


    v2.59a 01/14/2003 Added support for 1024 layers

    The number of internal layers that is supported was increased to 1024 from the previous limit of 64.


    v2.59 11/18/2002 Added Support for Gerber Data with Decimal Points

    First encounter of a Gerber file that included explicit decimal points. Support for this has been added.


    v2.58 09/12/2002 Corrected the Pentax Output Module

    Error data could not be passed properly since v2.57 because the viewer was attempting to open the wrong log file. This has been fixed.


    v2.57 08/28/2002 Embedding Level Output Option Fixed

    This option has been broken since v2.52 due to problems with log file output. Fixed.

    Display problem for files with flashes only

    Files that had flashes only on one axis or only a single point were not displayed correctly due to an error in calculating the extents of the data. Fixed.


    v2.56a 07/18/2002 Problem with SR (Step-and-Repeat)

    Sometimes the a Gerber file could not be viewed if an SR statement was encountered. This has now been fixed.

    Sizing Function can now work when "Flatten Only" Option selected.

    Previous to this one had to have data fully unionized in order to get data sized up or down (GBRUnion). It is now possible to select "Flatten Only" and still get individual polygons sized.

    Internal Boolean Engine now uses Leonov Polygons

    Significant improvement in GBRUnion's boolean operations have been obtained by representing them internally as Leonov polygons (i.e. a parent polygon with children) instead of using cutlines to represent such geometries.


    v2.56 07/15/2002 Improved the Union Performance

    New algorithms in GBRUnion improve the performance when doing large complex union operations.


    v2.55h 06/18/2002 (ATGII Related) LAUNCH WEAVTOOL WITH "-grid ARGUMENT

    this effects only the ATG II specialized tool for Midas Vision Systems.


    v2.55g 05/17/2002 (ATGII Related)

    ADDED "-gbrexts:<filename>" ARGUMENT TO GET DATA EXTENTS FROM VIEWER

    ALLOW GBRVU'S ENTITY FILTER QUERY TO WORK FROM ATGRULE SHELL OR WHEN ATG KEY IS FOUND

    this effects only the ATG II specialized tool for Midas Vision Systems.


    v2.55f 04/16/2002 (ATGII Related)

    ADDED "-datawin:<filename>" ARGUMENT TO DEFINE A DATA WINDOW

    (ATGII Related)

    ADDED "-vubkgnd:R,G,B" ARGUMENT TO CONTROL VIEWER BACKGROUND

    Layer Table Display

    Changed the layer table to right justify the names; for long names the rightmost part displays in the box.


    v2.55e 03/18/2002 Gerber Union Bug Fix

    File access synchronization was added to files generated from within tool. This was done because there were times when temporary files were generated for GBRUnion but the tool accessed the file before it was complete.


    v2.55d 03/08/2002 MDA Import Bug Fix

    The MDA Importer (MacDonald Detwiller AutoPlot Format) was fixed.


    v2.55c 02/06/2002 (ATGII Related)

    ADDED "Sensitivity Background..." TOOL

    REVISED "Gerber Union" TOOL

    Added "Outer Template Mesh" control to filter out mesh holes smaller than the value specified in the "Hole Size" edit field.


    v2.55a 01/30/2002 (ATGII Related)

    ADDED "Adaptive Sizing..." TOOL


    v2.55 01/25/2002 (ATGII Related) REVISED ENTITY SEPARATION TOOL

    1) Key to run is ATG

    2) Made "Entity Filter Attributes" more informative.


    v2.54 12/21/2001 (ATGII Related)

    ADDED ENTITY SEPARATION TOOL


    v2.53 12/04/2001 REVISIONS TO "Gerber Union" TOOL

    1) Added message box warning to inform user that the magnitude of sizing value cannot be less the Gerber file precision.

    2) Changed cursor display while processing to an hourglass so user knows that processing is underway.

    3) Fixed a bug that caused program crash due to GBRVUs confusing conflicting DCodes with custom apertures.

    4) Fixed a bug that reset the window extents to zero whenever the tool execution was interrupted before completion.


    v2.52 11/20/2001

    Added error checking for GBRUnion.

    Retain the GBRUnion log file after processing complete.

    Added a "Flatten Only" option in GBRUnion.


    v2.51 11/15/2001

    Added "Join Partioned Windows" module to GBRUnion

    When selected this rebuilds polygons that were cut because they passed through a partition stripe.

    Multithread Support for Boolean Engine

    The boolean engine can now detect multiple CPU's in order to run in multi-threaded mode.


    v2.50 10/12/2001 Viewer Pops Up in Foreground on W2K

    The viewer's display was not popping up in the foreground under W2K. This has been fixed.

    GBRUnion Bug Fix

    The Gerber Union tool failed to work for a set of RS274D Gerber files when: no layer in position 1 and "cutlines" setting was on.


    v2.47 10/08/2001 BUG FIX TO EXPORTER

    Additional checks and corrections were added to the exporter module to export valid data even if the Gerber data was not correct.



    v2.46 07/25/2001

    Revised Geber Union Tool

  • Added a grid point to default window extents to guarantee that data touching the boundary of the window is not clipped.

  • Force single layer output when cut lines option is off. This was done because multi-layer output without cut lines generates unpredictable results: because the program cannot know in advance how deeply nested the boundaries will be prior to the booleanization, there is no control over what polygons scratch or paint.


    v2.45 05/14/2001

    Snap Settings Are Now Remembered
    In older versions the snap settings were not saved from session to session. This has been fixed.

    Revised Layer Table Dialog Box
    Added controls to globally change the on/off states and paint/scratch/negative states of all active layers.

    Gerber Union Layer Control Setting
    Added radio button controls labeled "Single Layer Output" and "Multi Layer Output". These control whether or not unionization is done between layers. If "Single...", it is per layer and between layers. If "Multi..." it is only done per layer.

    Speed Improvement with Data Clipping
    Clip Gerber data prior to union operation. The speed is most noticeable when the user selects only a small part of a layer to booleanize.

    Shortened log to report only errors
    Prior to this release the log file contained much information making it difficult to spot the warning and error messages. This has been fixed.

    Bug fix to clipping rectangular or square traces.
    Prior to this version, Gerber draws using a square or rectangular aperture were not correctly clipped at a window boundary. This has been fixed.

    Bug fix to plotting rectangular or square traces.
    Traces with rectangular or square apertures were incorrectly plotted with half the dimensions of the aperture. This has now been fixed.


    v2.44 05/04/2001

    BUG FIXES TO RS274X/EXPORT DIALOG

    1)When RS274X exporter links or outputs pentax, it checks for zero dimension apertures and changes them to round. The bug was that it mistakingly changed "Custom, Poex, Poin, and Muliply defined types. This has now been fixed.

    2)Exporter was failing to output any changes to aperture file that were necessary for linker o pentax. This has now been fixed.

    3)The file extension of the output filename was always ".art" regardless of what the user was entering. This has now been fixed.

    4)Exporter would crash when SR mnemonic with nonzero rows and columns was detected and found not to have any gerber data following it. This has now been fixed.

    BUG FIXES TO GBRVU/X

    This was failing to output handle custom apertures. This has now been fixed.


    v2.43 05/01/2001

    REVISED RS274X/EXPORT DIALOG

    Added "Pass Error Data" check box and "Error Dcode" edit box to allow a user to output erroneous data and associate it to a specific DCode.


    v2.42a 04/20/2001

    GBRVU/X BUG FIX

    The "Extract Settings" controls labeled "Draws/Flashes" and "Block Flashes" were not working. Data was always solid and flashes were always blocked. This has now been fixed.


    v2.42 04/19/2001 Pentax Processing and Linking for 0 width draws added into RS274X Export
    v2.41 04/04/2001

    BUG FIXES TO VIEWING MASK FILES

    1)Circular data was lost when circular mode was specified as 90 in aperture file. This is now ignored for mask file reading.

    2)Mask file could only be opened through a job file. This meant that it could no be opened directly. This has now been fixed.


    v2.40 03/08/2001

    BUG FIX TO HANDLING CUSTOM RS274X FLASHES

    On NT/2000, the viewer could unexpectedly crash whenever a custom flash was encountered. This has now been fixed.


    v2.39 03/02/2001

    ADDED "Tool|Film Merge RS274X..." MENUITEM

    This menuitem launches Gbrmerge in a mode to specifically work with

    RS274X files generated from "Gerber Union Tool". If this is found not to be the case, Gbrmerge will exit with a message to that effect. This menuitem will only be enabled with an Gerber Union RS274X key.

    REVISIONS TO "Gerber Union" TOOL

    1)Modified tool to do implicit sliver filtering. If no sliver is specified, the value is 0.000001 for Inch data and 0.0001 for MM data.
    2)Made tool capable of handling sets of layers that share dcode numbers that vary in definition.
    3)Tag tool's RS274X output to indicate it comes from Gerber Union. This will allow Gbrmerge program to identify these GBR files to reject them if they are not so.

    BUG FIX TO "File|Export..." MENUITEM

    The RS274X exporter was not handling sets of layers that share dcode numbers that vary in definition. This has now been fixed.


    v2.38 02/26/2001

    REVISION TO "Gerber Union" TOOL

    Changed sizing in tool to work incrementally.

    ADDED "File|Export..." MENUITEM

    This manuitem launches a dialog box to export an RS274X file with whatever changes have been made to the input file(s) apertures.


    v2.37 02/02/2001

    REVISION TO "Gerber Union" TOOL

    The tool now supports scratch layers.




    v2.36 01/25/2001

    BUG FIX TO "Gerber Union" TOOL

    The tool exceeded the vertex range specified for "Max Points" when GDS or EGS was selected as "Output Type" and "Max Points" was set to zero. This has now been fixed.




    v2.34 12/21/2000 Added capability to booleanize custom apertures

    A user has now been given the option of doing this by selecting a new menuitem, "File|Import Settings...", and checking the box titled, "Booleanize Custom Apertures". When this option has been set, the user can also control the "Arc Resolution" and "Chord Error" settings for circular data contained in custom apertures.

    Revise "Gerber Union" tool.
    1. Added "Auto" Rectangular Partitioning to automatically define a set of partitioning windows, in addition to being able to define them manually through the "Manual" option.
    2. Boolean differencing is now applied to scratch layers from the paint layer it is scratching out.

    v2.33 12/05/2000
    Fix to "Film Merge" tool.

    This tool was not allowing control of Paint and Scratch for files to merge. This has now been fixed.

    Fix to "Gerber Union" tool.

    The tool was crashing upon reading certain Gerber files. The intermediate file generation that precedes unionization was doing a memory access violation when a certain sequence of elements were read. This has now been fixed.




    v2.31 11/12/2000 Added "Rectangular Partioning" Controls.

    These control how to divide up the "Data Window" that is specified. The divisions appear as rectangular rows and columns. The operation(s) specified are performed within each rectangular area, and any polygons outside or intersecting that area are clipped.

    a)The "Rectangular Partioning" check box activates this feature.

    b)The "Nx" edit box defines the number of columns.

    b)The "Ny" edit box defines the number of rows.

    Added "Data Window" Controls.
    These define the window that contains the data that is to be partitioned and unionized. The partitioning control has to be set for these controls to be active.

    Added "Sliver" settings controls.
    When the checkbox is set, polygons that are consistently narrower than the value specified in the editbox are removed.

    Added "Gerber Union Memory (MB)"
    Edit box control to allow the user to control the memory usage of the tool.


    v2.29 09/06/2000 Bug fix when loading flashes
    The GBRVUer was not capable of loading a number of flashes in excess of 65534 if there were no tool change between them.


    v2.27 08/28/2000

    Added Gerber Union Help
    Help for the Gerber union (QckBool) is now available.


    v2.25 6/29/00

    Added Film Merge Option
    A Film merge option has been added to GBRVU enabling a user to import RS274D (or RS274X) files and to then combine one or more of them and export them as either RS274X or MDA (FIRE 9000) files.

    This has two applications - 1. to convert RS274D into RS274X making it more reliable to transfer to board mfgs. 2. to combine multiple files generated by the Gerber Union program.


    v2.22 5/16/00

    Increased number of vertices from 5000 to 65536
    This feature was needed for complex boundaries.

    Output File Directory
    The output filename's directory could not be set to anything other than what the temporary working directory was set to. This problem only occurred when RS274D or RS274X output was being generated. This is now fixed.

    Improved Progress Report
    Indicate when Gerber Union tool has completed its task. This means that the tool will show a messagebox indicating "Gbrunion output generated".

    Bug fix with memory management
    This bug deals with memory allocated during querying. It turns out that large amounts of memory were being allocated but not freed when traversing through a trace. This has now been fixed.


    v2.21 04/12/00

    Gerber union tool
    This tool was added to booleanize and or size the polygons in the current GBR file displayed by the viewer. The tool can now output RS274D, RS274X, DXF and GDS output.

    The three modules don't come with the standard gbrvu. You will need special key codes to activate these modules.

    
    The following explains the usage of this tool.
    
    1)Use "Tools|Gerber Union..." menu item to launch "Gerber Union"
      dialog box.
    
    2)Set "Gerber Union" dialog box settings wherever necessary:
    
      a)"Sizing" specifies how much to grow the polygons.  If set to 0.0,
        the polygons will not be grown.
    
      f)"Smoothing" edit box specifies which line segments to take out.
        Any segments smaller than the length specified are taken out.
    	This works with the "Sizing" control and was created to avoid the
    	apearance of spikes when sizing.
    
      c)"Arc Resolution" setting controls how circular data is broken up 
        in degrees.  The finer of the arc resolution and the arc sag is
    	used.
    
      d)"Arc Sag" setting controls how circular data is broken up 
        by specifying the perpendicular distance from an arc chord midpoint
    	to the actual arc.  The finer of the arc resolution and the arc sag
    	is used.
    
    
      e)"Cut Lines" check box controls whether or not to output
        booleanized polygons with cut lines.  If not set, the cut lines are
    	replaced by interior polygons drawn on another layer different
    	from the target layer.  Otherwise booleanized polygons may appear
    	with cutlines.
    
    
      f)"Output File Name" is the name of the output file that will be
        generated.
    
    3)Hit OK and the tool will generate the booleanized file in the selected format.
    


    v2.19 10/22/99

    Fixed display of short path
    Before this fix, a very short trace with a displayable diameter was drawn as a dot where it should have been drawn as either a circle or rectangle depending on the aperture it is drawn with.

    Moire support added
    Moire targets are now supported in both the viewing and plotting modules.

    Vape key validation changed
    There is no longer key error messages appearing for VAPE activation. The viewer will now simply gray the related menu item, "Tools|Translators|Model 714 VAPE", whenever there is an absence of a valid key for VAPE.


    v2.17 7/30/99

    Modified VAPE support
    Added support for VAPE draws.

    The converter from VAPE to RS274X was modified so that VAPE flashes can be converted to draws and VAPE draws are approximated using round apertures.
    Requested by Midas Vision Systems.


    v2.16 7/15/99

    Added Support for VAPE Commands
    A few special Gerber photoplotters were built with VAPE heads. This enabled the photoplotter to expose a rectangular aperture whose width and length changed on the fly.

    A converter from VAPE to RS274X is also available now as a separately licensed translator. This converts each VAPE command to either a G36/G37 polygon or to an rectangular aperture. This function is not available unless specifically ordered and the correct license code installed.

    Fixes to Postscript Output
    Some fixes to the Postscript plotter driver were made. These are primarily for those who wish to use GBRVU to drive very high resolution imagesetters.


    v2.12 6/9/99

    BUG FIX FOR TAGGING ILLEGAL POLYGONS
    In some cases gbrvu wouldn't detect illegal polygons in outline mode.

    BUG FIX TO QUERYING TRACE STARTING WITH ARC
    Before the fix, the querying would start at the arc's center point, rather than its starting point. This has now been fixed. Reported by Bernie from Filtran.


    v2.11 4/19/99

    DRILL OUTPUT EMPTY
    Whenever a set of layers shared a dcode number that varied in definition, drill output files were virtually empty. They only had header information but no drill information. Another cause of this is whenever a drill is defined to appear in a RS274X layer dfineition other than the first one.

    LAYER NAMES IN QUERY NOW MATCH ONES IN LAYER TABLE
    The query box, displayed by the viewer, no longer shows RS274X internal layers in the @:FILE_POS format.

    VIEW FAILED TO RECOGNIZE SOME ACTIVE APERTURES
    Whenever a set of layers shared a dcode number that varied in definition, those dcodes would not appear in the "Highlight Aperture" dialog box, and the "Aperture Table" dialog box would not show them as being used in the Gerber files being viewed. This has now been fixed.


    v2.10 2/9/99

    RS274X FILE DISPLAYED INCORRECTLY IN WHITE BACKGROUND
    The tranparency implementation made all but the last layer appear on the screen whenever the background was white. This has now been fixed.

    QUERYING FIXED FOR MULTIPLY DEFINED D-CODES IN RS274X
    When querying flashes of these d-codes, the wrong flash would be displayed in the querying area. This has now been fixed.

    WIN98 BUG FIX FOR IMPORTING RS274X FILES W/ MULTIPLY DEFINED D-CODES
    The flashes inserted had the wrong dcode type and dimension when the same d-code was used for two or more aperture definitions accross a set of files imported. Problem only happens on Windows 98. This has now been fixed.

    ADDED REPORT OF PLOT WINDOW COORDINATES
    Each time the viewer outputs a plot, the window coordinates of the desired plot will be stored in the plot.cfg file. The information appears like the example below: pltcfg.PLOTWINDOW: 37216,36533 50073,43073 The first and second pair of numbers are the minimum and maximum coordinates respectively.

    BUG FIX WHEN SWITCHING JOB FILES
    The viewer would simply crash when opening a job file after having opened another set of Gerber files. This has now been fixed.

    PLOT ONE LAYER AT A TIME
    GBRVU/W can plot one file at a time from a set of imported files being viewed. This change means the following:

    
    1)An added menuitem, "Plot|Plot Layers Seperately".
    
    2)A check box labeled "Plot layers seperately"  has been added to the 
      "Plot Window" dialog box to control the same thing.  Remember that
      the dialog box is launched from the "Plot|Plot Window Coords..."
      menuitem.
    
    3)The setting affects all three kinds of plotting:
    
        a)Screen Plotting
    
        b)Window Plotting
    
        c)Plot Window Coordinate
    
    3)The default setting is off.
    
    4)For MDA and RS274D a layer plotted is an imported file.
    
    5)For RS274X a layer plotted is an imported file with all the layer 
      polarities contained in it.
    

    SEE THROUGH TRANSPARENT AREAS GENERATED BY RS274X FILE IMPORT
    It used to be the case that when two or more RS274X files were imported, the scratched areas of the first file could potentially scratch out areas in the previous file(s) displayed. This has now been changed. The scratch areas in a RS274X file only affect itself.

    SCREEN SAVING AND DUMPING IS DONE FOR MOST REDRAWS
    A window appearing and disappearing over the viewer use to cause a redraw on the area covered. This functionality has been changed to do a screen dump rather than a redraw.

    IMPORTED RS274X FILE WAS SOMETIMES COMING UP EMPTY
    A file without a G-code preceding its first LP mnemonic, caused the viewer to think the file was empty.


    v2.08 12/23/98

    Added Support for redefined apertures in RS274X files.
    Sometimes an aperture is redefined within an RS274X file or by a second or third file loaded simultaneously. Previously GBRVU was unable to support such redefinitions. In version 2.08 we added support for such occurences.

    1)Additions were made to "Aperture" dialog box.
    
      a)Aperture Table Dialog shows a new type, "Extended", for d-code types
        for d-code numbers referring to more than one kind of aperture.  
    
      b)Clicking on the d-code button of this type will launch a "D-code" 
        dialog box showing layers and corresponding aperture type of the
    	d-code.
    
      c)"Custom" and "Extended" type d-codes are read only.  They can only
        be removed.  This is done to prevent a user from accidently changing
    	these kinds of apertures and realizing later that there is no way 
    	to get them back.
    	
    	To remove an "Extended" type, do the following:
    	  - Click on d-code button.
    	  - After "D-code" dialog box appears, hit "OK" button.
    	  - Click "Clear Line" button of "Aperture" dialog box.
    
    	To remove a "Custom" type, do the following:
    	  - Click on d-code button.
    	  - After "Types" dialog box appears, select "" and hit "OK"
    	    button.
    
    2)The aperture file represents the "Extended" type as DCPointer as shown
      below:
    
    		D24 0 d DCPointer 26,1101;38,1102;
    
      The example above defines d-code 24 as being, d-code 1101 in layer 26
      and d-code 1102 in layer 38.
    

    v2.07 12/11/98

    Increased number of 274X Macros
    Completely rewrote the macro interpretation module. No longer stores each macro as a separate file that clutters up the working directory.

    Increased number of macros from 256 to 1024. [requested by SteveDB to support Allegro/APD RS274X files with hundreds of apertures for BGA design applications....

    Dramatic Speed Increase in RS274X Import.
    Removed the awk based Gerber parser and replaced with a compiled parser. Speed improvements of up to 50X during importation. Requested by Steve DB to load large Gerber files generated by Allegro.



    v2.06 12/10/98

    ADDED CIRCLE CONTROL TO GBRVUX DXF OUTPUT
    A setting has been added to the Extract settings dialog:
        Circle Control	(Circle or Polyline) [default=polyline]
    
    This was done for Ansoft users. Apparently in version 2.04 we started using Circles and the Ansoft analysis software only can accept a zero width closed polyline. Reported by Mark Allen.


    v2.05 10/28/98

    RESTORED POLYGON SELF INTERSECT AND REENTRANT CHECKING CONTROL
    A popup menu File|Preferences|Poex Check has been added. It contains three menu items which allow the user to choose different modes related to polygon checking:

    1. Off [default]
    2. Self Intersect
    3. Self Intersect & Reentrant

    BUG FIX TO REVERSE DISPLAY MODE
    Fixed a bug in version 2.04 which broke the reverse area fill display mode. This mode is often referred to as Pentax mode because it emulates the behavior of the Japanese Pentax photoplotter.

    BUG FIX TO FIRE 9000 DISPLAY MODE AND MORMAL DISPLAY MODE
    The Fire 9000 mode automatically sets the self intersecting and reentrant polygon check mode while Normal turns off checking. The default display mode is now Normal.


    v2.04 09/21/98

    EXTRACT OUTPUT IS NOW UNIFORM WITH GBR2DXF OUTPUT
    The GBR2DXF engine is now launched to translate the GBR data selected from the viewer. This was done to unify the DXF output generated from GBR2DXF and GBRVU/X. [Editor's note: this change ended up breaking the Ansoft connection and was modified in 2.06]

    The Extract settings dialog has been changed to control :

        Draws Control	(Connectivity or Graphics)
        Draws/Flashes	(Solid or Outline)
        Block Flashes	(Blocked or Exploded)
        AutoCAD R14		(On or Off)
    
    The first three settings are passed to the GBR2DXF engine via aperture file and the last one by commandline argument.

    Added SR support to Extract
    Extract selection has been fixed to work with layers that are stepped and repeated bt RS274X SR mnemonics.


    v2.03 07/28/98

    Improved Extents Calculations
    Fixes a problem when calculating extents on files that have custom apertures. Previously only the insertion point of the custom aperture was used to calculate extents.

    Interupt of Screen Display Fixed for Custom Apertures
    Hitting the escape key normally interrupts drawing on the screen, but interrupting custom aperture draws could not be done. This condition can be annoying if the custom aperture contains a lot of data. This has now been fixed.

    Auto Detection of RS274X, MDA and RS274D Added
    The user can either let the viewer detect and import GBR files or force a specific kind of import. The user can also define file extensions from the File | Preferences | File Extensions menu item.

    Opening an Existing Job File
    A user can select job files from the available file types in the combo box labeled "Files of Type:", in the "Open GBR File" dialog box. This will open a set of Gerber files and their corresponding aperture file. automatically.

    Aperture Conversion has been broken out Separately
    When opening RS274D gerber files, the user is prompted for an aperture file. If the file selected is not an Artwork aperture file, the user will be instructed to use the aptgen program to first convert his aperture list into Artwork's apt file format.

    the new Aperture Generator can be started either stand alone or from the Tools | Aperture Generator .... pulldown.

    POEX Check Default to OFF
    The setting which checks for illegal polygons is initially off. If on, all illegal polygons will be displayed with an error color and outlined instead of filled. The setting can be found in the "File|Preferences|Poex Check" menuitem. When it's checked, it's on.

    DXF Layer Colors in GBRVU/X Fixed
    The layer colors in the DXF file now correctly match the layer colors that one sees in GBRVU.

    Added TIFF Output
    Added the TIFF output format to the plotter driver set. Enables Users to get high resolution TIFF output.


    Version 1.95 12/12/97

    Fixed bug interaction between SR and Custom Aperture

    The viewer couldn't handle a custom aperture referenced after an SR mass parameter. In such a case, only some of the custom apertures would appear. For example, if the SR mass parameter specified a 2x2 array, the only custom flashes that would appear would be the ones in the bottom row and left column of the array. Both viewing and plotting were affected.

    Fixed Bad Mouse Action

    When zooming, measuring, panning, plotting windows or ID'ing an entity if you attempted to cancel out of the action, then clicked to start the action again, the cancelled action was still in effect and would complete upon your next mouse click....not what you wanted to happen. This behaviour has been fixed.

    Excellon Format

    The Excellon format should be hardwired to 2.4 - instead it was following the format of the Gerber data. Fixed.

    Confuses String for M-Code Fixed

    The RS274X interpreter apparently saw a string embedded in a G04 comment such as M00, and confused this for the M00 command which stops the plotter. Fixed.

    Fixed Wrap around in Raster Plotter Driver

    For certain files where the extents were large, a portion of the raster file was "wrapped" around the page and appeared on the opposite side of the page where it should have been. Fixed.

    Version 1.89 06/16/97

    Plot Extents Calculation Bug

    The viewer would mistakingly clip parts of flashes and traces that layed adjacent to the extents of the drawing. This has been fixed.

    Version 1.88 06/12/97

    programmer's note: MKSSI CONTROLLED

    Version 1.87 06/11/97

    Bug when reading mask file

    This bug would cause the beginning portions of a mask file to skip, resulting in only some of the data appearing. The bug had been in existance since v1.85's implementation of "SKIPPING NON-GBR-DRAWING HEADER INFORMATION". This has been fixed.

    Bug when drawing and plotting thermal square flashes

    The viewer would hang whenever it encountered more than three consecutive thermal square flashes placed after a tool change. It would also fail to draw these flashes. This has been fixed.

    Support A4 to A0 Plot Paper Size

    A4, A3, A2, A1 and A0 plot paper sizes are now recognized and properly handled. In the previous version, A size paper was assumed when one of the above paper size was used.

    Step and repeat (MASS PARAMATER "SR") support added

    The viewer has been modified to display, query, and plot layers defined with SR paramaters. The GBR data belonging to such layers is arrayed orthogonally dependent upon how the SR paramater is defined.

    Version 1.85 (04/24/97)

    Long file names restriction

    Code has been added to prevent usage of any long file names throughout the use of the viewer.

    Bug fix: Truncating Layername in Job File

    Previously, if the layername in the job file was greater than 64 characters, it would mistakingly be truncated to that length.

    Skipping non-gbr drawing header information

    GBRVU will skip any blocks or lines in the beginning of a GBR file that don't make up part of the GBR drawing. In addion to this, G57 codes are treated as comments.

    Version 1.84 (04/21/97)

    Bug Display of Custom Apertures w/Traces = (LINES AND ARCS)

    The viewer was erroneously trying to offset the data points making up these traces whenever they were associated with POEX apertures. The first data point was being offset unnecessarily when all the points making up the traces composition had already been offset to the location of the flash. It was affecting the display, plotting, and DXF extraction. This has been fixed.

    FIRE 9000 Display Bug

    This bug appeared when an arc was drawn, after a closed boundary having the same tool, and ending at (0,0). In this case, under Fire 9000 display mode, the viewer would erroneously consider the circle as part of the boundary and display an unexpected looking boundary. This has been fixed.

    Memory allocation bug for plotting

    Viewer would crash when plotting boundaries with vertices greater than 2500. This has been fixed.

    DXF Extract bug for RS274X Layer Polarity

    Invalid layer names were mistakingly generated in the DXF output of the viewer's GBR exatraction features. This occurred whenever changes in the layer polarity were defined in a single RS274X file. When the importer encounters this, it creates layer names of the form.

    Version 1.79 (11/01/96)

    this version ships with 5.41 of ASM 500 family for Windows...
    HostID locking added the ability to lock (on 95/NT only) to a network card's MAC address. This can be used instead of a hardware key as needed or desired. See New HostID Locking for Windows

    Grid and Object Snap Added The ability to snap either to objects (vertices of draws, centers of flashes) or to a user defined grid has been added. Snap is controlled from the FILE | PREFERENCES dialog.

    Fixed memory bug in Extract Module The DXF eXtract module incorrectly allocated and locked memory. This has been corrected.


    Version 1.76 (08/01/96)

    this version ships with 5.38 of ASM 500 family for Windows....
    Display of Circular Data GBRVU uses the ARCRES parameter to determine how to display circular Gerber commands. For most applications the default setting of 9 degrees is acceptable. However very large diameter arcs (3-4 inches) look a bit jagged at this resolution. GBRVU was ignoring user settings less than 9 degrees. This bug has been fixed so that the user can set arcres from 1 to 45 degrees.

    CR/LF and Suppress Leading Zero Parameters GBRVU was ignoring the value of CR/LF and Leading Zero Suppression present in the .apt file and was rewriting them to the default value. If a user had turned on CR/LF in ASM 50x then GBRVU would modify the .apt file to turn it back off. This has been fixed so that these settings are no longer ignored (and modified) by GBRVU

    Circles, arcs and FIRE 9000 emulation While testing MTOOLs 3.10 we detected that GBRVU would fail to display as filled a 360 degree arc (essentially a circle). We also determined that two such concentric arcs were confused as a illegal POEX boundary. Both conditions have been fixed.


    Version 1.74 (07/18/96)

    this version ships with 5.37 of ASM 500 family for Windows....

    Version 1.71 (04/17/96)

    this version ships with 5.35 of ASM 500 family for Windows....