version 7.100

  1. resolved more bugs in kbool 2.1, dealing with lingage of holes
  2. extra option for linking holes a different way
  3. since kbool 1.9 license change to GPL ( for commercial use contact me )
  4. Update for wxWidgets 2.8.10
  5. Cmake improvements

version 7.00

  1. resolved some serious bugs in kbool 2.0
  2. since kbool 1.9 license change to GPL ( for commercial use contact me )
  3. Update for wxWidgets 2.8.10
  4. Cmake improvements

version 6.3

Graphical interface
  1. Based on wxWindows 2.3.4
  2. cmake now used to create projects and makefiles
Boolean algorithm (also effects booleanonly)
  1.  Using the kbool library with the Boolean engine.

version 6.21

Graphical interface
  1. and it did not even save gdsii or key files properly, i just wonder why no one did let me know ;-)

version 6.2

Graphical interface
  1. reorganized code
  2. many GUI improvements
  3. more drawing capability (splines)
  4. more output formats (SVG Scalable Vector Graphics to view in browser)

version 6.1

Graphical interface
  1. many GUI improvements
  2. more drawing capability
  3. properties on most primitives
  4. (re)drawing only at places needed
  5. commandline version does not exist anymore (to much trouble)
  6. boolean -silent is now starting boolean without a graphical interface

version 6.01

Graphical interface
  1. small modification on GUI
  2. some bugs resolved
  3. added more source documentation
  4. tool for adding text giving height possible

version 6.0

Graphical interface
  1. complete redesign of GUI to be compliant with wxwindows 2.0
  2. interactive drawing of primitives like polygons etc.
  3. properties (user defined attributes) for all primitives and structures.
  4. removed tcltk interface, maybe a (wx)Python implementation in the future.
  5. from now i do do not supply the wxwindows libraries, you need to get them yourself. (i recommend wxGTKb9, >gtk 1.2.3, wxWin2.1)
Commandline interface
  1. all needed to support the above.
Boolean algorithm (also effects booleanonly)
  1. made a boolean engine to make it easier to use within other applications.

version 5.61

Boolean algorithm (also effects booleanonly)
  1. links in graph do not maintain crossings anymore, moved to class line, the advantage is less memory usage in graphs.
  2. processing of crossings and hole linking is done inside the scanbeam routines, not afterwords anymore
  3. deleted more routines that became redundant because off the above

version 5.6

tcltk interface version
  1. only win95/NT yet
  2. the first simple version off a tcltk interpreter including boolean algorithms
  3. it can already display the GDSII files
  4. using commandline all boolean functionality available
  5. interface is completely build with tcltk script
  6. all tcltk funtionality can be used to write new scripts/interfaces etc.
Graphical interface
  1. read off single layers from GDSII or KEY files, in order to be able to process huge files.
Commandline interface
  1. command added to report area of groupa its polygons.
  2. command added to report the top structure
Boolean algorithm (also effects booleanonly)
  1. very different, too much to mention
  2. now 64bit integer based
  3. ten times faster
  4. even more stable
  5. many code has gone

version 5.4

Graphical interface
  1. to improve the drawing speed and redrawing speed, the drawing is now drawn in memory as well as on the canvas.

  2. The memory canvas is drawn with filled patterns for the primitives, the screen canvas with only outlines.
    When the complete picture has been drawn, the memory canvas is copied to the screen. The advantage is that redrawing the screen (overlapping windows etc.) will be faster, since the memory canvas will be used.
  3. The drawing process can now be interupted by mouse actions. When part of the picture is visible, we can directly zoom in and out.
  4. Some key shortcuts for the canvas have been added for zoomin, zoomback, measering distances.
  5. selection for arc, circle and  boundary containing arc segments corrected.
  6. Thresholds for minimum primitive to draw and minimum structure to draw can be defined in pixels.

  7. This is for improving drawing speed for huge drawings.
  8. Saveas for GDSII corrected.
  9. file dialog improved for filter selection.
  10. resizing window improved.
Boolean algorithm (also effects booleanonly)
  1. setting A/B group flags are set in one sweep (90 degrees step not needed anymore)

version 5.35

  1. corrected commandline version for UNIX to work again
  2. top structure is shown in structure dialog

version 5.34

Boolean algorithm (also effects booleanonly)
  1. collectgraph and extractsimples now does not produce separate graphs anymore, but reworks the original graph. This is better for linking holes because for that we need one graph. The separate graphs can still be extracted by putting  links with same number into one graph.
  2. after intersection remove links that are not used for the wanted operation. After this the intersected graph contains only links for the given operation, and not as before for all operations at once. Since having the result for more then one operation is rarly usefull, it is better to delete those links right away. This will reduce the complexity of the graph. Also conditional collecting links for a given operation is not needed anymore, because they simply do not exist anymore. This made it possible to reduce code for collecting graphs and linking of holes, and memory usage is reduced by a factor of 2.
Commandline interface
  1. array reference in gdsii file has been implemented.
  2. path ends rounded square and half width extended now are displayed.
  3. 2 point polylines,paths are working now.
  4. after text select boundingbox  yellow if selected
  5. text presentation corrected for unix and windows.
  6. selection of array references and other elements corrected and implemented.
  7. explode for structures implemented, to be able to operate on selected structure references.
  8. select command changed , point mode, box mode and (de) select all
  9. delete command added
  10. group settings now possible with selected elements, by giving A and B flags to every element. Commands group_a selected and group_b selected added.
  11. flatten command corrected, can now also work on visible structure (not only top structure).
Graphical interface
  1.  added new commands to graphical interface, (un) select all, delete (selected) set selected to group a or b.
  2. layer dialog stays at previous position

version 5.33

Boolean algorithm (also effects booleanonly)
  1. object  node corrected to take the highest nonflatlink at a topnode
  2. object graph corrected getmosttopleft and sorting in extract simples in order to get the right topnodes
  3. object graph changed all 4 scanbeam sweep routines into 1 called scangraph to reduce code and complexity.
  4. object graph 2 collectgraph to 1
  5. object graph 2 extract simples to 1
  6. object link (setnotbeenhere) added to be able to call it with list forall function
  7. object scanbeam (changed/added findnewtolow  marktolow removetolow) in order to rewrite graph::scangraph routine.
  8. object record (don't remember)?
  9. in general flatbeams are  not processed at all any more, only used to find new links for coming normal beam

  10. Because many drawings contain a large percentage vertical and horizontal lines i think taking those after rotating the drawing 90 degrees does reduce the processing time. Else when processing also flatbeams,every vertical link would generate a new beam to be processed (in some sweeps not  possible).
Commandline interface
  1. reading arguments correctly
  2. selecting areas with select command (although not visible still useful)
  3. savevisible command implemented (although not visible still useful)
  4. in general all graphical releated commands that can be used, use them (ideal when using process files)
  5. corrected recording (docommand can now be called recursive)  Loadfile will work again
Graphical interface
  1. preserve groupA,B and destination settings when loading new files
  2. corrected setting available layers
  3. object group (checkgroups added)
  4. corrected recording (docommand can now be called recursive)  Loadfile will work again