LayoutEditor Changelog

What's new in LayoutEditor 20211015

Oct 14, 2021
  • New Features:
  • support of extra keyboards
  • switch to Python 3.9 on Mac, Python 2 was used before
  • File Formats:
  • DXF:
  • Fix problem with import of scaled cell
  • LEF:
  • Fix double export of identical named ports
  • Macros:
  • add new method to class pointArray:
  • static pointArray pointArray::coil(point center,point p1,point p2,int turns, double angelstep);
  • add new method to class sElement:
  • component* sElement::getComponent()
  • add new method to class layout:
  • void layout::addFunctionKey(int key,int function)
  • void layout::addMacroKey(int key, string macroFileName, string name, string iconFileName)
  • add new method to class layout3d:
  • void layout3d::addFunctionKey(int key,int function)
  • voidlayout3d::addMacroKey(int key, string macroFileName, string name, string iconFileName)
  • add new method to class schematic:
  • void schematic::addFunctionKey(int key,int function)
  • voidschematic::addMacroKey(int key, string macroFileName, string name, string iconFileName)
  • add new method to class textEdit:
  • void textEdit::addFunctionKey(int key,int function)
  • void textEdit::addMacroKey(int key, string macroFileName, string name, string iconFileName)
  • Fix setup::set() with boolean values
  • Fix macro recording of fillSelectedShapes()
  • Bug Fixes:
  • schematic -> replace -component feature handling of callbacks and default parameter,
  • possible crash on path elements with more than 400 corners and width bigger egment length,
  • avoid drag event when a dialog is show,
  • .ger (in small letters) as Gerber detection.
  • fillSelectedShapes on small holes,
  • close of some dialogs after changing a spinBox inside ,
  • schematic -> showInfo feature handling backslash on Windows,
  • code signing issue on MacOs for plugins,
  • update supported linux distributions,
  • drop Ruby support on Mac.

New in LayoutEditor 20210708 (Jul 7, 2021)

  • New Features:
  • bookmark views
  • parametric cell using tcl
  • File Formats:
  • OpenAccess:
  • loading properties of instances may had failed under some conditions
  • support of appParam
  • Macros:
  • add new method to class drawingField:
  • cell drawingField::scaledCell(cell c,double sx, double sy)
  • void drawingField::pixelMap(int,int,string)
  • add new method to class sElement:
  • library and component name with string sElement::getParameter(string)
  • add new method to class layout:
  • void layout::addMacroMenuEntry(string filename, stringList menu)
  • edit macro on shift + macro menuentry
  • edit macro on shift + macro tool button
  • Bug Fixes:
  • display of last layer control fails when scroll bar visible
  • missing mouse help for macro tool buttons
  • crash in schematic with delete last remaining component
  • remove warning: libpng iCCP: known incorrect sRGB profile
  • display.drf read 'FillStyle' in drDefinePacket was not optional

New in LayoutEditor 20210519 (Jun 16, 2021)

  • New Features:
  • Improved grid display on hi-res screens
  • Filter of device list and net list for searching
  • Improved performance for LVS
  • Translated user interface for es, it and cn (automatic translations) with the possibilities for manual corrections
  • File Formats:
  • OpenAccess:
  • Fix loading of databases with no tech.oa in case layers are mapped by number
  • Reading global nets
  • DXF:
  • Import of SPLINE with knot values
  • Fix mirror issue with instance placement
  • LEF/DEF:
  • Support of wire extensions
  • Fix LEF export in case no netlist is present
  • Fix parsing size statement
  • GDS:
  • Fix on Mac reading further than end of file
  • OASIS:
  • Faster handling of repetitions with cell-references
  • SVG:
  • Correct handling of a 'path move' command
  • Macros:
  • Add new method to class drawingField:
  • Void drawingField::deleteCell(cell *)
  • Add new method to class element:
  • Bool element::isShape()
  • Add new method to class component:
  • Void component::createSymbol(netList *nl)
  • Void component::setNetlist(string type,string value)
  • Void component::setModel(string type,string value);
  • Add new method to class components:
  • Static stringList components::getOaCellNames(string lib)
  • Static stringList components::getOaLibs();
  • Add new method to class file:
  • String file::canonicalPath()
  • Static string file::projectPath()
  • Add new method to class layout:
  • Bool layout::objectVisible()
  • Add new method to class math:
  • Double math::trunc(double)
  • Double math::ceil(double)
  • Add new method to class setup:
  • Static bool setup::lefStoreLayerInfos
  • StringList setup::defExtraLibs;
  • Add new method to class strans:
  • Strans::strans(string)
  • Support of pointArray pa={{1,3},{4,8},{5,3}};
  • Macro recording of actions in SchematicEditor
  • Bug Fixes:
  • Move by and copy by remember last values
  • Bool: A invert and A invert (hierarchical) with exect invertion area
  • Status bar uses full availabale space
  • Handling of bigger netlists with more than 10000 devices/nodes
  • Open .gerber.layout macros as designs and not als macro when used as command line parameter
  • Snap to point on bigger 1d arrays
  • Reading setting from xfab project file
  • Set correct folder before loading callbacks
  • Cloud upload of designs with names containing . and _
  • Extraction of polygon/text link may sometime fail

New in LayoutEditor 20201228 (Jan 13, 2021)

  • New Features:
  • Support of SkyWater OpenSource PDK,
  • SkyWater std-cell HD library is now included in any package,
  • Filter feature for components in SchematicEditor,
  • Support of OpenROAD/Yosys for an automatic RTL2GDS and Place&Route flow,
  • Symbol composer allows add/remove port,
  • File Formats:
  • OpenAccess:
  • Support of verion 22.60.021, so that the latest PyCell version can now be used,
  • Support of Cat files,
  • Correct display of attrdisplayref in schematics,
  • CDF parse viewInfo entry correctly,
  • Symbols with buses,
  • Fixes some issue with schematic with buses,
  • Improved import of schematic from other tools,
  • Oa file info feature to get oa version used to create that file,
  • Store layout in cds stype with purpose always oavPurposeNumberDrawing,
  • Layout export used attrdisplay to show terminal text,
  • Fix layout export not read existing netlist,
  • Store pin names to oaShapes
  • DXF:
  • Option to store layer in the scheme L#xxxD#yyy (e.g. L20D3) with layer number and datatype instead of layer name,
  • LEL:
  • Support of library filter for components,
  • LEF/DEF:
  • Parsing of SPACINGTABLE,
  • Correct RECT usage in NETS secition,
  • DEF additional RECT for PINS,
  • LEF/DEF layer name case insensitive,
  • DEF warning on missing vias ans missing boundry rect,
  • DEF output of unplaced components,
  • DEF support of VIARULES,
  • LEF stores non placed cells,
  • LEF adds missing space in UNITS and some RECT elements,
  • MAGIC:
  • Basic incomplete support of file format,
  • Display.drf:
  • Parsing files from different sources correctly,
  • OASIS:
  • Adjust end record to recommendations of the spec,
  • PIXEL:
  • Adjustable border,
  • Macros:
  • Add new method to class drawingField:
  • Void drawingField::importViaFile(string filename)
  • Add new method to class layer:
  • Void layer::setColor(QString color);
  • Add new method to class layout:
  • String layout::getDirectory(QString path)
  • Bool layout::objectExists()
  • String layout::getVersion()
  • Add new method to class macro:
  • String macro::filename()
  • String macro::trigger()
  • Bool macro::isAutostart()
  • Add new method to class setup:
  • Static bool setup::dxfSaveLayerNumber
  • Static void setup::setStrongHighlightColor(int red, int green, int blue)
  • Static void setup::setStringHighlightBrush(int brush)
  • Static int setup::pixelBorder
  • Add new method to class string:
  • String string::removeNonAscii();
  • Add new method to class stringList:
  • Void stringList::sortList(int style=0);
  • Extend some build-in tcl functions,
  • External tool will output std out and error channel merged
  • Bug Fixes:
  • Wire lable did not add wire point,
  • Schematic wire did not add all required wire dots,
  • Schematic: end polygon and end line with a double click,
  • ExternalTool does not try to execute dir anymore,
  • FormInitProc may set link to true,
  • CompareCell only checks layer used in top hierarchie level,
  • Faster file update,
  • Possible hanger on file attach,
  • Warning for DRC on empty designs,
  • Resolve of bus name like 2*t,2*z,
  • Misson link to oa on rpm packages,
  • Adjust qrouter, fastcap and fasthenry for latest clang compiler for mac,
  • Not showing up 3d windows on some systems,
  • Hang on mac when opening background image dialog,
  • Fix oaGetVersion detection,
  • Autoload layer may open/process other files as well,
  • Handling non ascii char in DRC,
  • Missing netlist update after changing a parameter,
  • False layer reset when using autostart macro,

New in LayoutEditor 20200801 (Jul 31, 2020)

  • New Features:
  • select/edit mode: deselecting with control key,
  • improved display of text labels like ruler,
  • support of text height of wire labels in schematic,
  • improved ruler/measure feature
  • File Formats:
  • GDS
  • option to store text height as magnification,
  • OpenAccess/iPDK
  • support of strech handels for PyCell,
  • import device label position,
  • text height import into schematic,
  • import of schematic databases created with cds or tanner,
  • export only non default parameter of devices,
  • export all modified cell on save instead of current cell only,
  • support of datasheet cell,
  • DXF
  • fix missing layer information for arc shapes
  • OASIS
  • import some repetitions as cell array
  • Macros:
  • add new class dialog for custom dialogs:
  • void dialog::setWindowTitle(string s);
  • int dialog::addLabel(string);
  • int dialog::addComboBox(stringList item, string defaultitem=""),
  • int dialog::addLineEdit(string defaultText),
  • int dialog::addSpinBox(int defaultValue, int minValue, int maxValue ),
  • QString dialog::getString(int id),
  • int dialog::getInt(int id),
  • int dialog::exec(),
  • fix screen refresh on setLayerSorting call,
  • $requiredModel keyword for netlist generation,
  • euler spiral macro example,
  • add new method to class setup
  • static bool setup::gdsStoreTextHeightAsMagnification,
  • static string setup::openAccessSchematicStyle,
  • static void setup::setAutoPlacer(bool d,bool a, int l , int dis,
  • static void setup::setAutoRouter(string macro),
  • static int setup::openAccessBoundary
  • Bug Fixes:
  • DRC minimum element distance check for single point touching polygons,
  • hierarchical netlist generation with more than two hierarchie levels,
  • faster snap to point,
  • avoid diagonal wire after component move.
  • crash on some special polygon checks,
  • remove several console warning messages when executing macros,
  • update of sheet component by undo,
  • fill cell handling in autoplacer,
  • WebViewer fixes
  • avoid scollbars on edge
  • handling shift key on Chome,

New in LayoutEditor 20190108 (Jan 6, 2019)

  • New Features:
  • Derived layers generation from a dialog,
  • Hexagonal arrays,
  • Select from list for all select/deselect modes,
  • Extension to parametric shape library for siemens-star,
  • Better mouse selection for cell select,
  • SchematicEditor:
  • PyCell detection/activation in the setup on Windows,
  • File Formats:
  • DXF:
  • Support of block insert before block definition,
  • SVG:
  • Support of path option z,
  • Rect entered in lower case,
  • Overflow check,
  • Color defeintion in css section,
  • Pixel:
  • Sierra Dithering,
  • Jarvis, Judice, and Ninke Dithering,
  • Gerber:
  • Apertur with small values,
  • Macros:
  • Add new method to class drawingField:
  • Void autoRuler(point),
  • Void copyArea(double minArea, double maxArea, int layerDest, int layerSource),
  • Void derivedLayer(int layerA, int layerB, int resultLayer, string operation),
  • Void copyLayerSized(int sourcelayer, int destinationlayer, int size,int type);
  • Void copyLayerSizedAsym(int sourcelayer, int destinationlayer, int sizeX, int sizeY);
  • Add new method to class cell:
  • Rect measureSpaceVisible(point p1);
  • Bool pointOnLayer(point p,int layer);
  • Add new method to class layerTranslator:
  • Void clear(),
  • LayerTranslator class now supports multi-mapping,
  • Add new method to class setup:
  • Int pixelDither,
  • Support of array entry in c style: {1,2,3,4}
  • Macro recording for area measurement,
  • Bug Fixes:
  • NULL pointer warning for autostart macros,
  • Display of thin lines on black background for Retina displays,
  • User interface lock after special cell select,
  • Creating of boxes with negative height with edge move,
  • Entry of layer mapping only, if activated in setup,
  • Avoid warning for negative width in LayerNames cell,
  • Avoid double LayerNames cell,
  • Alignment of background images with 1 and 2 alignment points,
  • TextEditor crash on RHEL7 with KDE,
  • Pixel import setting not stored correctly on shut down,

New in LayoutEditor 20180522 (May 21, 2018)

  • New Features:
  • extending the LayoutEdior Cloud with a support forum,
  • display of snap status,
  • trigger option of the autostart macro,
  • option to display cell references with a single layer only,
  • measurement toolbar in basic version,
  • macro access to inductance extraction,
  • SchematicEditor
  • electrical rule check,
  • vector devices ( sometime called iterated instance),
  • vector signals on a bus element,
  • improved snapping,
  • improved entry of ports,
  • straiten wires to avoid small steps,
  • previous sheet,
  • File Formats:
  • OpenAcces:
  • update to version 50.p084,
  • enable PyCell plugin from the setup dialog,
  • support of iterated vector instances in schematics,
  • DXF:
  • MTEXT ignores text formating string,
  • LWpolyline close flag processing
  • Macros:
  • add new method to class component:
  • symbol * component::getSymbol(int pos=0),
  • add new method to class extractionModule:
  • void extractionModule::inductanceAddSelection(),
  • void extractionModule::inductanceAdd(element *e,int conductorNum),
  • void extractionModule::inductanceClear(),
  • void extractionModule::inductanceCalc(double frequency=1000000),
  • double extractionModule::inductanceResult(int con1,int con2),
  • add new method to class sElement:
  • void sElement::setColor(int r,int g, int b),
  • add new method to class setup:
  • static stringList setup::autostartMacroTrigger,
  • static int setup::displayCellSingleLayer.
  • static string setup::openAccessPyCell,
  • static bool setup::showSnap,
  • add new method to class sheet:
  • void sheet::deleteElement( sElement*),
  • component * sheet::getSheetComponent();,
  • new class symbol with these methods:
  • sElement* symbol::addPolyline(pointArray p,int red, int green, int blue),
  • sElement* symbol::addPolygon(pointArray p,int red, int green, int blue),
  • sElement* symbol::addArc(pointArray p,int red, int green, int blue),
  • sElement* symbol::addText(QPoint p,int red, int green, int blue, QString text),
  • sElement* symbol::addCircle(QPoint p1,QPoint p2,int red, int green, int blue),
  • sElement* symbol::addRect(QPoint p1,QPoint p2,int red, int green, int blue),
  • sElement* symbol::addPort(QPoint p,QString text),
  • sElement* symbol::addBusPort(QPoint p,QString text),
  • sElementList *symbol::firstElement,
  • void symbol::deleteElement( sElement*),
  • Bug Fixes:
  • open design files with double click on mac,
  • start on mac without installation,
  • Redo/Undo within the symbol editor,
  • handling font files with uni codes filename,
  • crash on zerro grid settings,
  • avoid/handling of double sheet names,
  • copy clipboard in case of different databaseunits,
  • cdf parser for proplist,

New in LayoutEditor 20180417 (Apr 16, 2018)

  • New Features:
  • introducing the new cloud with a web design viewer and a photomask order service,
  • automatic ruler with offset option,
  • new cloud format, pixel format and bundel format are available without size limitation in free version without a license key,
  • faster display of selected shapes,
  • point select highlight effected points during selection,
  • better highlight in selection mode for selection of shapes and cells,
  • mouse zoom to ruler mode,
  • File Formats:
  • LayoutEditor Cloud:
  • new encrypted file format for cloud applications,
  • MEBES:
  • support of several further options and commands in job deck files
  • Macros:
  • add new method to class drawingField:
  • stringList drawingField::findCellRegExp(string regExp),
  • add new method to class string:
  • string::setHex(int),
  • fix problem with intList constructor,
  • fix problem with overload of drawingField::setCell() for LayoutScript for Rudy and Python,
  • float input accepted for integer in some caes with LayoutScript on Ruby und Python
  • Bug Fixes:
  • update several libaries to its newest version like Qt on Windows and Mac, on Linux Qt5 is use if qt >5.6 is available in distribution,
  • shortcut for copy mode in reduced version,
  • unicode output to command line when using qt5,
  • desktop intrgartion on fedora,
  • remove unneded point for paths for the end point,
  • mac: correct restore of mouse help in some cases,
  • paint level for boxes,
  • faster display of polygons,
  • element size with area calulation,
  • change paint engine will no longer need restart,
  • change backgound will no longer require restart,
  • scale display when use rotated editInPlace,

New in LayoutEditor 20180129 (Apr 16, 2018)

  • New Features:
  • new reworked web based manual,
  • point entry by dialog in path/polygon mode,
  • end polygon/path mode by double click or clicking on start point,
  • display scale in main window,
  • center box in properties dialog,
  • the length element feature is nor poart of the element size feature,
  • element size displays area and perimeter as well,
  • measure angle can create permanent display and measure polygon edges,
  • OpenCellLibrary supports white background,
  • exact sizing of font height to entered width,
  • update to newest version of FreeRouting,
  • File Formats:
  • OpenAccess:
  • edit OS library definition as content menu item,
  • export via 'save as',
  • correct viewtypes for symbols,
  • import view option,
  • open from command line by cellname, viewname and libraryname,
  • DXF:
  • cell references with negative x scale,
  • CIF:
  • support of text element (type 94),
  • multi threaded result in faster load,
  • support of separator # and / in DS line,
  • Electromask:
  • error message in case of negative coordinates,
  • Eagle:
  • import of spice data,
  • Lasis:
  • handling of filename with capital letters when running under wine,
  • Macros:
  • automatic generation of settings macro within the setup dialog,
  • setShortCut will find the old binding to this key and removes it,
  • support of char, float and long,
  • disable qt warning in LayoutScript,
  • add new method to class cell:
  • element* cell::addBox(rect r,int layer),
  • add new method to class element:
  • rect element::getBoundingBox(),
  • pointArray element::getSelectedPoints(),
  • add new method to class process:
  • static bool process::openBrowser(string url),
  • add new method to class setup:
  • static bool setup::showScale,
  • static bool setup::whiteBackground(),
  • Bug Fixes:
  • path mode and polygon mode will avoid double entered points,
  • incorrect identification of a sector shape,
  • access compressed GDS in file dialog,
  • incorrect interface lock when calling parametric cells from a macro,
  • Boolean Engine may produce touching link line,
  • polygon check on the first point of a polygon may fail,
  • addText use default width,
  • cancel in select cell dialog,
  • correct display of font block,
  • handling of huge path elements,
  • preview of circular shape in case of extreme high circle resolution,
  • recount of selected shapes when using FastCap and FastHenry,
  • avoid invisible menu bar after restart,
  • point in polygon detection for polygons with high density of points,
  • missing sip.so on mac systems to use pylayout,

New in LayoutEditor 20170920 (Sep 17, 2017)

  • NEW FEATURES:
  • automatic ruler option,
  • display of units in the ruler,
  • snap to point with higher performance,
  • boolOnLayer A xor with better performance, now multi threaded in multi core processors
  • TextEditor:
  • support of further text file types,
  • setting of font size will be used to display drc violations,
  • minor adjustments in the graphical user interface,
  • entry of symetric grids,
  • calculation of the center of gravity,
  • FILE FORMATS:
  • OpenAccess:
  • progress counter for loading,
  • open works multi threaded,
  • support of custom vias,
  • support of std vias,
  • dump output supports vias,
  • fix problems in handling of disabled layers,
  • DXF:
  • support of HATCH elements,
  • MACROS:
  • macros can be added to a tool button,
  • add new method to class layout:
  • void layout::addMacroToolButton(string macroName,string parameter,string iconfilename);
  • add new method to class layout3d:
  • void layout3d::addMacroToolButton(string macroName,string parameter,string iconfilename);
  • add new method to class pointArray:
  • point pointArray::centerOfGavity(),
  • add new method to class schematic:
  • void schematic::addMacroToolButton(string macroName,string parameter,string iconfilename)
  • add new method to class setup:
  • static stringList setup::macroPath,
  • add new method to class textEdit:
  • void textedit::addMacroToolButton(string macroName,string parameter,string iconfilename),
  • BUG FIXES:
  • incorrect plugin path for LayoutScript on windows,
  • frame border handling of 'A xor' in Bool On Layer,
  • problem of polygon triangulation in some cases,
  • text to polygon may create self-intersection polygons,
  • size adjust in case of cancelled dialog,
  • snap to intersections for boxes,
  • encrypt macro fails in some cases,
  • drc may cause crash in case many violations,
  • display of dock icon on mac,
  • start script when called by dash and ksh,

New in LayoutEditor 20170530 (May 26, 2017)

  • New Features:
  • DesignRuleChecker:
  • add a new InaccessibilityCheck,
  • LayoutScript:
  • unicode support,
  • oax polygon operator support on Linux,
  • python3 support on Linux,
  • wrapping of operator + - == != for point and pointArray,
  • extend example macros,
  • add inner circle feature
  • cell compare with boolean xor operation
  • TextEditor:
  • supports autoindent,
  • detect encoding of ruby files,
  • display tcl result in TextEditor or message box,
  • option not to store layer settings,
  • File Formats:
  • OpenAccess:
  • update to OpenAccess 22.50p064,
  • trigger oa dump from file open in text editor,
  • fix problem with oas ruby on some platforms,
  • fix oa plugIn load with LayoutScript,
  • ODB++:
  • rotated rectangles,
  • Macros:
  • add new method to class cell:
  • void cell::incircleSelect(int layer),
  • add new method to class drawingField:
  • void drawingField::compareCellXor(string cell),
  • add new method to class drc:
  • void drc::minimumInaccessibilityOnLayer(int layer, int inaccessibility ,bool mergeBefore=false),
  • void drc::maximumInaccessibilityOnLayer(int layer, int inaccessibility,bool mergeBefore=false),
  • add new method to class doubleList:
  • constructor doubleList(),
  • constructor doubleList(doubleList),
  • add new method to class intList:
  • constructor intList(),
  • constructor intList(intList),
  • add new method to class point:
  • constructor point(point),
  • add new method to class pointArray:
  • constructor point(pointArray),
  • add new method to class rect:
  • constructor rect(rect),
  • add new method to class process:
  • string process::startPythonScript(string filename,stringList args=stringList()),
  • string process::startRubyScript(string filename,stringList args=stringList()),
  • string process::startTclScript(string filename),
  • add new method to class rect:
  • constructor rect(rect),
  • add new method to class setup:
  • static string setup::pythonSuffix,
  • bool setup::static bool autoStoreLayerSetup,
  • add new method to class strans:
  • constructor strans(strans),
  • add new method to class string:
  • constructor string(string),
  • add new method to class stringList:
  • constructor stringList(stringList),
  • Bug Fixes:
  • memory leak on some drc checks,
  • snap to point on path,
  • display of mouse help in high resolution displays,
  • correct update of existing cell name after program start,
  • calculation of possible undo steps,
  • display correct oa version,

New in LayoutEditor 20170428 (Apr 25, 2017)

  • New Features:
  • LayoutScript: new easy to use scripting interface for python and ruby,
  • 3d Editor extensions:
  • 3d boolean operation with integrated OpenSCAD,
  • line render with transparent triangle display,
  • Undo and Redo,
  • Deposit will support edge coverage,
  • grid display,
  • ProperiesDialog supports pasting values,
  • FreeRouting update to version 1.3.0,
  • ParametricShapeLibrary extended by s-bend-arc and s-bend2,
  • TextEditor can adjust text size, execution of ruby and python via execute button,
  • support of hi-resolution displays with adjusted font size
  • File Formats:
  • OpenAccess:
  • update to OpenAccess 22.50p062,
  • schematic import reads paths as wire if connect with a net,
  • dump prints net information,
  • schematic wire dots will saved with net information,
  • validation of schematic wire dots,
  • DXF:
  • support of case insensible cell name,
  • ODB++:
  • support of nested steps,
  • support of donut_r apertur,
  • SES:
  • import of unplaced components,
  • support of side and rotation of components,
  • LEL:
  • Fix import of single components in existing library,
  • Eagle:
  • import of components with connected pads,
  • fix problem with rounded corners on small pads,
  • fix read of component with empty label,
  • fix read of label placement,
  • display of internal components in components dock,
  • KiCad:
  • adjust search order of referred components,
  • fix gr_arc import,
  • display of internal components in components dock,
  • OFF:
  • support of 3d file format OFF,
  • Macros:
  • macro template for new macros in TextEditor,
  • handling of additional windows in macros,
  • support of class constructors like point p(34,87);
  • fix macro recording of deposit feature,
  • add new method to class drawingField:
  • void drawingField::sizeLayer(int layer, int size,int type=0),
  • add new method to class layout:
  • void layout::open(string fileName);
  • add new method to class point:
  • double point::length(),
  • double point::distanceTo(point p),
  • double point::distanceToLine(point p1,point p2),
  • double point::distanceToLineAbs(QPoint p1, QPoint p2),
  • add new method to class setup:
  • static double setup::offUnits,
  • add new method to class cell3d:
  • void element3d::addPointArray(pointArray polygon, int level,bool side ),
  • void element3d::addSlantSide(pointArray bottom,pointArray bottom, int levelBottom, int levelTop),
  • void element3d::addSide(pointArray polygon,int levelBottom, int levelTop),
  • add new method to class view3dModule:
  • void view3dModule::deposit(int source, bool invert, int thickness, int destLayer=-1,double egdeCover=0);
  • add new method to class project:
  • project::getlayout3d(layout* ),
  • project::newlayout3d(),
  • add new method to class file:
  • bool fi le::link (string s),
  • Bug Fixes:
  • open designs from Mac OS X finder,
  • sizeAdjust of zero width paths,
  • sizeLayer runs in own thread,
  • PCB change side in case more than one component is selected,
  • problem of search shipped component libraries,
  • sizing the main window in case of full fill with tool bars,
  • PCB setup respects user unit settings,
  • performance improve for circle creation,
  • performance improve for spirale,
  • path to polygon conversion with round caps and high circle resolution,
  • display of the status bar in case of larger font setup,
  • triangulate possible crash on Windows,
  • fracture trapezoid in case first point at upper left,
  • error message in case the TextEditor cannot save files.

New in LayoutEditor 20170115 (Jan 14, 2017)

  • New Features:
  • Sizeadjust have a type option to set the style of the adjustment,
  • Sizeadjust work multithreaded and thereby faster on multi core systems,
  • ShowStatistic includes information on used layers,
  • CopperPour for Printed Circuit Boards,
  • 3d-view deposit model,
  • new dialog for easy entry of boolean operations,
  • mouse wheel zoom is adjustable in SetupDialog,
  • faster schematic component management,
  • SelectCell displays information of arrays references,
  • delete existing rulers,
  • extend component info dialog inside SchematicEditor,
  • path to polygon conversion uses circular default from the setup,
  • File Formats:
  • OASIS:
  • support of standard GDS-properties,
  • stores non existing attributes as properties (like mirrored text, text angle),
  • OpenAccess:
  • support of cell names with special chars,
  • support of component links,
  • extend dump output,
  • schematic loading of views not named schematic,
  • avoid of double loaded schematics,
  • dump on empty views,
  • iPDK_getParamDef to read defValue,
  • MEBES
  • support of version 5,
  • DXF:
  • support of non closed Splines,
  • ODB++:
  • support of rounded round thermals,
  • automatic inversion of negative layers,
  • LEF:
  • export in case of no technology layer definition,
  • LEL:
  • fix problem on components with multi symbols,
  • Eagle:
  • component with more than one symbol,
  • KiCad:
  • support of all new file format features,
  • update PCB foot-prints
  • DXF:
  • warning in case of coordinate range overflow,
  • Macros:
  • add new method to class drawingField:
  • cell oaFindCell(string libName,string cellName,string viewName,stringList parameterName=,stringList parameterValue= ),
  • string oaGetCellName(string libName,string cellName,string viewName,stringList parameterName=,stringList parameterValue= ),
  • method int unusedLayer(int) is fixed,
  • add new method to class cell:
  • void selectShapeWithArea(double min,double max),
  • void deselectShapeWithArea(double min,double max),
  • void sizeAdjustSelect(int value,int type),
  • void sizeAdjustSelect(int valueX, int valueY,int type),
  • add new method to class booleanHandler:
  • void aPlusBDelA(),
  • void aPlusBDelB(),
  • void aMinusBDelB(),
  • void bMinusADelA(),
  • void aMultiBDelA(),
  • void aMultiBDelB(),
  • void aExorBDelA(),
  • void aExorBDelB(),
  • add new method to class view3dModule:
  • void view3dModule::depositReset(),
  • void view3dModule::deposit(int source, bool invert, int thickness, int destLayer=-1),
  • void view3dModule::depositFill(int soucre, bool invert, int toLevel, int destLayer=-1),
  • void view3dModule::depositSetLevel(int soucre, bool invert, int toLevel),
  • add new method to class cell3d:
  • void cell3d::mirrorSelect(int plane),
  • void cell3d::moveSelect(int x, int y,int z),
  • void cell3d::rotateSelect(double angle,int x, int y,int z),
  • void cell3d::deleteSelect(),
  • add new method to class extractionmodule:
  • void extractionmodule::setDetailsResistance(int),
  • set return type of calcResistance() to double (was int before),
  • Bug Fixes:
  • connection build on Windows on multi-processor systems,
  • set cell origin will not terminal EditInPlace,
  • start with schematic on XFCE desktop,
  • layout-pycell start script used outside /opt/layout folder,
  • schematic add placement can cause crash,
  • detection of circular component links,
  • management of sheet components, after deleting source sheet,
  • file names with space on Linux system, if used as command line parameter,
  • command line parameter and autostart macro sometimes causes crash,
  • reset undo buffer in case EditInPlace is ended,

New in LayoutEditor 20161129 (Nov 27, 2016)

  • NEW FEATURES:
  • LayoutEditor:
  • EditInPlace with choosing from list,
  • global copy layer,
  • relink cells,
  • improved fracture to trapziod,
  • Boolean operations with delete to reduced version including toolbar,
  • editable cell/view name for OpenAccess designs,
  • SchematicEditor:
  • separate symbol editor,
  • selectable symbols for schematic ports,
  • component links,
  • direct open of OpenAccess schematic from OpenAccess symbols,
  • support of LTSpice XVII,
  • example basic.lel and analogLib.lel for loading OpenAccess example created with a different tool,
  • 3d Editor:
  • extrude to 3d editor with pointArray as edge,
  • several new supported file formats (see below),
  • LibraryManager;
  • option to start LayoutEditor with it,
  • text file handling,
  • context menus,
  • improved OpenAccess support,
  • TextEditor;
  • integration OpenAccess Script (linux only), TCL and Python in the TextEditor,
  • OpenAccess dump feature,
  • FILE FORMATS:
  • OpenAccess:
  • update to version 22.50,
  • now included in all Windows and Linux packages,
  • correct view type for schematic,
  • adjust purpose/datatype for symbols and schematic,
  • avoid crash in case a referred techLib does not exist,
  • remove/rename/new cells and view in libraries,
  • import parameter from parametric cells to component,
  • save of port types,
  • dump feature,
  • Gerber:
  • support of aperture oblong,
  • support of aperture regular polygon,
  • Rhino:
  • export to Rhino 3dm format in 3d editor,
  • POV:
  • export to pov format in 3d editor
  • DXF:
  • correct layer table in 3d editor export,
  • GDSII:
  • modified GDS format for export/import in 3d editor,
  • MACROS:
  • add new method to class setup:
  • static double setup::povUnits,
  • void setup::useOaVersion(string) (python only)
  • add new method to class view3dModule:
  • void view3dModule::extrudeCurved(int source, pointArray edge, int destLayer=-1),
  • add new method to list classes:
  • void intList::removeAt(int pos),
  • void intList::insert(int pos, int value),
  • void intList::swap(int pos1, int pos2),
  • void doubleList::removeAt(int pos),
  • void doubleList::insert(int pos, double value),
  • void doubleList::swap(int pos1, int pos2),
  • void stringList::removeAt(int pos),
  • void stringList::insert(int pos, string value),
  • void stringList::swap(int pos1, int pos2),
  • correct ++i and i++ with returning a value,
  • arrays [] and intList auto convertion,
  • several minor bug with macros in 3d editor,
  • fix macro recording for extrude,
  • fix macro recording for sizeLayer,
  • fix macro recording for minimumInsideOrOutside,
  • show error message on tcl code execution,
  • BUG FIXES:
  • place reference arrays with empty cells,
  • update displayed layers in list after macro execution,
  • remove overlap with overlapping in 3rd hierarchy level and deeper,
  • minimumInsideOrOutside causes false error if boolean operation is splitted to regions
  • DRC enclosure for special polygons,
  • default values after parameter reset,
  • limit bezier iteration to avoid hanging,
  • correct update of userunits in user interface,
  • maintenance expiration warning in status bar,
  • detection of oa library in home folder,
  • correct display of loaded OpenAccess netlists,
  • instance name reading from OpenAccess netlists,
  • auto detection of requirement of secure option,

New in LayoutEditor 20160801 (Nov 27, 2016)

  • NEW FEATURES:
  • update Japanese and French translation,
  • autosave will create compressed files,
  • drc violation list can be sorted via the content menu in different ways,
  • improved PCB package selection dialog,
  • possibility to reset all setting from command line,
  • visualisation that a autostart macro was started,
  • better toolbar setup for narrow screens by adding additional toolbar breaks,
  • integration of qrouter as digital router for e.g. the OpenCellLibrary,
  • automatic setup for qrouter,
  • FILE FORMATS:
  • DEF:
  • import with multi statements per line,
  • LEF:
  • import with multi statements per line,
  • Eagle:
  • reading lbr attributes as component parameter
  • ODB++:
  • support of oval aperture,
  • support of diamond aperture,
  • support of octagon aperture,
  • KiCad:
  • support of rotated ovals,
  • fix correct rotation of same arcs,
  • Gerber:
  • processing of '-' operation in parametric macros,
  • Excellon:
  • auto detection in case of unknown file name extension,
  • fix problem with negative coordinates,
  • MACROS:
  • add new method to class setup:
  • static stringList setup::defSpecialnets,
  • static string setup::defExtra,
  • static int setup::lefPitchHorizontal,
  • static int setup::lefPitchVertical,
  • static string setup::lefExtra,
  • possibility to hide hideToolbar for netlist, extraction, background, drc,
  • BUG FIXES:
  • scale full with only one text element,
  • OpenCellLibrary layer setup of metal4/drc check of metal4,
  • VHDL import: entity port marked as external node, uppper any name on port_map,
  • disable text to polygon in autosave,
  • correct usage of set autosave time,
  • external tool callbacks trigger screen refresh if required,
  • python macro when using qt5 as GUI library,
  • save drc violation will save violation type,
  • schematic will save default PCB package,
  • new start option to avoid start up problem with LXDE

New in LayoutEditor 20160425 (Nov 27, 2016)

  • NEW FEATURES:
  • improvements of the garphical user interface for screens with small width,
  • control of external autorouter with a macro,
  • update PCB autorouter freeRouting to 1.2.45,
  • better performance for fracture line and fracture box (now multi threaded),
  • improved visualisation of alignment features,
  • optional toolbar with the cell display settings,
  • optimized display of highlighted shapes,
  • easy change of white/black background,
  • connection to the new web shop for a easy maintenance extension,
  • hierarchy with group and flat in the 3d editor,
  • properties dialog and view features in the 3d editor,
  • FILE FORMATS:
  • DEF:
  • export
  • import read node names for external nodes,
  • LEF:
  • export
  • import reads via technology parameter,
  • ODB++:
  • correct precision of output digits,
  • DXF:
  • leading digits in layer names will be interpreted as layer numbers,
  • correct precision of output digits,
  • KiCad:
  • fix problem with component orientation,
  • automatic loading from pretty subfolders,
  • Gerber:
  • force one aperture in the case no shapes with effective aperture,
  • MACROS:
  • add new method to class setup:
  • static void setup::dataStore(string name, string value),
  • static QString setup::dataGet(string name),
  • static void setup::dataClear(string name),
  • static void setup::dataClearAll(),
  • add new method to class layout:
  • string layout::getToolbarState(),
  • void layout::setToolbarState(string),
  • add new method to class schematic:
  • string schematic::getToolbarState(),
  • void schematic::setToolbarState(string),
  • add new method to class drawingField3d:
  • void drawingField3d::selectAll(),
  • void drawingField3d::selectVisible(),
  • void drawingField3d::deselectAll(),
  • void drawingField3d::meshSelect(),
  • void drawingField3d::meshDeselect(),
  • void drawingField3d::invertSelect(),
  • add new method to class cell3d:
  • void cell3d::selectCellref(string cellname),
  • void cell3d::selectAll(),
  • void cell3d::invertSelect(),
  • void cell3d::selectVisible(),
  • void cell3d::deselectAll(),
  • void cell3d::meshSelect(),
  • void cell3d::meshDeselect(),
  • add new method to class textEdit:
  • int textEdit::findFile(string filename),
  • void testEdit::reload(),
  • macro recording for the features: scaleFull, scalePlus, scaleMinus, print, screenshot, select cell by name, set grid,
  • macro recording add for the SetupDialog,
  • BUG FIXES:
  • removeSmallEdges on stairstep edges,
  • gotoXY will set the center of the screen and displays with user units,
  • 3d extrude/rotate with no selected shapes,
  • 3d extrude/rotate on selected cell references,
  • missing " in macro recording for netlistLoad,
  • pylayout plugin path on Windows 10,

New in LayoutEditor 20160125 (Nov 27, 2016)

  • NEW FEATURES:
  • complete rework of 3dView,
  • Fracture-lines on curved shapes,
  • SnapShapes is faster,
  • printing in the TextEditor,
  • TextEditor can set lexer per menu,
  • smaller adjustment in the graphical user interface,
  • FILE FORMATS:
  • DXF:
  • optional output of ARC and bulge values,
  • Gerber:
  • option to optimize output file on a minimum path distance,
  • correct export of paths with squared caps,
  • fix problems with files >1GB,
  • KiCad:
  • several adjustment releated to new KiCad version 4,
  • support of gr_arc, fp_arc, models and trapezoid,
  • new package/footprint management,
  • Eagle:
  • reading multi sheet schematics,
  • import of sector shapes,
  • STL:
  • units adjustable in setup,
  • MACROS:
  • add new method to class drawingField:
  • cell * drawingField::copyLayerToCell(int layer),
  • void drawingField::deleteAllCell(),
  • add new method to class setup:
  • static bool setup::gerberSaveOptimize,
  • static double setup::stlUnits,
  • static stringList setup::callbackPath,
  • static stringList setup::model3dPath,
  • static bool setup::dxfSaveArc,
  • add new method to class process:
  • stringList process::getCommandlineParameter(),
  • add new method to class netListModule:
  • bool netListModule::place(string deviceName,point pos, strans trans),
  • bool netListModule::place(netListDevice *device,point pos, strans trans),
  • add new method to class schemticDisplay:
  • void schematicDisplay::updateNetlist(),
  • void schematicDisplay::updateCurrentNetlist(),
  • add new method to class sheet:
  • string sheet::getUnusedDevicename(string prefix),
  • sElement* sheet::addPolyline(pointArray p,int red, int green, int blue),
  • sElement* sheet::addPolygon(pointArray p,int red, int green, int blue),
  • sElement* sheet::addArc(pointArray p,int red, int green, int blue),
  • sElement* sheet::addText(point p,int red, int green, int blue, string text),
  • sElement* sheet::addCircle(point p1,point p2,int red, int green, int blue),
  • sElement* sheet::addRect(point p1,point p2,int red, int green, int blue),
  • sElement* sheet::addBus(pointArray p),
  • sElement* sheet::addBusPort(point p,string text),
  • sElement* sheet::addGround(point p),
  • sElement* sheet::addWire(pointArray p),
  • sElement* sheet::addPlacement(string name,string lib, point pos, strans trans_),
  • sElement* sheet::addPlacement(component *, point pos, strans trans_),
  • add new method to class sElement:
  • point sElement::getPortPos(string name),
  • add new method to class view3dModule:
  • void view3dModule::syncView(),
  • void view3dModule::extrudeCurrentCell(),
  • void view3dModule::extrudeCurrentSelection(),
  • void view3dModule::extrudeCurrentView(),
  • void view3dModule::extrude(int source, int bottomLevel, int topLevel, int destLayer=-1),
  • void view3dModule::extrudeSlant(int source, int bottomLevel, int topLevel, int extensionBottom, int extensionTop,int destLayer=-1),
  • void view3dModule::rotate(int source,double angle=360,int spiral=0,int destLayer=-1),
  • void view3dModule::loadModel(int source,int zLevel, string rotation),
  • BUG FIXES:
  • openGL problem on windows 10,
  • fast GUI update in a macro may cause crash,
  • completion of file extension in screenshot dialog,
  • bundle files as command line parameter,
  • bundle files will save as bundle (not only the layout design),
  • snap center calculates center correctly,
  • execute macro will display edited windows,
  • '..' parsing in paths of schematic libraries,
  • restoring toolbars problem after program start,
  • design import may change current display,
  • 3d render model of invisible layers,
  • pylayout missed some plug-ins,
  • double display of license dialog in the case a license expires,
  • handling the extraction parameter after import in the EditComponent dialog,

New in LayoutEditor 20151012 (Nov 27, 2016)

  • NEW FEATURES:
  • graphical updates in the user interface,
  • DesignRuleChecker:
  • MinimumSize will no longer report errors on round polygon ends,
  • exactInside and maximumInside will also report shape on the error layer,
  • SnapShapes works faster,
  • SeparateHoles works faster,
  • Undo/Redo in TextEditor,
  • improved FlatDialog dialog,
  • update PCB autorouter FreeRouting to version 1.2.44
  • upgrade of pylayout, the python extension of the LayoutEditor, to python version 3.5 on Windows,
  • FILE FORMATS:
  • GDSII:
  • fix problem on splitting to large polygons,
  • loading of node elements as single point path,
  • SES:
  • import adjusts components placments of existing components,
  • DWG:
  • integrated support of a DWG to DXF converter. Converter itself is freeware and needs to be installed separate,
  • DXF:
  • fix problem with # in cellnames,
  • add support of rotated cell arrays (as far as possible in DXF),
  • Spice:
  • fix several issue on import for layout versus netlist,
  • MACROS:
  • support of arrays for the types int, double and string int i[4,5];
  • support of ++variable operator ++i;
  • support of variable definition in for loops for(int i=0;i

New in LayoutEditor 20150625 (Jun 24, 2015)

  • New Features:
  • autosave feature,
  • remove rotated arrays,
  • option to ignore datatypes in BuildConnections,
  • File Formats:
  • Gerber
  • user units and database units are stored in the Gerber macro,
  • option to disable to save regular polygons as circle,
  • layer names containing \ or /
  • file extension for designs with only one layer,
  • DXF
  • correct scale for exporting circles,
  • POLYLINES with different layer in VERTEX and POLYLINE section,
  • IPC2581
  • support for import,
  • KiCad
  • fix problems with file names containing spaces,
  • Macros:
  • add new method to class setup
  • int setup::autosaveTime,
  • bool setup::gerberSaveCircle,
  • intList setup::getNetlistNotUseDatatype(),
  • void setup::addNetlistNotUseDatatype(int),
  • void setup::clearNetlistNotUseDatatype(),
  • add new method to class drawingField
  • void drawingField::removeRotatedCellArrays(),
  • Bug Fixes:
  • format selection in the 3d export,
  • handling files with double extension on Mac OS X,
  • modifiedCorners on special polygons,
  • quoted file names in EditComponent dialog,
  • path handling of components using package layouts,
  • macro parsing of -0.000.

New in LayoutEditor 20150416 (Apr 16, 2015)

  • New Features:
  • macro encryption,
  • open macro remembers last path,
  • schematic driven layout for all LayoutEditor versions,
  • LayoutEditor free version (without a license key) works with IC designs up to 500 shapes and PCB designs up to 10 devices,
  • reorganize shipped macros,
  • better performance of BuildConnections,
  • PCB setup dialog,
  • PCB side change
  • show existing route in RouteMode,
  • linking NodeMode with schematic,
  • linking SelectEditMode with schematic,
  • display device name next to refered cell name,
  • adjustable text size in SchematicEditor,
  • option of display any component port,
  • unconnected component port are marked,
  • File Formats:
  • Gerber: fix parsing problem with commands starting with (,
  • Eagle: import netlist form brd file,
  • KiCad: add support for import (PCB, schematic, library),
  • ODB++: rework of import/export, support of compressed files,
  • DSN: export as normal file format,
  • SES: import as normal file format,
  • 3d view export to STL format,
  • Macros:
  • encryption of macros,
  • add new methods to class layout
  • string layout::getStatistic(),
  • void layout::setSnapToGrid(bool b),
  • void layout::setSnapToPoint(bool b),
  • void layout::setSnapToMiddle(bool b),
  • void layout::setSnapToLine(bool b),
  • void layout::etSnapToCenter(bool b),
  • void layout::setSnapToIntersection(bool b),
  • add new method to class setup
  • void setup::resetToolbars(),
  • Bug Fixes:
  • storing of PCB placement mode after shutdown,
  • select visible on cellrefs,
  • update of place list,
  • mirror of partial selected shapes,
  • DRC no boxes in rotated references,
  • signing shipped openSource autorouter on Mac OS X,
  • high resolution display on Mac OS X,
  • layerNum missing in pylayout,
  • scaling of 45 deg rotated EIP,
  • 3d view export to DXF from model view,
  • layerTranslator in pylayout,
  • return var type of iPDK_getParameterValue,

New in LayoutEditor 20150208 (Feb 7, 2015)

  • New Features:
  • Adjustable transparency of background images,
  • Fracture to lines has additional parameters overlapping and keep small shapes,
  • External parametric cell generator can set cell data,
  • Device multiplier for components,
  • Hierarchical boolean inversion of a single layer,
  • Optional editing of FastCap / FastHenry input file,
  • Grid is used in SchematicEditor in case of no snapping,
  • interactive simulation results probing in SchematicEditor,
  • Close files in TextEditor from file list,
  • TextEditor can used as console to external tools,
  • Setup for automatic placing is stored/restore with program shutdown,
  • Display port names in the schematic wire mode,
  • Support of multi symbol component in the SchematicEditor,
  • Place mode option for PCBs,
  • Interface for external autorouter,
  • DRC for circle radius,
  • Inverted circle array in the parametric shapes library,
  • File Formats:
  • Gerber: option to save arc with circular interpolation, support of calculated parameter, export no longer needs to flat the design, support of negative polarity,
  • Eagle: import of eagle schematics, import of lbr file format as component libraries, support of some further parameters on brd files like roundness,
  • Excellon drill format import,
  • Macros:
  • Add new member to class bool setup::gerberSaveArc,
  • Add new method to class cell: void cell::fractureLineSelect(int lineSize,int overlap=0,bool keepSmallShapes)
  • Add new method to class backgroundModule: void backgroundModule::backgroundTransparency(int handel,int value)
  • Add new method to class backgroundModule: int backgroundModule::backgroundTransparencyGet(int handel)
  • Add new method to class drawingField: pointArray drawingField::getPoints()
  • Add new method to class schmaticDisplay: void schmaticDisplay::setProbeMode(plotData data)
  • Add new method to class layers: static int layers::maxLevel()m static int layers::findLevel(int i), static int layers::globalVia()
  • Add new method to class setup: bool setup::placeModeForPCB; bool setup:gerberInverseShapesOnOtherLayer,
  • Add new method to class drc: void drc::circleRadiusOnLayer(int min, int max, int layer)
  • Add new method to class layer: bool layer::isVia(), bool layer::isConductor()
  • Add new class plotData,
  • Bug Fixes:
  • Force OA version to subversion starting with 0,
  • 3d view export on Linux to pixel formats,
  • DRC self-intersections check problem on connection lines to inner holes,
  • Parsing of parameter in generated netlists,
  • String::matchParenthesis wrong close parsing on sequence like (()/()),
  • Connectivity extraction for references with global vias,
  • Schematic netlist extraction problem on global ports,
  • Rotation order in EDIF export,
  • Schematic SVG export on Ground symbol,
  • Display problem on paths with small edges,
  • Gerber rotation on aperture macros, macros with identical names, interpolation of arcs, one digit positions,
  • Boolean engine resolution problem for huge coordinates,
  • Macro recording for boolOnLayer with layer delete.

New in LayoutEditor 20141204 (Dec 3, 2014)

  • SchematicEditor:
  • extension of the OpenCellLibrary: parameric cell for npn transistor, multi emitter transistors, multi collector transistors,
  • LTspice integration on Mac,
  • NGspice integration on Mac,
  • add optional type for ports,
  • increases dot size for better visibility,
  • MOS extraction will extract source/drain area and perimeter,
  • parameter dialog shows optional parsed values next to the formular,
  • netlist generation
  • can handle internal nodes,
  • convertion to scientifc notation,
  • convertion to engineering notation,
  • detection of native LTspice library folder,
  • New Features:
  • better selection of shapes,
  • entry callback path as list,
  • auto check on valid macro folder,
  • auto detection of oa version when using PyCell,
  • auto detection of callback path if not set,
  • scale feature with numeric entry,
  • execute of Tcl file from the TextEditor,
  • fracture to lines,
  • external parametric cell creation,
  • Macros:
  • add continue for loops,
  • add new member to class setup: string setup::macroDirectory,
  • add new member to class setup: string setup::autostartMacro,
  • add new method to class process: bool process::windows(),
  • add new method to class process: bool process::linux(),
  • add new method to class process: bool process::mac(),
  • add new methods to class cell: int cell::countSelectPoints(), int cell::countSelectPath() int cell::countSelectBox(), int cell::countSelectPolygon(), int cell::countSelectCellref(), int cell::countSelectCellrefarray(), int cell::countSelectText(),
  • add new methods to class cell: void cell::fractureLineSelect(int lineWidth),
  • add new methods to class layers: int layers::technologyLayerGetParameter(int layer,int parnum), int layers::technologyLayerGetType(int layer),
  • add new methods to class layer: int layer::get3dLevel(), int layer::get3dThickness(),
  • add new methods to class layout: int layout::getLayer(string lable, int value=0),
  • add new methods to class layout: string layout::getItem(string caption,string lable,stringList values);
  • add new methods to class drawingField: void drawingField::scale(double scale), void cell:scaleSelect(point center,double scale),
  • add new methods to class drawingField: void drawingField::saveLayer(string fileName,int layer);
  • add new methods to class setup: void setup::set(string parameter,string value);
  • add iPDK_paramExist and iPDK_getParameterList for callbacks only in tcl and C++ macros,
  • add global parameter in callbacks,
  • add support of powerOf operator,
  • File Formats:
  • LT-Spice schematic: remove not needed wire dots after import,
  • LT-Spice schematic: import of port type,
  • LT-Spice schematic: export added,
  • VHDL netlist export,
  • verilog netlist export,
  • Bug Fixes:
  • 3d view on Windows 8.1,
  • netlist update after renaming ports/wires,
  • insert slots feature for complex shapes,
  • undo after some operations,
  • pylayout on Mac OS X,
  • improved 64 bit support for calling external tools,
  • autocorrection of wrong library setup,
  • PyCell installation path on Linux,
  • checking display and edit status of schematic components,
  • convertion to scientific notation in macro class string,
  • setup problem for integrated translator,
  • crash in circular callback calls,
  • iPDK_getParamDef callback returned incorrect values,
  • search path for oa plugins on Linux,
  • macro recording for fracture features,
  • dublicate values in intersection calculation,
  • selection of invisible shapes in fselect,
  • locked layer were ignored from some features,
  • static oa plugin can crash on missing plugins,

New in LayoutEditor 20140908 (Sep 5, 2014)

  • New Features:
  • DesignRuleChecker: new check "no pathes with spices",
  • DesignRuleChecker: MinimumElementsDistance has better performance,
  • DesignRuleChecker: WidthDependentDistance has better performance,
  • grid setting will be restored on program start,
  • User Interface:
  • improved editing of shape attributes,
  • aborting runing macros by starting a other macro,
  • copy to layer now also part of reduced version,
  • Macros:
  • add new method to class: drc::noSpikesOnLayer(int layer,bool sharpAngles=false),
  • add new method to class: extractionModule::calcResistance(pointArray p, int port1, int port2);
  • layout::getOpenFilename and layout::getSaveFilename have optional filter on file names,
  • File Formats:
  • DXF: avoid quote in layer names,
  • DXF: add support of Splines,
  • OpenAccess: support of cell names with procent sign,
  • Bug Fixes:
  • program start problem on windows due to openGl init,
  • manual number entry with dots for grid settings,
  • movement from move/scale triggered by context menu will be on grid,
  • LVS on designs created with older releases,
  • Undo sets design status to unsaved,
  • addLayer in booleanTool for rotated reference arrays,
  • update of layer list after closeing the layer manager on Mac,

New in LayoutEditor 20140405 (Apr 7, 2014)

  • New Features:
  • manual is available for offline use, download on the general download page
  • SchematicEditor and TextEditor are now part of the basic and reduced version
  • adjustment of the mixing mode of BackgroundImage,
  • User Interface:
  • scale on selected elements will be performed on demand after any paste,
  • Macros:
  • add new method to cell class: cell::selectedElement(element *e==NULL),
  • add extend method to cell class: cell::deselectText( string text, int layer=-1); optinal parameter layer
  • add extend method to cell class cell::selectText( string text, int layer=-1); optinal parameter layer
  • add new method to element class: ccell::addPath(pointArray points,int layer,int width),
  • File Formats:
  • import of orcad netlists,
  • SVG import can now handle data path repeation commands,
  • Bug Fixes:
  • display problem of the slider on some platforms,
  • high processor load due to an unneeded often screen update,
  • display problem of styles other than layout,
  • mapping of partial selected pathes,
  • self-intersections after all angle rotation of polygons due to rounding errors,
  • undo function respect better available free memory,
  • possible crash on undo function,
  • rendering of some fonts,
  • circular default of 0 no langer causes crash,
  • BoolOnLayer with identical source and destination layer,
  • better entry of layer number in dialogs,
  • Mac version is now correctly signed,

New in LayoutEditor 20140214 (Feb 12, 2014)

  • New Features:
  • SeparateHoles to separate inner holes as normal polygons, useful for some DRC,
  • InsertSlots into polygons and paths, used to reduce layer stress in wide metal layers,
  • DensityFill to automatic fill area with low shape density,
  • AutomaticPlacement,
  • SelectLabeledShapes
  • User Interface:
  • user interface for ConvertToMesh,
  • some additional feature moved to basic and reduced version,
  • Macros:
  • add new method to layer class: layer::red(), layer::green(), layer::blue(),
  • add new method to cell class: cell::slotSelect(int slotWidth, int minSlotLength, int maxSlotLength, int edgeSpacing, int minSlotspacing ),
  • add new method to drawingField class: drawingField::densityFill(int layer, double density, int shapeSpace, int minWidth, int minSpace, int frameSize),
  • add new method to netListModule class: netListModule::void autoPlace(bool placeDigital,bool placeAnalog,int srLayer, int analogDistance),
  • convertion double to int will round at 9th digit to avoid problems with limited resolution on double numbers,
  • debugging to console possible on Linux and MAC,
  • File Formats:
  • CSV export supports 9 digits resolution,
  • Bug Fixes:
  • Sizeadjust can now handle splitting of polygons correctly when the sizing eliminates a thin connections,

New in LayoutEditor 20140102 (Jan 3, 2014)

  • New Features:
  • LayerDensity measurement feature
  • RemoveOverlap runs faster
  • DesignRuleChecker:
  • new OnlyRectangle check,
  • minimumInsideOrOutside check,
  • User Interface:
  • add reporting of self-intersecting polygon during file load,
  • more simple entry of user units in most dialogs,
  • Macros:
  • add new method to textEdit class: needLayoutEditor(bool newOne=false), needSchematicEditor(bool newOne=false), save(), saveAs(),
  • add new method to drc class: minimumInsideOrOutside(int distance,int insideLayer, int layer1, int layer2=-1, int layer3=-1), onlyRectangle(int layer)
  • add new method to cell class: detachHolesSelect(outlineLayer,holeLayer),
  • range check in class stringList,
  • error message also in status bar,
  • backup file ending with ~ will be not added to main menu,
  • File Formats:
  • GDS: auto detection of gzip files (independent of the file extension), detection on circular cell references in writing,
  • OASIS: auto detection of gzip files (independent of the file extension),
  • DXF: DXF units can be separate set (was fix to user units before),
  • DXF: check on legal layer names and legal cell names,
  • LTspice: import of busports, import devices with multi parameter in a single schematic line,
  • GDS and OASIS: better load performance for designs with complex shapes,
  • EPS: add HiResBoundingBox information to be compatible with more tools,
  • SchematicEditor:
  • parametric shape library: add a array of labels,
  • TextEditor:
  • macros for better netlist handling,
  • import macro for calibre drc results,
  • Bug Fixes:
  • boolean operations with shapes smaller than 3 database units,
  • macro call of drawingField::sector(),
  • ODB++ import of OC surfaces with circles,
  • DRC: width depended distance on polygons with hole at the edge,
  • DRC minNotches: chamfer will not mark as a violation,
  • DRC minimumEnclosure: can handle rings,
  • cutting of complex polygons,
  • attaching files with identical hierarchy,
  • problem with menu display,
  • enable undo on some actions in the SchematicEditor,
  • DC2 format import parsing correct layer,
  • display of huge arrays (>1000*1000),
  • circle detection on rounded boxes,
  • polygon self-intersection check does not find any intersection,
  • polygon check 'not needed points' does no longer break vertical and horizontal edges,

New in LayoutEditor 20130812 (Aug 12, 2013)

  • New Features:
  • detection of file format for unknown file name extensions,
  • further levels of PaintDetails for huge designs,
  • improved RemoveSmallEdges will maintain vertical and horizontal lines,
  • support MEBES version 1-5 and MEBES job files,
  • mircoQr barcodes,
  • grayscale import of bitmaps as designs,
  • SizeLayer:
  • a layer wide Boolean invert without the need to draw the bounding box first,
  • DesignRuleChecker:
  • new maximumDistance check (as option of the minimum distance check),
  • adjust the width dependence distance check, the check is more strict now,
  • removing violations on a noDRC layer,
  • improved dialog for some checks,
  • User Interface:
  • ShowStatistic and SelectStatistic will be displayed in the TextEditor,
  • improved dialog for some design rule checks,
  • Macros:
  • add new method to drawingField class: deleteLayer(sourceLayer, sourceDatatype), moveLayer(sourceLayer, sourceDatatype, destLayer), copyLayer(sourceLayer, sourceDatatype, destLayer), sizeLayer(int layer, int size), unusedLayer(int), copyArea(rect,layerSource,layerDest),
  • add new method to drc class: removeNoDrcViolations(layer),
  • add new method to cell class: minkowskiSumSelect(pointArray pa), getDensityLayer(int layer, QPoint pos, int sizeX, int sizeY, int spaceX, int spaceY, int nx, int ny),
  • macro recoding of different group functions,
  • overflow check for numbers,
  • File Formats:
  • detection of file format for unknown file name extensions,
  • gerber: support of macro primitives type 4 and type 5, offset and scaling support,
  • MEBES: versions 1-5 are supported, MEBES job files,
  • DEF: process bar added,
  • OASIS: compression for box type 8426,
  • LTspice: add device parameter import,
  • DC2-NPGS support,
  • SchematicEditor:
  • optional centering during symbol import,
  • handling of a wire connected only by a name and not by a wire,
  • parsing component parametesr using scientific notations,
  • avoid display of upside down text,
  • moving wire labels,
  • TextEditor:
  • execution of text designs like CIF will open the design in the LayoutEditor window,
  • Bug Fixes:
  • windows installer uses incorrect macro path,
  • problem with shapes having multiple triangular holes,
  • generation of spaes after complex xor Boolean operations,
  • CDF parser for list data,
  • possible crash if a OA library does not exist,
  • DEF import of very lage power nets,
  • drcEnclosure for paths as an enclosed shape,
  • problem with stripEmptyCells if currentCell is empty,
  • write symbols to OA,
  • sizing problem caused by spice

New in LayoutEditor 20130224 (Feb 25, 2013)

  • New Features:
  • SearchPattern
  • add further extraction methods: bipolar junction transistors (lateral and vertical) and thin film resistors
  • design rule checker: add check for exact shape size
  • DeleteZeroWidthPath
  • User Interface:
  • choose shape from list (e.g. in PropertiesMode ) will only show shapes on visible layers
  • sorting layer control by 3d level
  • LVS: display of additional cells, one grouped message for this warning,
  • add OpenAccess parametric cell into from the PropertiesMode
  • Macros:
  • correct macro recording for minimumEnclosure
  • floor/round function identical to std C++
  • access new toolBar from macros
  • add a feature to select labeled shapes only (selectLabeledshapesOnLayer in class cell)
  • special copy features like: copyDimension, copyTouching and copyOverlapping
  • File Formats:
  • oasis: support of storing layer names on layer 1024 and bigger
  • oa: universal plugin for all oa versions
  • SchematicEditor:
  • bipolar pnp and npn transitor for the OpenCellLibrary
  • resistor for the OpenCellLibrary using the bipolar well
  • Bug Fixes:
  • possible crash on LVS on designs with more devices than in the schematic
  • LVS on cells created with different versions of the layout editor
  • correct macro recording for minimumEnclosure
  • in BoolOnLayer and some design rule checks can result in rounding errors for some designs
  • tcl support for some platforms missing
  • Sizeadjust for shapes with edges with less than 10 database units length,
  • stripEmptyCell will delete cells with just reference to other empty cells as well,
  • windows printing problem
  • macro access to self defined tool bars
  • possible crash on system without 3d support`

New in LayoutEditor 20130102 (Jan 3, 2013)

  • New Features:
  • DesignRuleChecker:
  • performance improvement for most checks by use multi thread technology, add check exact-inside and maximum-inside,
  • a device extraction tool (beta, further extension planned),
  • BooleanTools:
  • BoolOnLayer uses multi thread technology, thereby much faster, option to merge frame borders,
  • boolean add to and substract from to the context menu of the default mode,
  • locking of layers,
  • handling of creating and modification date e.g. used in GDSII files,
  • better performance for StripUnneeded,
  • SelectStatistic,
  • a lot of features of the full version are now also part of the reduced version,
  • User Interface:
  • display apple key instead of Ctrl key on mac systems,
  • some minor display style adjustments,
  • display units on all dialog like align features, move single point dialog,
  • edit-in-place can be started by choosing from a list,
  • display error messages and debug output in an open text editor,
  • netlist managing/export is extended,
  • Macros:
  • support of reading/writing binary files,
  • DesignRuleChecker: read out detected violations,
  • cropWithSelection and punchWithSelection enabled for macro recording,
  • correct macro recording for BoolOnLayer,
  • setting engineering notation in strings,
  • File Formats:
  • GDS: option to validate stored files,
  • DXF: check/replaces for . and () in layer name (not supported by other software),
  • Gerber: support of macros, G-codes G70+G71 are supported, all *.gt? and *.gb? extensions are linked with the gerber format,
  • Ltspice: import of ports,
  • Eagle: support of rotated rectangles,
  • oa: switched to plugin, allows to use own oa versions,
  • SchematicEditor:
  • device extraction information can be stored with each component,
  • Cmim device for the OpenCellLibrary,
  • fix problem with global ports,
  • TextEditor:
  • optimize focus with the search feature,
  • execute shortcut on ctrl+e,
  • enable adding macros to the menu,
  • integrate circuit simulation into the main menu,
  • MacroRecording will end in a text editor,
  • high-lighter for error reports,
  • Bug Fixes:
  • memory leak in merge select feature,
  • ยต display problem in some dialogs,
  • correct display of schematic wires with just a single point,
  • incorrect display of license dialog, when a license expires,
  • DRC width dependent distance show non existing errors,
  • double devicename parameters of components,
  • correct detection of circles/arc, special meanders are detected correctly in the properies dialog,
  • identical cell references in copy&past were not always detected,
  • problem with mac native color picker,
  • correct quit while operations are running,
  • problem with vectorization of some pixel graphics,
  • rounding problem by calculation intersections in the boolean engine,
  • calling layout macro features from the schematic window,