Download Free Trial Sign in

Beta software

Join the nanoCAD Plus 20 beta-test program, and help us make great CAD software

Every day, the programmers at Nanosoft put their hearts and minds into making nanoCAD a great CAD program. Hundreds of thousands of engineers, designers, and architects around the world count on our software to get their work done, and we're serious about giving them the very best CAD tool for the job.

nanoCAD Plus is a CAD platform using a DWG as its primary format of drawing files. Using nanoCAD Plus, you can work efficiently and do your everyday job with ease even in these not so easy days.

We invite you to join our beta-test program, and help us to make a new nanoCAD Plus 20 an even better program. You can count on us listening to your opinions, suggestions and bug reports, please post them in the online form or in our support forum or send email to

To join:

  1. Accept the terms and conditions of the “Nanosoft Beta-tester program.”
  2. There is no cost.
  3. Download, install, and use the current nanoCAD beta version software.
  4. Tell us what you think.


Download WhatsNew.pdf

Drawing Comparison

File comparison feature allows you to find the differences between the contents of the model space in two drawings: detect objects that have been modified, added, or removed in the compared drawings.

Drawing Comapre

The Compare Files (DWGCOMPARE) command (the Functional Bars section on the Options tab) displays a functional panel with settings and a launch button.
The feature creates a new dwg file that displays similar and different objects of the compared files, coloring them in several colors. In addition, you can switch off the displaying of unnecessary objects or set a transparency value for them.

Click the i icon to open a dialog with information about the compared files:

Built-in Batch Editor

The built-in batch file editor (the Script Editor (SCRIPTED) command) allows you to create, edit and run batch files of various formats: ActiveX (.JS, .VBS), LISP (.LSP), DCL, SCR.
You can use the following keyboard shortcuts in the editor:
Action       Shortcut
Select All  Ctrl+A
Copy         Ctrl+C, Ctrl+Ins
Insert         Ctrl+V, Shift+Ins
Cut            Ctrl+X, Shift+Del
Undo         Ctrl+Z, Alt+BackSpace
Redo         Ctrl+Y
Go to String Ctrl+G
Find          Ctrl+F
Find Next F3
Find Selected Ctrl+F3
Replace    Ctrl+H
Open        Ctrl+O
Save         Ctrl+S
Save As   Ctrl+Alt+S
Properties Ctrl+P
Run         Ctrl+R
Find the Matching Pair Bracket Ctrl+{

For LISP scripts, an executing of the selected part of the code is implemented. To do this, select the necessary LISP code in the editor and click the Run script button with the CTRL key pressed.

Editor’s settings allow you to adjust the display and formatting of individual language elements.

Bounding Prism – Viewport 3D Clip

For each model space viewport, you can create a bounding prism – an area in a three-dimensional space, beyond which all the graphics are not displayed.
The area is defined as a rectangular or polygonal prism with grips. The prism can be:
  1. created by specifying a contour on the screen,
  2. created on the basis of an existing polyline,
  3. based on a bounding box of selected objects.
The prism above the XY plane of the UCS is blue, below it is orange. The grey outline of the prism is displayed in the XY plane.
Drag grips to place the upper and the lower prism cutoff planes. Otherwise the upper and lower displaying area will be unlimited.
For each model space viewport, its own bounding prism should be created.

An existing prism can be changed, deleted or disabled/enabled. If the prism is disabled, graphics outside the prism become visible. Disabled prism object is still present in the model space and can be switched on later.
To create and modify bounding prism use the Bounding Prism (MCLIP) command (the Viewport Tools section of the View tab).

System Variable Monitor

The System variable monitor (SYSVARMONITOR) displays system variables, their brief description and values, allowing you to edit, sort, search them and track changes in real time.

Dynamic Input

Implemented dynamic input mechanism.

Dynamic input displays the command interface near the cursor in the drawing area. At the right time, current prompts, command requests, input fields, lists of selectable keywords, dimensions of edited geometry are displayed next to the cursor.
Dynamic input consists of three functional parts:

  • Pointer Input;
  • Dimension Input;
  • Dynamic Prompts.
You can adjust them or switch them off in the Dynamic Input section of the Options dialog. 

Dimension Input

When you specify next point for a linear or an arc segment or a circle, the linear and angular dimensions are displayed on the screen relative to the previous point. These dimensions look like a dashed rubber line with a numerical field. As the cursor moves in the drawing area, dynamically displayed dimensions are constantly updated to reflect current values. By toggling the TAB key, switch to the required dimension value for editing it from the keyboard.

Pointer Input

When a point is requested by a command, you can enter its coordinates in the tooltip box near the crosshair, where the current cursor coordinates are shown. 
By toggling the TAB key, switch to necessary value to edit it from the keyboard. Press ENTER when done. 

Dynamic Prompts

Dynamic prompts provide an alternative way to enter command parameter values. In the tooltip field near the cursor, requests and prompts of the active command appear, necessary to complete the command. Data can be entered in the dynamic prompt fields instead of the command line.
The list of available values and options can be expanded by pressing the DOWN ARROW key on the keyboard. Then choose the desired value with an ARROW keys and press ENTER.

Dynamic input can be disabled by using a button DYN in the status bar or by pressing F12.

Dynamic UCS

From now on, when you create an object and move the cursor over a flat segment, the UCS temporarily aligns with it. This makes it possible to immediately draw in the plane of the highlighted face without additional execution of change-UCS commands.
This feature is available in the Dynamic UCS mode. It is enabled by default, but can be disabled by the UCSDETECT variable or by a button in the status bar.

In the Dynamic UCS mode, UCS changes its orientation when you move cursor over a face of a 3D body or a flat segment of a point cloud.

The Dynamic UCS works on point clouds with surfaces, previously recognized by the Search Planes in Point Clouds command.

The direction of the UCS axes depends on the edge that the cursor crossed when moving to the face.
So, the X axis is set parallel to the crossed edge in the direction from the initial vertex of the crossed edge. The Y axis perpendicular to the X axis and is directed toward the inner part of the face. Z axis is set so that the right coordinate system is obtained.
When you move cursor toward the same face through another edge, the orientation of the UCS axes also changes.

At the first mouse click, the UCS is fixed and the first vertex of the created object is set. Then you can continue to draw in the selected plane. Upon exiting the object creation command, the UCS is reset to its original orientation.

External References Notification

While working in a document, changes in the files of external references made by external programs are tracked. Changes in the files of external references (xrefs), underlays, and raster images are tracked.
The status bar displays an indicator button of the status of external links in the active document.

If an external link file was changed in a third-party application while working in the drawing, a warning message will appear and the indicator will change its status.

Right-clicking on the button opens a context menu from where you can call the External Links dialog box or update the external links of the drawing.

If the external link file was not found at all, the message appears, and the indicator button turns red. 

The XREFNOTIFY variable allows you to disable notification or change the type of notifications:
0 - disable notification of changes of external link files.
1 - display notifications in the dialog boxes.
2 - display notifications as pop-up balloons near the status bar.
The XNOTIFYTIME variable sets the time interval at which external link files are checked (in minutes).

Semitransparency of Edited 3D-objects

Now, objects edited with the Move, 3DMove, Rotate, 3DRotate, Scale, Stretch, Mirror, editing by grips, drag&drop commands become semitransparent during editing for better positioning in space.

Disabled by the EDITTRANSPARENCY variable.

Undo/Redo Evolution

Undo after Saving

It became possible to undo the operations performed after saving a document. In previous versions of the program, saving the document clears the list of operations of the Undo command.
Use the checkbox Undo command settings > Clear after save in the Options dialog.

Preview for Undo/Redo

A preview of result of undoing (and redoing) operations was implemented. When you move cursor to a command item in the undo (/redo) list, a preview of the resulting scene is displayed in the drawing area, which will appear after undoing all operations, up to the specified command.
Undo/redo preview can be disabled with the checkbox Undo command settings > Generate preview in the Options dialog.

Undo for Navigation Commands

In this version you can include the following actions in the undo / redo list:
  • 2D navigation commands: panning and zooming operations, including those performed with the mouse.
  • 3D navigation commands: Orbit commands (including performed in transparent mode with the mouse), 3D Walk, 3D Fly, Locator using.
You can also group sequentially performed 3D and 2D navigation operations into one action to undo.
Configure these actions in the Undo command settings section of the Options dialog.

Other Improvements

Viewport Visual Style in Extended Named View

In this version, the Extended Named View keeps not only the section of the point cloud, but also the visual style of the viewport.

Popup Menu for Multifunctional Grips

A pop-up menu with options for multi-function grips appears when you place cursor at an object grip.

In the new version, the parameters of multi-function grips are available not only when the CTRL key is pressed repeatedly, they also appear in the pop-up menu when you place cursor on the grip.
The pop-up menu is implemented for grips of a line, arc, polyline, 3D polyline, hatch, multileader and spline object.
You can configure the way to access grip options in the Handles > Multifunctional grips section of the Options dialog.

These settings are accessed from scripts through the GRIPMULTIFUNCTIONAL variable.

Greyscale Print Preview

When printing in greyscale, the preview window displays greyscale image also.

Coordinate Filters

Coordinate filters are entered in response to a point request and define the axes along which coordinates will be set. You can enter the following filters: .x, .y, .z, .xy, .xz or .yz.
Coordinate filters allow you to input the coordinates of a point for each axis separately, specifying coordinates first along one axis, then along another.
Coordinate filters are useful when the value along one axis is determined by one characteristic point of the object, and along the other axis by another point. When using coordinate filters, it is possible to extract one coordinate value at a time from selected characteristic point of an object by using a snap.

For example, you need to enter the coordinates of a point, located in the center of a drawn rectangular window.
In response to a point request:
Specify point:
1. Enter filter: .x
The request will change its appearance. Now not all coordinates are requested, but only the value along the X axis:
Specify point: >> X
2. With the Middle snap activated, specify the horizontal edge of the window. This will define the coordinate of the point along the X axis.
Now the coordinates for the remaining Y and Z axes are requested:
Specify point: >> YZ
3. We are satisfied with the mode of cleaving coordinates from a point simultaneously along two specified axes. Therefore, it is not necessary to enter any other coordinate filters. With the Middle snap activated, select the vertical edge of the window. This will define the coordinates of the point along the Z and Y axes.

Improved Display of TrueType Fonts

The display of TrueType font text was optimized, especially with its small size.

The Welcome Screen

The Welcome Screen completely redesigned.
It became an interactive multi-functional window with a set of tabs, which allows you to create new documents, open existing ones, display and sort the list of previously opened documents, display their thumbnails, show a list of available applications with a description, links to training resources for each application, a list of new program features with a brief description.
The AutoСlose checkbox automatically closes the welcome screen on the next application start, if during the start no manipulations were made in this window.

The “About” Window

The About window completely redesigned. It contains links to license file, trademarks and displays version number, build number, license status, server name and registration information.

Comments When Printing SHX Text to PDF

When printing to PDF, it is possible to convert SHX texts to PDF comments. Such comments will be created at the locations of text objects with the SHX font. Comments contain the full text of these objects. This allows you to search the contents of SHX text in a PDF document.
To search for text in PDF comments, you need to activate the Include comments option in the Search settings of PDF viewer.

Comment creation can be disabled by the PDFSHX variable or with the SHX text annotations check box in the PDF printer’s options:

Pan in Active Paper space Viewport

You can drag mouse through all paper space when panning in active but locked paper space viewport.

Annotative Objects

Commands for displaying annotative objects created in third-party CAD programs are added to the ribbon and in the View menu of the classic interface.

The current value is stored in the ANNOALLVISIBLE system variable.

New in Custom Command Creating

The Customize Interface command on the ribbon tab Manage > Customization > Interface opens the Customize User Interface dialog box where you can create new custom and virtual commands.

In nanoCAD Plus 20 you can assign icons in ICO and BMP formats for custom and virtual command buttons.

The standard technique for creating Lisp command involves: creating an LSP file, including it in the startup list of the Load/Unload Applications dialog, and only then, creating a new command in the Customize User Interface dialog.
Now, the LISP expression can be written directly when creating a virtual command, without creating and downloading a separate LISP-file. To do this, select the Command line parameters radio-button and enter the LISP expression in the Keyword field.

Using these commands, you can create custom buttons in the ribbon, panels, menus, status bar.
It also became possible to create buttons for custom script commands.

Nanosoft Beta-tester Program Terms And Conditions

By pressing Download button you will have access to the Nanosoft beta-software on the following conditions:

  1. All beta software is distributed without any warranty. It is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you.
  2. In no event Nanosoft will be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the beta software to operate with any other programs).
  3. You are giving Nanosoft and/or Nanosoft's partners permission to contact you regarding Nanosoft products and services.