WHAT’S NEW IN ALPHACAM 2021.0

This document contains a general overview of the new features within ALPHACAM 2021.0

21/05/2020

Index

Contents Important Information ...... 5 Operating System Support ...... 5 More Information about New Features ...... 5 ALPHACAM Maintenance Expiry Date ...... 5 Automation Manager ...... 6 Automation Manager - Reordering Layers and Styles in the Layer Mapping Setup Tab ...... 6 Automation Manager - Turn Part Over For Machining ...... 7 Automation Manager - Automatically Save Failed Nesting Parts to New Job ...... 8 Automation Manager - Support for Parametric Fittings ...... 10 Automation Manager - Folder Watcher ...... 11 Automation Manager - Custom Columns for Job files ...... 13 Automation Manager - Select Machining Styles Dialog for Layer Mapping Setups ...... 15 Automation Manager - Log Files ...... 16 Automation Manager - Retaining Solids in Nested sheets ...... 17 Automation Manager - Part Origin to remain unchanged in new Configurations ...... 17 Geometry Node Editing ...... 18 Geometry Node Editing - GUI Improvement for Conflicting Selected Nodes ...... 18 Geometry Node Editing - New Line/Arc Conversion modes and Undo/Redo support ...... 19 Geometry Node Editing - New Joining method Checkbox added ...... 20 Pocketing ...... 21 Pocketing - Auto Z - Use Z Contour Roughing - Rapid Down To - Allow absolute negative or relative values ...... 21 Simulation ...... 22 NCSIMUL Essential ...... 22 NCSIMUL Essential - Rapids ...... 22 Nesting ...... 23 Nesting - Offcuts - Enhanced Type Generation ...... 23 Nesting - Optimise Toolpath Overlapping Option ...... 24 Nesting - New Option to Retain Solids in Nested Sheet ...... 25

21/05/2020 2 Index

Mill & Lathe Modules ...... 26 Mill & Lathe Modules - Rough / Finish - Break-out Cut Support ...... 26 Set Materials Command ...... 27 Set Materials Command Improvements ...... 27 Reports Designer ...... 28 Reports Designer Updates ...... 28 Solid Model Faces ...... 29 Solid Model Faces - User Layer Support ...... 29 Machining Styles ...... 31 Machining Styles - Solid Faces in Layers Support ...... 31 Insert Clamps Enhancements ...... 32 Clamp Insert Project Manager Page ...... 32 Material Position Relative to Clamp ...... 33 Clamp Inserter Warning Configuration ...... 34 Rough/Finish Cycle ...... 35 Rough/Finish Cycle- Remembers to Apply Compensation on Rapids ...... 35 Sawing ...... 36 Sawing - Solid Model Faces - Improved Ordering and New ‘Minimise Angle Changes’ Option ...... 36 Queries ...... 37 Queries - New Test Fields – ‘IsHighest’ and ‘IsDeepest’ Z level values ...... 37 User Interface ...... 38 Highlight Valid Solids During Selection ...... 38 InputAlphaArt - Now Part of the ALPHACAM Installation ...... 39 Maintenance Requirement Removed for PDF and Illustrator File Import...... 40 ALPHACAM Install DVD - Robot Solution Removed ...... 41 Supported CAD File Versions ...... 42 Supported CAD File Versions ...... 42 Maintenance Report ...... 44 Maintenance Report ...... 44

21/05/2020 3 Index

Appendix A - API Improvements in ALPHACAM 2021.0 ...... 47 Automation Manager – New Event raised if parts fail to nest ...... 47 Post Driven Simulation – Set Motion Feed Rate ...... 48 Feature – Solid Body Faces in Layers ...... 49 Nesting – Offcuts ...... 51 Nesting – Nest List Optimised Toolpath Overlap Mode ...... 53 Nesting – Associated Solid Parts ...... 55 Automation Manager – Events List ...... 57

21/05/2020 4 What's New in ALPHACAM 2021.0 www.alphacam.com

Important Information

Operating System Support Please refer to the Installation Guide or System Requirements page on http://www.alphacam.com for further information.

More Information about New Features The What’s New document contains only a brief introduction to the new features available in this release. Further details and examples about this functionality can be found on our Customer Community Forums Wiki page.

ALPHACAM Maintenance Expiry Date To run ALPHACAM 2021.0, the maintenance expiry date in your license must be April 2020 or later.

21/05/2020 5 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager

Automation Manager - Reordering Layers and Styles in the Layer Mapping Setup Tab ALPHACAM 2021.0 introduces new ribbon buttons in the ‘Layer Mapping Setup’ tab of Automation Manager.

The position of Layers and the Styles assigned to those Layers can be moved and/or deleted with ease.

The layer and styles order defined in the layer mapping setup will be used when applying the toolpaths. This means that users now can control the order in the layer mapping setup instead of using the Machining Order. Machining Order can still be used for ordering operations by tool.

You can also drag-and-drop the Layers and assign Styles in order to move them:

21/05/2020 6 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Turn Part Over For Machining The new Turn Part Over For Machining option in Automation Manager allows users to machine the back face of 'parts' which, in Automation manager job files, can be a solid, drawing etc.

The option is in the Part Settings for each Job File. When Turn Part Over For Machining is checked, users can select whether the part is flipped around the X or Y axis (after alignment) in order to apply toolpaths and then nest.

Turn Part Over For Machining will not make a copy of the part file to be turned and used with Automation Manager. If you require ALPHACAM to consider both front and back in the same job (with the same configuration applied), the Job File needs to be added twice. Multiple Process jobs can be used in order to apply a different configuration to the turned over parts.

21/05/2020 7 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Automatically Save Failed Nesting Parts to New Job A new Automatically Save Failed Nesting Parts to New Job option can now be used with the Special Settings in Automation Manager Configurations.

21/05/2020 8 What's New in ALPHACAM 2021.0 www.alphacam.com

When this option is checked, if any parts fail to nest, a new job will automatically be created containing these non-nested parts. If unchecked, the job is processed silently with no part failure warnings while a new job is created with the non- nested parts.

21/05/2020 9 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Support for Parametric Fittings In this version of ALPHACAM Automation Manager, we have added support for Fittings that are constrained and include parametric rules, like the capability in the legacy APM.

For example, this will be beneficial in situations where you would like the inserted fitting to change in length or width as they are added to a parent part. Depending on the different proportions of the parent parts in your Automation Manager job, the proportions of the fittings added can be adjusted automatically.

When processing a parametric fitting, the fitting will inherit the parametric variable values from the main drawing.

21/05/2020 10 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Folder Watcher The new Folder Watcher option in the Automation Manager tab allows users to start watching a selected folder. The folder is watched for any new CSV or TXT files that may be added, created or edited within it.

If a new CSV is detected, a new job is created (with a date and time stamp) and this job will be processed using the settings defined in the Folder watcher.

Note: Job creation type Import settings are not supported.

21/05/2020 11 What's New in ALPHACAM 2021.0 www.alphacam.com

With this option, users will be able to handle job creation and processing for many CSV files at once, and users are warned if any jobs have failed to process in the feedback area.

21/05/2020 12 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Custom Columns for Job files Custom views can now be defined in the Automation Manager. Custom column settings can be changed using the Automation Manager settings dialog.

21/05/2020 13 What's New in ALPHACAM 2021.0 www.alphacam.com

Two different dialogs are available to configure columns for Automation Manager Jobs and CDM Jobs separately. They follow the same layout as the File Name Configuration dialogs (from within the Automation Manager > Configuration tab > Output Settings).

21/05/2020 14 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Select Machining Styles Dialog for Layer Mapping Setups A new ‘Select Machining Style’ dialog box has been added to the Layer Mapping Setup tab of Automation Manager for this release.

Typically, once a Machining Style has been assigned to a Layer, users can edit how this style is applied using the property grid. This includes being able to edit the Machining Style Name field which allows users to pick a different style.

21/05/2020 15 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Log Files Automation Manager can now create log files containing information about the jobs being processed. Two log files are created in the form of text files:

• Job log file ("JOBNAME".log) – A log file is created in the root output folder of each job.

• Main log file (Automation Manager Processig.log) – This is the main log file for Automation Manager as a whole and is added to the location of your choice.

The .log filename for the main log file is taken from the language file.

The main Automation Manager Log creation needs to be switched on and a Log File Folder location needs to be defined in:

Automation Manager Tab > Automation Manager Settings > Logging

The time stamped log files for jobs contain information about the success or failure of a job and the main (or processing log file) contains the collection of logs from all the jobs that have been processed with Automation Manager.

21/05/2020 16 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager - Retaining Solids in Nested sheets It is now possible to retain the solids from part files in the final nested sheet drawing after a job has been processed using Automation Manager.

Automation Manager Configurations have two settings to enable this option:

• Automation Manager > Configuration tab > Nesting Options > General Nesting Settings > Allow Nesting of Solid Parts

• Automation Manager > Configuration tab > Job File Defaults > Nested Part Settings > Include Solid Parts

The solid parts will only be nested if these settings are enabled in both locations. The part drawing created needs to contain the solid parts first (Include Solid Parts in the job files), so that they can be nested into the sheets (Allow Nesting of Solid Parts).

Automation Manager - Part Origin to remain unchanged in new Configurations From this release of ALPHACAM, any new Automation Manager Configuration created will use No Change as the default selection for the Part Origin in Part Settings.

In the previous release, the default position was Bottom-Left.

21/05/2020 17 What's New in ALPHACAM 2021.0 www.alphacam.com

Geometry Node Editing

Geometry Node Editing - GUI Improvement for Conflicting Selected Nodes Geometry Node editing has been improved to handle scenarios where the node selected could form various overlapping paths. The user is now prompted with a selection handle dialog where options are listed for the user to select the required node for editing. As the options are selected, the relevant path is highlighted in the Drawing.

21/05/2020 18 What's New in ALPHACAM 2021.0 www.alphacam.com

Geometry Node Editing - New Line/Arc Conversion modes and Undo/Redo support Geometry Node editing has been improved when converting between Lines and Arcs for single element or multiple element loops. We have also added Undo and Redo support.

21/05/2020 19 What's New in ALPHACAM 2021.0 www.alphacam.com

Geometry Node Editing - New Joining method Checkbox added The geometry Node Editing command has some new features to give the ability to Break and Join geometries. A Join checkbox has been added beneath the Move / Break radio button. If checked, when you drag the start or end point of an open geometry to a start or end point of another open geometry, they will be joined, if possible.

21/05/2020 20 What's New in ALPHACAM 2021.0 www.alphacam.com

Pocketing

Pocketing - Auto Z - Use Z Contour Roughing - Rapid Down To - Allow absolute negative or relative values For Auto Z Pocketing with the Use Z Contour Roughing option checked, we have added a new Rapid Down To is Absolute option.

When checked, the value will be Absolute; if not checked, the value will be a distance above the Upper geometry level.

21/05/2020 21 What's New in ALPHACAM 2021.0 www.alphacam.com

Simulation

NCSIMUL Essential In this release, NCSIMUL Essential is integrated with the Router and Mill modules, replacing the Vero Simulator (or the External Simulator). The External Simulator is still available in Stone until disk guards are fully supported by NCSIMUL in the future.

NCSIMUL will be installed along with the main ALPHACAM Installation. This NCSIMUL version will now be launched when using the Send to Simulator command instead of the old External Simulator.

The NCSIMUL version installed with ALPHACAM is not a full version of NCSIMUL, the installed (NCSIMUL Essential) version with ALPHACAM 2021.0 is only intended as a replacement for the Vero Simulator at this stage.

NCSIMUL Essential will be able to simulate feeds/rapids and ALPHACAM Kinematics. It is not capable of verifying or reading post-processed G Code; for this or for using an exact digital twin of your machine with NCSIMUL simulation, a fully licensed version of NCSIMUL will be required.

NCSIMUL Essential - Rapids There is a new setting in the simulation configuration for NCSIMUL only that allows you to decide whether the moves to and from the tool home position should be shown.

Additionally, NCSIMUL will use the options already available in the internal simulator to show or not show rapids between workplanes.

21/05/2020 22 What's New in ALPHACAM 2021.0 www.alphacam.com

Nesting

Nesting - Offcuts - Enhanced Type Generation Nested sheet offcut generation has been enhanced to give the user more selection of the type of offcut to be saved. Choices of Horizontal, Vertical, or Both with either Vertical or Horizontal cut priority.

Sheet offcut generation is also compatible with WORKPLAN integrated materials.

21/05/2020 23 What's New in ALPHACAM 2021.0 www.alphacam.com

Nesting - Optimise Toolpath Overlapping Option We have updated the nesting engine used by ALPHACAM in this release and a new Optimise Toolpath Overlapping option is now available with Vero Nesting (including with Automation Manager).

The new option allows toolpaths around different parts to overlap provided that the tool does not damage any parts. If an additional distance is required to protect the parts, this is applied in addition to allowing the toolpaths to overlap.

Nesting Dialog:

Automation Manager Configuration:

21/05/2020 24 What's New in ALPHACAM 2021.0 www.alphacam.com

Nesting - New Option to Retain Solids in Nested Sheet There are some new settings in nesting to support the retention of the part solids into the nested sheet. This is useful when the solid has features that need to be machined requiring the creation of a workplane which is not supported on nested parts. Operations like Solid face Sawing can now be applied to the solids after the nesting.

21/05/2020 25 What's New in ALPHACAM 2021.0 www.alphacam.com

Mill & Lathe Modules

Mill & Lathe Modules - Rough / Finish - Break-out Cut Support

A new Auto Break-out cut (Open paths only) option has been added to the General tab. A configurable partial cut, in the reverse direction, can be created at the end of an open profile. This avoids having to exit the material with a full width of cut, which could cause damage to the component. Note: This option does not support closed profiles.

21/05/2020 26 What's New in ALPHACAM 2021.0 www.alphacam.com

Set Materials Command

Set Materials Command Improvements

The Set Materials ribbon command has been improved to contain functionality from the Create Default Material Add- In. Users are now able to control XY Stock extents to create an offset and, if the geometry/solid is non-rectangular, the material can be automatically adjusted to create rectangular dimensions.

21/05/2020 27 What's New in ALPHACAM 2021.0 www.alphacam.com

Reports Designer

Reports Designer Updates The ALPHACAM reports engine has been updated in order to improve overall performance and stay up to date with the latest technology and, as a result, the Reports Designer has received graphical and performance general improvements.

Please note that if a new Reports Layout is created, or an old layout is re-saved in 2021.0 ALPHACAM, it will not be possible to create reports using this layout in older versions of ALPHACAM. Report Layout files (*.acrepx) cannot be saved with backward compatibility in the same way as ALPHACAM drawing files.

21/05/2020 28 What's New in ALPHACAM 2021.0 www.alphacam.com

Solid Model Faces

Solid Model Faces - User Layer Support Solid Model faces can now be placed in User Layers using a new utility command which has been added to the Face Utilities section of the Solid Model Utilities ribbon.

21/05/2020 29 What's New in ALPHACAM 2021.0 www.alphacam.com

This version also supports using Auto Styles with solid model faces in user layers. This works in the same way as with applying Auto Styles to any geometry in a user layer.

21/05/2020 30 What's New in ALPHACAM 2021.0 www.alphacam.com

Machining Styles

Machining Styles - Solid Faces in Layers Support Machining styles can now be fully automated by layer/Style assignment such as:

• Sawing Solid Faces in Solid face Machining.

• Solid Faces with Tool Side in Rough Finish.

• Selected Model Faces in Selected Model Faces.

Now, just the faces in the layer will be passed for machining bypassing the prompted user selection. This is a significant step forward in the Automation of Direct Solid Model Machining.

21/05/2020 31 What's New in ALPHACAM 2021.0 www.alphacam.com

Insert Clamps Enhancements Several new options have been added to this release of ALPHACAM to create a quick solution for users inserting and positioning clamps in drawings.

Clamp Insert Project Manager Page A new Project Manager page has been introduced to handle inserting clamps in ALPHACAM 2021.0.

Clamp insertion using the new Clamp Insert Project Manager page is similar, in theory, to File insert, with a few new options.

.

21/05/2020 32 What's New in ALPHACAM 2021.0 www.alphacam.com

The new Project Manager features include the ability to:

● Right-click a Clamp drawing in the preview to edit the file or drag and drop the clamp onto an existing file. ● Rotate clamps on insert - Drag and drop the clamp into the active drawing and rotate. ● Consider main material when auto-positioning clamps – Takes only the main material into account. ● Consider machine bed when auto-positioning clamps – The user is prompted to define the geometry for the machine bed to ensure that clamps and material are placed correctly. ● Auto-position all clamps in current drawing – Press the button to reposition or refresh the clamp/materials positions in the drawing based on the selections made.

If you have highlighted both Consider main material when auto-positioning clamps and Consider machine bed when auto-positioning clamps, ALPHACAM should be able to auto-align all parts involved (clamps, materials and machines).

Material Position Relative to Clamp A new option allows the user to define the position of the clamp relative to the material, using the Material Above and Material Below options. Alternatively, the Material position relative to the clamp can be ignored (Ignore Material).

21/05/2020 33 What's New in ALPHACAM 2021.0 www.alphacam.com

Clamp Inserter Warning Configuration The new Auto positioning and Rotating functions require the correct attributes on the inserted clamps. We have added some user messages which provide the user with additional information when things do not work as expected.

These can be switched On or Off from each message or by using a new configuration setting:

Home Tab > Configure > General > Clamp Inserter

21/05/2020 34 What's New in ALPHACAM 2021.0 www.alphacam.com

Rough/Finish Cycle

Rough/Finish Cycle- Remembers to Apply Compensation on Rapids In previous versions, the general settings used with the Rough/Finish were retained even when the ALPHACAM session was closed, except the settings to apply compensation on approach.

For this release, the Apply Compensation on Rapid Approach / Retract selection is also retained.

21/05/2020 35 What's New in ALPHACAM 2021.0 www.alphacam.com

Sawing

Sawing - Solid Model Faces - Improved Ordering and New ‘Minimise Angle Changes’ Option The ordering of the saw paths when sawing solid model faces has been improved to move logically around the selected faces considering the Climb/Conventional setting and, therefore, ensure that the end of one cut is near the start of the next.

There is also a new Minimise Angle Changes option which overrides the natural ordering in order to maintain the saw cut direction and, therefore, reduce head orientations.

21/05/2020 36 What's New in ALPHACAM 2021.0 www.alphacam.com

Queries

Queries - New Test Fields – ‘IsHighest’ and ‘IsDeepest’ Z level values New Is Highest and IsDeepest test fields have been added to the Query Editor. These are tested to be True or False and the test compares the Z level values of the current geometries with the highest and lowest Z level values of all the geometries in the current drawing. This helps to identify pockets that go through the Solid.

21/05/2020 37 What's New in ALPHACAM 2021.0 www.alphacam.com

User Interface

Highlight Valid Solids During Selection This release allows users to turn on Highlight Valid Solids on Mouse Over During Selection when working with multiple solids which allows them to easily differentiate between solids for picking.

The option can be turned off if this behaviour is not required. The new option has been added to:

Configure > Settings > General > Selection

21/05/2020 38 What's New in ALPHACAM 2021.0 www.alphacam.com

Input AlphaArt - Now Part of the ALPHACAM Installation The Input AlphaArt add-in which required a separate installer previously has now been integrated into the main ALPHACAM Installation.

With the 2021.0 release of ALPHACAM we do not include the separate installer in the ExtraAdd-Ins folder and we recommend that you do not use the old (64-Bit)InputAlphaArt_Setup.exe with the current release.

21/05/2020 39 What's New in ALPHACAM 2021.0 www.alphacam.com

Maintenance Requirement Removed for PDF and Illustrator File Import The Input CAD command can import PDF and Adobe Illustrator (AI) files into ALPHACAM in addition to other file types. In previous versions, users needed to keep their ALPHACAM version in Maintenance to be able to import PDF and AI files.

This SMA restriction has now been removed, if the Licence has not expired, and importing these file types is now supported even if the licence is not maintained.

21/05/2020 40 What's New in ALPHACAM 2021.0 www.alphacam.com

ALPHACAM Install DVD - Robot Solution Removed The Robo DK Robot solution has been removed from the ALPHACAM installation (Install_ALPHACAM.hta).

A link to RoboDK is still available for purchasing with ALPHACAM. That will include the interface for sending information to RoboDK as well as the basic APT post processor delivered with ALPHACAM.

21/05/2020 41 What's New in ALPHACAM 2021.0 www.alphacam.com

Supported CAD File Versions

Supported CAD File Versions The following CAD file versions can be imported into the respective ALPHACAM product levels: E = Essential S = Standard A = Advanced U = Ultimate

Translator and Version Router Stone Lathe Mill Wire Profiling

DXF/DWG (AutoCAD 2018) E S A U E S A U E S A U E S A U S A A U

IGES (not version specific) E S A U E S A U E S A U E S A U S A A U

Rhino 5.0 S A U S A U S A U S A U S A A U

STL (not version specific) S A U S A U S A U S A U S A A U

SketchUp 2017 S A U S A U S A U S A U S A A U

Adobe PDF E S A U E S A U U E S A U S A A U

Adobe Illustrator E S A U E S A U U E S A U S A A U

PostScript E S A U E S A U U E S A U S A A U STEP AP203/AP214/AP242 (preferred A U A U A U A U A U Schemas) Part Modeler (current) A U A U A U A U A U

VISI Version (current) A U A U A U A U A U Autodesk Inventor 2020 (current, IPT & IAM A U A U A U A U A U files) ACIS R1 – 2020 1.0 A U A U A U A U A U

Parasolid 9.0 – 31.0.216 A U A U A U A U A U

SOLIDWORKS 2020 A U A U A U A U A U

Solid Edge SE 2020 (PAR & PSM files) A U A U A U A U A U

Spaceclaim 2019 R1 A U A U A U A U A U

JT Open 10.2 A U A U A U A U A A U

ALPHACAM Designer Files A U A U A U A U A U

In order to import Autodesk Inventor files, Autodesk Inventor® or Inventor® View™ must also be installed. Inventor® View™ can be downloaded from the Autodesk website.

21/05/2020 42 What's New in ALPHACAM 2021.0 www.alphacam.com

Translator and Version Router Stone Lathe Mill Wire Profiling Extra Cost

Catia V4 4.1.9 - 4.2.4 A U A U A U A U A U

CATIA V5 V5R8 - V5-6R2020 A U A U A U A U A U CATIA V6 Up to V6 R2020x Note: CATIA V6 users should export their A U A U A U A U A U database objects as CATIA V5 CATParts or CATProducts. Creo 6.0 (formerly Pro/E Wildfire) A U A U A U A U A U

NX12.0.0 (updates for Unigraphics NX1872) A U A U A U A U A U

21/05/2020 43 What's New in ALPHACAM 2021.0 www.alphacam.com

Maintenance Report

Maintenance Report The following is a list of bug fixes and enhancements implemented in ALPHACAM 2021.0:

ID Description Closing Notes 272 Nesting - Extra large offset / gap due to large tool. Fixed when using the new Optimize Tool- Path Overlapping option. 1140 Profiling - Nesting - A new Operation Is created for each part on a Fixed. Nested Sheet. 2841 Nesting - Inefficient nest. Parts are nested corner to corner rather Fixed. than side by side. 2861 Machine - Define tool - Saw - Tool preview shown is incorrect. Fixed. 3407 Feature Extraction - ALPHACAM becomes unstable after contour Fixed. extraction with Use Legacy Contour Algorithm unchecked. 3850 Nesting - True Shape Nesting - Negative overlap on lead in/out Fixed. combined with support tags cannot be nested. 4241 Nesting - Gap between paths is wrong when using negative stock. Fixed. 4731 Input CAD - DXF / DWG - Incorrect result. Geometries in wrong Fixed. place. 5035 Nesting - Minimise Sheet Patterns - Incorrect result. Fixed. 5052 Nesting - Pack to left packs to right and left. Fixed. 5518 Nesting - Material causes Onion Skin to fail (Automation Manager). Fixed. 6285 View - Zoom not correct with some toolpaths. Fixed - needs a toolpath update. 6343 3D - Set Material - Material in wrong place with workplanes. Fixed. 6591 Nesting - ALPHACAM crashes when using the Radnest engine. Fixed. 7040 Nesting - Nest Lists - Nesting is failing when trying to nest more parts Fixed. from a nest list. 7765 Nesting - If Pocketing is greater than the board thickness by a certain Fixed. amount, parts are nested in parts. 8572 Nesting - True Shape - Distance between paths is not the value that Fixed. is set in the options if a lead in/out is used. 8886 Nesting - Parts nested inside other parts with Radnest . Fixed. 8888 Nesting - Small gap between parts results in worse sheet utilisation Fixed. compared with a large gap. 8962 Nesting - Support Tags - When support tags are used, the toolpath Fixed. around a part is being split when nested. 10569 Machining - Styles - Auto Styles deleted. Fixed. 10660 Nesting - True Shape - With a specified Gap between parts of 0, Fixed. there is still a gap between parts. 11152 API - IsPointInside giving the incorrect flag if $722 is set to 3 in the Fixed. post. 11416 Lathe - Solid Simulation - Sub Spindle - Solid tool tip is reversed. Fixed. 12158 Nesting - Best Sheet Utilisation - Cannot nest into remaining space. Fixed. 12552 Rough or Finish - Spiral Stock Removal - Bad result. Fixed.

21/05/2020 44 What's New in ALPHACAM 2021.0 www.alphacam.com

ID Description Closing Notes 12770 Text - Define New Font - Font definition geometries not deleted when Fixed. starting a new drawing. 12805 Feature Extraction Layers - If Wires is the same name as Sheets, Fixed. ALPHACAM crashes. 13202 Nesting - Overlapping geometry prevents nesting (.dwg import). Fixed. 16156 Nesting - Unable to enter 0 = No Limit for sheet quantity when using Fixed. Sheet / Material Database. 17933 Input CAD - Inventor - IPT - Part not imported correctly. Imported as Fixed. surfaces. 18036 Advanced 5-Axis - Dialog images do not change for 'Tool Axis Will...' Fixed. field. 18853 Add-Ins - Edit Tool File Data With Excel - New Imported tools always Fixed. have 8 teeth. 19361 Multidrill - Simultaneous drilling of holes of same depth but different Fixed. diameter. 19362 Re-multidrill causes all holes to become the same depth. Fixed. 19558 Facing / Face Milling - To remember user values. Fixed. 19646 Automation Manager - CDM - Two colons not allowed in door names. Fixed. 19693 NC Output - Internal Finish pass incorrectly output on centre of Fixed. geometry. 20635 Automation Manager - Incorrect Localisation In Thickness field on Fixed. details treelist. 20637 Automation Manager - Reports - Incomplete. Missing data. Fixed. 20663 Advanced 5 Axis - Multiaxis Roughing - Incorrect result with Fixed. approach. 20666 Copy - Clipboard - Make it work with later releases. Fixed - can now Copy from old release and Paste into New. 20718 Nesting - Parts nested inside each other. Fixed but needs the new setting for overlapping toolpaths. 20847 Cylindrical Profiling - Encountered an improper argument. Fixed. 20930 Add-ins - InputAlphaArt - Not loading. Fixed. 20973 Launcher - Applications added to ALPHACAM Launcher do not Fixed. remain after closing. 21008 Nesting - Fails to calculate part shape due to pocketing operation Fixed. inside the part. 21020 Sheet Database - Sheet direction changes from X to None. Fixed. 21100 Reports - Settings - View option does nothing. Fixed. 21154 Rough or Finish - Lead In / Out - Sloping Line leads have incorrect Fixed. element graphics. 21214 Nesting - Rough or Finish - XY Corners = Straight - Convex corners Fixed. cause parts not to fit on sheet. 21252 Solid Simulation - Advanced Holder and Tool graphics - Wrong Fixed. display. 21293 Text - Create As Geometry - Kerning Tab function no longer works. Fixed. 21294 Text - Return/Enter to create a line space, does not work. Fixed. 21319 Nesting - Crash when loading large nest lists .anl Fixed.

21/05/2020 45 What's New in ALPHACAM 2021.0 www.alphacam.com

ID Description Closing Notes 21342 Simulation - Operation By Operation - Does not work. Simulates all Fixed. operations. 21378 Creating Text - Return/Enter to create a line space does not work. Fixed. 21411 Reports - Format of exported reports through API Is always PDF. Fixed. 21425 Re-Multidrill - Changes depths of drilling. Fixed. 21477 Workplanes - Order Workplanes - Clear Empty Workplanes - API - Fixed. does not delete a workplane but they can be manually deleted. 21488 Advanced 5 Axis - Multi-axis Roughing - Avoid Plunge stays active Fixed. after deactivating. 21493 Reports - Settings - No Model displayed on Report. Fixed. 21500 Text - Incorrect decimal symbol. Full stop behaves as delete. Fixed. 21520 New Window - View options do not work when New Window is Fixed. detached. 21598 Feature API - Wrong SolidBody from SolidBodies collection. Fixed. 21632 Text - Holding key down will add characters in the wrong place. Fixed. 21762 RegisterAcamDlls.exe not picking up ALPHACAM 2020.1. Fixed. 21942 Reports – ‘Current View’ for reports image not working. Fixed. 21946 Save Offcut - Applied offcut style toolpaths not in correct sheets. Fixed. 21963 Automation Manager - Subcomponents - Parametric variables are Fixed. deleted from copied Job File. 22009 Automatic Extraction - GUI - Dialog images do not change. Fixed. 22128 Project Manager - Find - Not working unless Layer is expanded. Fixed. 22156 Offset - Can no longer offset as Construction when in Construction Fixed with new Keep drawing mode. Geo Info setting. 22243 API - App.Frame.RemoveCommand does not remove command Fixed. from search and radial menu. 22257 Configuration - Colour for selected items is being set to black. Fixed. Reset colours in the Configure > General > Colours dialog on affected PCs. The issue will not repeat.

21/05/2020 46 What's New in ALPHACAM 2021.0 www.alphacam.com

Appendix A - API Improvements in ALPHACAM 2021.0

Automation Manager – New Event raised if parts fail to nest Use the following event to automate the required actions when a part fails to nest in Automation Manager. This event is only called if the Automatically Save Failed Nesting Parts To New Job configuration option is enabled:

Sub AutomationManagerAfterPartsFailToNest(Job As AutomationManagerJob) Event called if parts failed to be nested during processing in Automation Manager. Job contains all parts that could not be nested and respective quantities.

Example Sub AutomationManagerAfterPartsFailToNest(Job As AutomationManagerJob)

' Use this event for any special actions required if during Automation a part failed to be nested ' Job in the constructor contains the parts that could not be nested ' Quantity of parts will be deducted from total if some parts are nested, but not all

Dim PartsFailedMessage As String PartsFailedMessage = "Job " + Job.JobName + " has been created containing parts that could not be nested." & _ "Please, evaluate parts below before processing them again" & vbCrLf

Dim JobFile As AutomationManagerJobFile For Each JobFile In Job.JobFiles PartsFailedMessage = PartsFailedMessage & JobFile.PartName & " x" & JobFile.QuantityRequired & vbCrLf Next JobFile

MsgBox PartsFailedMessage

End Sub

21/05/2020 47 What's New in ALPHACAM 2021.0 www.alphacam.com

Post Driven Simulation – Set Motion Feed Rate Use the following method to define the feed rate which is to be used during post simulation. Value will be used for the following paths:

Feed rate is automatically set to the operation feed rate once a new sub operation starts and, therefore, it is not mandatory to set the feed rate during post simulation.

PostData.Simulation.SetFeedRate(FeedRate As Double) Define feed rate used by following paths during simulation.

Example Public dLastPostedX As Double Public dLastPostedY As Double Public dLastPostedZ As Double

Public dLastPostedA As Double Public dLastPostedB As Double Public dLastPostedC As Double

‘ Add XYZ simulation feed and set feed rate Sub FeedXYZFeedAdd(p As PostData, X As Double, Y As Double, Z As Double, Feed As Double)

‘ Update last posted global variables dLastPostedX = X dLastPostedY = Y dLastPostedZ = Z

‘ Check if feed is valid and different from the last posted feed If (Feed > 0 And Feed <> dLastFeed) Then ‘ Update last posted feed and set feed rate for following paths dLastFeed = Feed p.Simulation.SetFeedRate dLastFeed End If

‘ Add feed movement – uses new XYZ, but use last posted ABC p.Simulation.AddLineMoveAngles AcamMoveType.acamMoveFEED, dLastPostedX, dLastPostedY, dLastPostedZ, dLastPostedA, dLastPostedB, dLastPostedC

End Sub

21/05/2020 48 What's New in ALPHACAM 2021.0 www.alphacam.com

Feature – Solid Body Faces in Layers Allows Solid Body Faces to be put into User Layers where they can be used with Styles to automate machining.

To use the Feature API commands in VBA, go to Tools | References and ensure that the ALPHACAM Feature Extraction entry in Available References is checked.

SolidFace.Layer As Layer Use this property to put a Solid Body Face into an ALPHACAM User Layer or to query which Layer the Solid Body Face is currently in.

SolidBody.GetFaceLayers() As AlphacamObjects Returns an AlphacamObjects collection of Layer objects. The collection contains all the Layers that are being used by all the faces of the Solid Body.

Example Public Sub PutPlanarFacesInLayer()

Dim oDrw As Drawing Dim oSFeat As SolidFeatures Dim oLyr As Layer Dim oSBS As SolidBodies Dim oSB As SolidBody Dim oSFS As SolidFaces Dim oSF As SolidFace Dim sbCount As Integer Dim faceCount As Integer Dim i As Integer Dim j As Integer

' Get active drawing Set oDrw = App.ActiveDrawing

' Create a layer called 'Planar' Set oLyr = oDrw.CreateLayer("Planar") oLyr.ColorRGB = 255

' Get Feature interface Set oSFeat = oDrw.SolidInterface

' Get the SolidBodies Set oSBS = oSFeat.Bodies sbCount = oSBS.Count

' Disable Project Bar Updating temporarily App.Frame.ProjectBarUpdating = False

' For each Solid Body For i = 1 To sbCount Set oSB = oSBS.Item(i)

' Get all the faces Set oSFS = oSB.Faces

' Put the planar faces in the Planar layer faceCount = oSFS.Count For j = 1 To faceCount Set oSF = oSFS.Item(j) If oSF.IsPlanar = True Then ' Move to "Planar" layer oSF.Layer = oLyr End If Next j

21/05/2020 49 What's New in ALPHACAM 2021.0 www.alphacam.com

Next i

App.Frame.ProjectBarUpdating = True oDrw.Refresh

End Sub

21/05/2020 50 What's New in ALPHACAM 2021.0 www.alphacam.com

Nesting – Offcuts Improves the types of offcuts that can be automatically found from nested sheets.

To use the Nesting API commands in VBA, go to Tools | References and ensure that the ALPHACAM Nesting v3.0 Type Library entry in Available References is checked.

OffcutType: VERTICAL, HORIZONTAL, VERTICAL_HORIZONTAL, or HORIZONTAL_VERTICAL OffcutSide: Inside, Centre, or Outside

Nesting.MakeOffcuts(min_x As Double, min_y As Double, type As OffcutType, apply_style As Boolean, cut_side As CutOffcutSide, style_full_path As String) As Paths Returns a collection of offcuts (as geometry Paths) generated from the current drawing's nested sheets according to input settings. min_x and min_y define the minimum size of acceptable offcut, type specifies the direction and/or order in which to look for valid offcuts (e.g. VERTICAL_HORIZONTAL means cut vertically first and then horizontally if we can still create another offcut larger than the minimum size). If apply_style is true then ALPHACAM will apply the style specified in style_full_path to cut the offcuts from the sheet using cut_side to control which side of the rectangular offcut to cut on.

SheetDatabase.SaveOffcutToDatabase(sheet As Path, drw As Drawing) As String Use this function to save a path representing an offcut to the active Sheet Database. If the function fails it will return an error message.

Example ' Create simple Finish operation using selected tool and geometry Public Function FinishPath() As Paths

Dim MD As MillData Set MD = App.CreateMillData

MD.XYCorners = acamCornersSTRAIGHT MD.SafeRapidLevel = 20 MD.RapidDownTo = 1 MD.FinalDepth = -10

Dim TPs As Paths Set TPs = MD.RoughFinish

Set FinishPath = TPs

End Function

Public Sub CreateNestList()

Dim NS As Nesting Dim NL As Nestlist Dim NP As NestPart

App.New Set NS = App.Nesting NS.DeleteAllNestLists Set NL = NS.NewNestList("Nesting")

' Configure Nest List options NL.NestingMethod = nestMethodVERONEST NL.PathType = nestBOTH NL.EdgeGap = 0# NL.PartGap = 0# NL.TotalTime = 30 NL.NestSide = nestBOTTOMLEFT NL.OptimizedToolpathOverlap = True

Dim D As Drawing Set D = App.ActiveDrawing

21/05/2020 51 What's New in ALPHACAM 2021.0 www.alphacam.com

' Create a couple of test shapes with different tool sizes Dim P As Path Dim TPs As Paths

Set P = D.CreateRectangle(-1000#, 0#, -200, 100) P.ToolInOut = acamOUTSIDE P.Selected = True App.SelectTool App.SystemDatPath & "RTOOLS.ALP\Flat - 10mm.art" P.Selected = True Set TPs = FinishPath() Set NP = NL.Add(TPs) NP.Required = 5 NP.RotationAngle = 360 NP.AllowMirror = True

Set P = D.CreateRectangle(-1000#, 200#, -800, 700) P.ToolInOut = acamOUTSIDE P.Selected = True App.SelectTool App.SystemDatPath & "RTOOLS.ALP\Flat - 2mm.art" P.Selected = True Set TPs = FinishPath() Set NP = NL.Add(TPs) NP.Required = 5 NP.RotationAngle = 360 NP.AllowMirror = True

' Create a sheet Dim SL As SheetList Dim S As NestSheet Set SL = NS.NewSheetList Set P = App.ActiveDrawing.CreateRectangle(0#, 0#, 1000, 850) Set S = SL.Add(P) S.MaterialName = "MDF" S.Thickness = 10 ' Nest NS.Nest NL, SL

' Create some offcuts ' Minimum size we want to keep (100x100), create an ' offcut from a Vertical cut first then check if we can make ' another offcut using a Horizontal cut. Apply the given style ' and cut on the Inside of the offcut so we can cut the offcut ' without having to remove the parts first. Dim OffcutPaths As Paths Set OffcutPaths = NS.MakeOffcuts(100, 100, VERTICAL_HORIZONTAL, True, Inside, App.SystemDirPath & "Styles\Finish 5mm Depth 10.ary")

' Save any offcuts to the Sheet Database Dim SD As SheetDatabase Dim i As Integer Dim count As Integer Dim offcutSheetName As String

Set SD = NS.SheetDatabase

If Not OffcutPaths Is Nothing Then count = OffcutPaths.count For i = 1 To count SD.SaveOffcutToDatabase OffcutPaths.Item(i), D Next i End If

End Sub

21/05/2020 52 What's New in ALPHACAM 2021.0 www.alphacam.com

Nesting – Nest List Optimised Toolpath Overlap Mode Adds a new option for the Vero Nest Engine that can improve sheet usage especially if the Nest Parts are using different sized tools to cut them from the sheet. When the Optimize tool-path overlapping mode is enabled, instead of spacing all parts based on the largest tool diameter used by the parts, each part will have the smallest space around it necessary to avoid gouging.

To use the Nesting API commands in VBA go to Tools | References and ensure that the ALPHACAM Nesting v3.0 Type Library entry in Available References is checked.

NestList.OptimizedToolPathOverlap As Boolean This option requires the Vero Nest Engine and only works when nesting toolpaths (or toolpaths and enclosed geometries).

Example ' Create simple Finish operation using selected tool and geometry Public Function FinishPath() As Paths

Dim MD As MillData Set MD = App.CreateMillData

MD.XYCorners = acamCornersSTRAIGHT MD.SafeRapidLevel = 20 MD.RapidDownTo = 1 MD.FinalDepth = -10

Dim TPs As Paths Set TPs = MD.RoughFinish

Set FinishPath = TPs

End Function

Public Sub CreateNestList()

Dim NS As Nesting Dim NL As Nestlist Dim NP As NestPart

App.New

Set NS = App.Nesting NS.DeleteAllNestLists Set NL = NS.NewNestList("Nesting")

' Configure Nest List options NL.NestingMethod = nestMethodVERONEST NL.PathType = nestBOTH NL.EdgeGap = 0# NL.PartGap = 0# NL.TotalTime = 30 NL.NestSide = nestBOTTOMLEFT NL.OptimizedToolpathOverlap = True

Dim D As Drawing Set D = App.ActiveDrawing

' Create a couple of test shapes with different tool sizes Dim P As Path Dim TPs As Paths

Set P = D.CreateRectangle(-500#, 0#, -300, 100) P.ToolInOut = acamOUTSIDE P.Selected = True

21/05/2020 53 What's New in ALPHACAM 2021.0 www.alphacam.com

App.SelectTool App.SystemDatPath & "\RTOOLS.ALP\Flat - 10mm.art" P.Selected = True Set TPs = FinishPath() Set NP = NL.Add(TPs) NP.Required = 4 NP.RotationAngle = 360 NP.AllowMirror = True

Set P = D.CreateRectangle(-500#, 200#, -450, 250) P.ToolInOut = acamOUTSIDE P.Selected = True App.SelectTool App.SystemDatPath & "\RTOOLS.ALP\Flat - 2mm.art" P.Selected = True Set TPs = FinishPath() Set NP = NL.Add(TPs) NP.Required = 10 NP.RotationAngle = 360 NP.AllowMirror = True

' Create a sheet Dim SL As SheetList Dim S As NestSheet Set SL = NS.NewSheetList Set P = App.ActiveDrawing.CreateRectangle(0#, 0#, 1220, 600) Set S = SL.Add(P)

' Nest NS.Nest NL, SL

End Sub

21/05/2020 54 What's New in ALPHACAM 2021.0 www.alphacam.com

Nesting – Associated Solid Parts Introduces the ability to associate Solid Parts with a Nest Part. Each time the Nest Part is nested on to a sheet, the associated Solid Parts are also placed on to the sheet in the same position and orientation as the Part’s toolpaths and geometries. This enables post-nesting machining to take place on the Solid Parts in the nest sheet (e.g. Sawing or Rough/Finish). This feature is only available with the Vero Nest Engine.

To use the Nesting API commands in VBA, go to Tools | References and ensure that the ALPHACAM Nesting v3.0 Type Library entry in Available References is checked.

NestList.AllowSolidParts As Boolean This Nest List setting must be set to true to enable Solid Parts to be nested with Nest Parts. If it is false, then no Solid Parts will be nested. If an application adds Nest Parts to the Nest List using the NestList.AddFile method then, if this option is set to true first, any Solid Parts in the file will be automatically associated with the Nest Part. Note that they will not be used unless NestPart.IncludeSolidParts is set to true (see below).

NestPart.IncludeSolidParts As Boolean If this property is set to true and the NestList.AllowSolidParts property is also set to true and the Nest Part has associated Solid Parts, then they will be nested with the rest of the Nest Part’s toolpath and geometries. NestPart.AssociatedSolidParts As AlphacamObjects Use this property to manually associate an AlphacamObjects collection of SolidPart objects with the Nest Part or to retrieve the list of Solid Parts. The Solid Parts will only be used if the NestList.AllowSolidParts and NestPart.IncludeSolidParts are both set to true.

Example Public Sub CreateNestListWithSolidParts()

Dim NS As Nesting Dim NL As Nestlist Dim NP As NestPart

App.New

Set NS = App.Nesting NS.DeleteAllNestLists Set NL = NS.NewNestList("Nesting with Solids")

' Configure Nest List options NL.NestingMethod = nestMethodVERONEST NL.PathType = nestBOTH NL.EdgeGap = 1# NL.PartGap = 1# NL.TotalTime = 30 NL.NestSide = nestBOTTOMLEFT

' Allow Solid Parts to be associated NL.AllowSolidParts = True

' Load the parts to be nested Set NP = NL.AddFile("C:\NestParts\Cupboard1.ard") NP.Required = 2 NP.RotationAngle = 360 NP.AllowMirror = True NP.IncludeSolidParts = True

Set NP = NL.AddFile("C:\NestParts\Cupboard2.ard") NP.Required = 2 NP.RotationAngle = 360 NP.AllowMirror = True NP.IncludeSolidParts = True

Set NP = NL.AddFile("C:\NestParts\Cupboard3.ard")

21/05/2020 55 What's New in ALPHACAM 2021.0 www.alphacam.com

NP.Required = 1 NP.RotationAngle = 360 NP.AllowMirror = True NP.IncludeSolidParts = True

' Check the Solid Parts that were associated with the Nest Part Dim AO As AlphacamObjects Dim count As Integer Dim i As Integer Dim SP As SolidPart

Set AO = NP.AssociatedSolidParts If Not AO Is Nothing Then count = AO.count For i = 1 To count Set SP = AO.Item(i) Debug.Print ("Found Solid Part: " & SP.Name) Next i End If

' Create a sheet Dim SL As SheetList Dim P As Path Dim S As NestSheet

Set SL = NS.NewSheetList Set P = App.ActiveDrawing.CreateRectangle(0#, 0#, 2440, 1220) Set S = SL.Add(P)

' Nest NS.Nest NL, SL

End Sub

21/05/2020 56 What's New in ALPHACAM 2021.0 www.alphacam.com

Automation Manager – Events List In this release, if a Custom VBA macro is used, Automation Manager calls the following list of events. The list includes the existing events although some new events have been introduced and some events listed are deprecated.

Existing Events: Sub AutomationManagerBeforeProcessingStart(Job As AutomationManagerJob, ConfigurationSetting As AutomationManagerConfigurationSetting, Customer As AutomationManagerCustomer)

Sub AutomationManagerProcessingComplete(Job As AutomationManagerJob, ConfigurationSetting As AutomationManagerConfigurationSetting, Customer As AutomationManagerCustomer)

The events below are deprecated events; however, they will still work in existing macros:

Sub AutomationManagerBeforePartMachining(Job As AutomationManagerJob, ConfigurationSetting As AutomationManagerConfigurationSetting, Setup As AutomationManagerSetup)

Sub AutomationManagerAfterPartMachining(Job As AutomationManagerJob, ConfigurationSetting As AutomationManagerConfigurationSetting, Setup As AutomationManagerSetup)

We encourage using the updated events listed here instead of the deprecated ones:

Sub AutomationManagerBeforeJobFileMachining(Job As AutomationManagerJob, ConfigurationSetting As AutomationManagerConfigurationSetting, Setup As AutomationManagerSetup, JobFile As AutomationManagerJobFile)

Sub AutomationManagerAfterJobFileMachining(Job As AutomationManagerJob, ConfigurationSetting As AutomationManagerConfigurationSetting, Setup As AutomationManagerSetup, JobFile As AutomationManagerJobFile)

Sub AutomationManagerAfterNestingMaterial (Job as AutomationManagerJob, ConfigurationSetting as AutomationManagerConfigurationSetting, Material as AutomationManagerNestMaterial)

Function AutomationManagerBeforeOutputNc(OutputFilePath As String) As String

Return "0" or "" (empty string) to output NC normally. Return "2" to cancel Output NC. Return valid file path to change the file output location.

Sub AutomationManagerAfterOutputNc(FileName As String)

21/05/2020 57 What's New in ALPHACAM 2021.0 www.alphacam.com

New Events: Sub AutomationManagerBeforeAddingFileToJob(Job as AutomationManagerJob, Filename as String)

Sub AutomationManagerAfterAddingFileToJob(Job as AutomationManagerJob, JobFile as AutomationManagerJobFile, Filename as String)

Sub AutomationManagerBeforeCSVImport(Job as AutomationManagerJob, ImportSetting as AutomationManagerImportSetting, CSVFilename as String)

Sub AutomationManagerAfterCSVImport(Job as AutomationManagerJob, ImportSetting as AutomationManagerImportSetting, CSVFilename as String)

Sub AutomationManagerAfterPartAlignment(JobFile as AutomationManagerJobFile, Setup as AutomationManagerSetup)

Sub AutomationManagerAfterOpenFile(JobFile as AutomationManagerJobFile)

Sub AutomationManagerAfterPartsFailToNest(RejectedPartsJob as AutomationManagerJob)

CDM Events: VBA Module Name = CDMCustomEvents

Sub CDMCustomMain(OrderDetail as CDMOrderDetails, UserVariable1 As Variant, _ UserVariable2 As Variant, UserVariable3 As Variant, UserVariable4 As Variant, _ UserVariable5 As Variant, UserVariable6 As Variant, UserVariable7 As Variant)

21/05/2020 58