What's new in LayoutEditor Portable 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 Portable 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 Portable 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 Portable 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 Portable 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 Portable 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 Portable 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 Portable 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 Portable 20180129 (Jan 26, 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 Portable 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 Portable 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 Portable 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 Portable 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 Portable 20140908 (Dec 3, 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 Portable 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 Portable 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 Portable 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 Portable 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 Portable 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 versions
- SchematicEditor:
- bipolar pnp and npn transitor for the OpenCellLibrary
- resistor for the OpenCellLibrary using the bipolar well
- TextEditor:
- no changes
- 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 Portable 20130101 (Feb 25, 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
New in LayoutEditor Portable 20120824 (Feb 25, 2013)
- New Features:
- support of background images in the printing feature
- QR-Code generation
- MapLayer feature
- optional autostart macro
- multi threaded boolean merge for a more performent BoolOnLayer and DesignRuleChecker
- DRC: new WidthDependentDistance
- feature for a simple delete of old drc results
- ModifyCorners works on partial selected shapes
- a design wide DeleteLayer feature
- a design wide DeleteText feature
- a design statistic feature
- SelectLayer and DeselectLayer
- Fracture feature
- LayerManager can import layer settting from InductEx layer files
- support of new linux distributions like ubuntu 12.04, fedora 17
- installer for 64-bit windows
- User Interface:
- a feature search with in the help dock window
- PropertiesMode allows to choose the element from a list
- lock button in PropertiesMode for boxes and rectangular polygons to keep size
- improved dialogs in the DesignRuleChecker
- short cut access of submenus via ALT+ first letter
- starts in free version without asking for a license key
- paste from clipboard zooms to the pasted shapes
- an optional tool bar with align features
- selecting cells to view can handel stacked references
- update check in the background
- all measurement feature show results with units
- setup checking before feature execution for many features
- choose layer by name from any dialog next to the layer selection by number
- align feature with nummerical entry of align position
- BoolOnLayer with option to delete destination layer
- end mode from all available modes by mouse
- free hand draw with the path mode
- selected shapes on hidden layers are displayed grey
- update of Japanese and German translated user interfaces
- Macros:
- add debug features
- support of floating point numbers notated like 1.0E+99 (1.0E99 works before)
- a optional autostart macro
- accessing NULL pointer objects in a macro results in an error message
- ExecuteMacro while a macro is runnung allows to abort a macro
- add set method in the stringList class
- support of absolute file names for includes statements and calling external tools
- add feature SeparateLayer and ExtractLayer to the macro interface
- callback macros are also search in a callback folder path
- correct codec reading for included files
- access to components class
- export and import of 3d models from/to the 3d view
- File Formats:
- GDSII: export splits large polygon in a more efficient way, splitting problem is fixed, option to store enabled layers only, option to store pathes as polygons, fix some problems with non standard GDS files
- DXF: import/export of layer colors, support of DIMENSIONS and POINT sections, asymetric scaled INSERT
- Bundle: also save background images and its placement
- MacroDump added to store shapes as a LayoutEditor macro
- OASIS: option to store enabled layer only
- OpenAccess reads width of oaPathSeg
- Electromask: export option
- SchematicEditor:
- component editor can import from eagle library files
- extension in the netlist generation
- snapping for ports and bus ports
- close design feature
- extension of the ParametricShapeLibrary
- TextEditor:
- search and replace feature
- syntax highligh for CIF file format
- Bug Fixes:
- bool operation with delete shapes, if a single shape is used twice
- add missing ; in GenerateTechnologyMacro
- access of submenus via ALT key
- cut feature validates result
- MinimumDistanceOrOverlap problem with selected shapes
- correct display of shortcuts on tool button after changing it
- problems with What's this Help from menus
- find top cell in desings without hierarchie
- ElementSizeMode for zero width pathes
- DRC notches next to connection line to inner holes
- DRC mindisOrOverlap, shapes inside concave corner were detected as errors
- templates correct port imformation from symbols in the component editor of the schematic
- changing parameter type in component editor
- BoolOnLayer with zero width pathes
New in LayoutEditor Portable 20120420 (Feb 25, 2013)
- New Features:
- major extensions in the integrated text editor, details see below
- a xor boolean operation on all shapes of one layer
- a layer wide boolean merge
- PunchWithSelection feature
- datamatix bar code generation support of FNC1 and GS codes
- new additional shipped font file
- command line option --no3d for graphic adapter not supporting openGL
- option to display all text unrotated
- plug-in for live image display in the background
- better performance of partial drc checks MinimumElementsDistance and OverlappingElements
- User Interface:
- central text editor to display and option store of any report
- short cuts for the text editor
- display running operations in the status bar
- improved sizeing of the status bar
- warning in all operations, if a selection is missing
- Macros:
- control of the text editor
- support of break statement
- support of switch command
- ignoring of unsupported compiler commands
- extension to schematic components
- add missing extractNetlist command
- add getLVSResults command
- new project class
- File Formats:
- recognition of SF extension for GDS format
- support of rotated and mirror references for DXF
- SchematicEditor:
- ports() instruction for netlist generation
- TextEditor:
- direct editing of GDSII files
- text search
- tabbed editing
- macros to control the text editor
- central text editor for error display
- Bug Fixes:
- problem with a double - and double / in macros
- add missing _ char in block font
- display cell names always unrotated
- restore menu visibility
- limit number of points in polygon check
- refresh problem after resize with a running operation
- problem with changing the short cut of the circle fit feature
- wrong drc check area for some checks.
New in LayoutEditor Portable 20111218 (Feb 25, 2013)
- New Features:
- EditInPlace with all related feature
- BooleanTools with a integrated delete of source shapes
- remove overlap feature to remove overlap of shapes without changing the resulting area
- RenderView in the 3d view
- performance improvement of the group features especially the GroupStructure feature
- performance improvement of StripIdenticalElements
- performance improvement of the resistance extraction
- integration of FastCap for the capacitance extraction
- integration of FastHenry for the inductance extraction
- setup script for uses with pycell
- extent Datamatrix Codes to generate GS1 DataMatrix ECC200 code
- support of new linux distributions like ubuntu 11.10, fedora 16, openSuse 12.1
- User Interface:
- direct editing of refered cells (EditInPlace)
- optimizing the menu structure
- redesign of the LayerManager with integrated technology settings
- add a toolbar to the 3d view window
- minimum automatic grid
- extended position status with more information and always display of the mouse position
- new display dialog in context menu of time indicator
- redesign of SetupDialog
- Macros:
- add all new feature to the macro interface
- better performance
- extension of some supported commands
- layout macro as callback in the schematic
- codec support of file reading/writing
- converting double to/from string in engineering notation
- File Formats:
- fix: arrays with negative spacing in the SOURCE file format
- reading layer setup from santana.tech file
- performance improvement for CIF files
- Fix: encoding problem for CIF files for some non ASC characters
- Fix: problem with & char in DXF layer names
- Option to store layer names in a GDSII file
- SchematicEditor:
- Redesign of the component editor
- macro callback additional to TCL callbacks
- parsing of component labels
- more file formats supported to import components
- redesign of shipped libraries
- support of ngspice simulations
- snapping feature during placing components
- Bug Fixes:
- arc detecting of 4 point paths
- routing mode for vias smaller than wire width
- memory leak by executing macros
- problem with layer numbers >1023 in GDS/OASIS
- set an used layer as active on program star
- macro handling of static methods in the element class
- macro recording of screen shots