NC Prepare

NC-Prepare (NCP) command for AutoCAD and BricsCAD
Preparation of drawings of details, contours and dimensions, from 3D-solid. Works with detail through the viewport.

The command NC-Prepare (NCP) automates the creation drawings of parts from solids. First of all, the command is useful to those who make drawings of parts from flat materials. For example, furniture makers. After modeling the assemblage of parts (solids), placing the holes for the fasteners, you will only have to lay out the details in the XY plane, create a viewport with all the details on the layout and call this command. Almost all further work the program will do itself. You will get contours suitable for machining on the CNC milling cutter and designed parts drawings for 1 click.

Features of the program

  • Itself searches for details (3D Solid) which are visible through the viewport.
  • Ignores objects from auxiliary layers.
  • Make a flatshot of the parts and process the contours with the "Outside Loop" command. The contours will be optimized and spread across layers.
  • Create closed contours for dadoes and pockets, expands them to the width of the cutter to the outside of the part (optional) and make the cutter outputs beyond the contour of the part.
  • Handles the corners of the contours with the Inside Corner or Fillet Polyline command.
  • Specifies the diameter of the holes in the name of the drilling layer (for holes no larger than the specified cutter).
  • Can designate holes with marks (blocks) or denote their diameter.
  • Can replace the contours of non-vertical drilling with special blocks.
  • Calculate the depths of dodoes and record them in the name of the layer.
  • Find and mark the inclined ends.
  • Put two dimensions.
  • Find the end-holes (horizontal drilling) and put the distance to them from the corner of the part.
  • The number of parts in one viewport is not limited - all will be processed for 1 click.
  • The height of a MTexts in the model space found will be corrected (see the command TextHeightUpdate)
  • The program has flexible settings, all features can be disabled.
  • Tolerances and accuracy of calculations can be adjusted.
  • Layer control can be disabled. The names of all layers are configurable.
  • You can use layers, styles, and mark-blocks from a template file.
  • The default settings automatically adapt to inch or millimeter drawings
  • On closed contours, you can put down the entry point of the cutter in the part - an additional node polyline in the middle of the longest liner segment.
The NC-Prepare (NCP) command has not been published separately yet. It is a part of the A>V>C> Pro package. Previously published in the CNC_Prepare plugin.

NC Prepare

NC Prepare adaptation for inch drawing


NCP - NC-Prepare - generate contours from Solids, create layers by milling depth and type, make dimensions and annotations. Works with solids visible through the viewport.

  • NCP_Old - Just in case


To use the command, you need to prepare:
  • Use the drawing file with the required hole mark-blocks, with the layers configured and the desired dimension styles. If the program does not find this, it will try to load all of these objects from the template file.
  • Configure the current Dimension style (_DimStyle). Pay attention to the accuracy of the display of linear and angular dimensions.
  • Adjust the current text style and height of the text (_Style and TextSize). The height of the texts should correspond to the PAPER space, not the MODEL.
  • Call the Settings dialog (_Options in AutoCAD or +Options in BricsCAD). On the A>V>C> CNC tab, check the cutter diameter, permissible variation and all program settings. Check the NCP command options.
  • Lay solids in the XY plane. It's best to use the LAY command.
  • Customize the layout and the viewport on it so that one or more solid is visible. If you see several solids, then leave enough space between them for dimensions.
  • The command does not work if you did not select a layout, but you can work in the model via the viewport.
Now you can call the NCP command.
  • The command works with only one viewport. If there are several of them on one layout, then there will be a selection request for the viewport.
  • The command maximizes the viewport on the screen and blocks its scale.
  • Milling depths and hole diameters in layer names will be rounded to within the specified permissible variation. The format is configured in the Common options of A>V>C> plug-ins.
  • All annotations will be created in paper space, not in the model.
  • After completing all the work, the command will write to the console how many solids have been processed.
  • The original solids will be replaced by flat contours.
After the work of this command, check all the results. And you also need:
  • Adjust the position of the leaders and dimensions. The program can not arrange them perfectly.
  • Enter the model and call the Dado Loop (DDL) to close the contours of the dadoes. This is not done automatically yet.
  • Check the contours that have fallen into the NC_Inside layers. Some of them can be handled in reverse, on the outside - your task is to choose the optimal milling algorithm.


The AVC_Pro AutoCAD plugin will connect additional settings tabs to the AutoCAD settings dialog. See CNC tab. 
In BricsCAD settings can be called with the command +Options. 
All options have a tooltip.
About substitutions allowed in the names of the layers, you can read here.
There are many settings and for your convenience, you can use ready-made sets of settings, which I call CNC-Style. You can create up to 9 styles. You can switch the current style in the header of the settings window. And during the work of the command, you can call the SwitchStyle option and select the style by its number.
Attention! The current CNC-style affects all contour commands. Switching the style in one command you will work with this style in all other command too.

The operation of the command is affected by all options from this window. A layer management and a layer template can be set on the A>V>C> tab in the Common Options section.

Known Issues

  • Remember that the command is intended for obtaining contours for 2.5D-milling. It will not be able to draw drawings of complex products.
  • BricsCAD .Net API can not make FlatShot from solids, so I had to create a simplified algorithm that projects the edges of solids. I can not determine the visibility of edges and create silhouettes of surfaces.
Special thanks: This program is based on the source code writed by Sergey Donskov.


    Updated dialog window localisation
    Updated CNC-options dialod
    Updated layer naming options
    Updated CNC-styles

    A program of in-depth analysis of the structure of solids has been created. On this base, rewrote the command CNC_Prepare (NCP). Just in case, the old version of the command is saved as NCP_Old.
    The NCP command now creates closed contours for dadoes and pockets by itself, expands them itself to the width of the cutter (optional) and makes the cutter outputs for the part itself. It is no longer necessary to invoke the Dado Loop (DDL) command separately.
    In preparation for creating a DXF-Export command, the NC_ layer naming settings were completely reworked. There are new layers, separator settings, new substitutions.
    The NCP command can now not save Hidden and Other contours.
    The NCP command can now not save non-vertical drilling contours, and instead place special blocks.
    7 СNC-styles were prepared, including specially configured for exporting contours to programs BSolid (Biesse), WoodWop (Homag), Thermwood.
    All settings dialogs are now correctly displayed in the Windows font scaling mode (on displays with abnormal DPI: 4K monitors and high-resolution laptops).
    NCP fixed in BricsCAD V19: selection solids in viewport

  • Added CNC-styles. Made 5 built-in presets.
  • Added many new settings. Old features have become optional and customizable.
  • Added the ability to make corners fillet.
  • Added ability to write milling depth to Thickness property
  • The settings dialog is reformatted and divided into 4 sections. Settings related only to NCP, now in the Details section

  • Fixed NCP error: insertion annotative blocks for holes