The example shows how to create a macro that uses a user-defined clearance value to collision check the select toolpaths. The macro:
Function Main( STRING $Selected_Toolpath ) { // Create new project parameter to store the holder clearance BOOL $chk = 0 $chk = ERROR $project.clearance if $chk { // Project variable does not exist. Create it and set it to 5 degrees EDIT PAR CREATE REAL "clearance" } // Before checking the first toolpath, PowerMILL should ask the user to enter the holder clearance IF($powermill.Status.MultipleSelection.First) OR $powermill.Status.MultipleSelection.Total == 0 { $project.clearance = INPUT ${"Enter the holder clearance PowerMILL uses when checking the " + $powermill.Status.MultipleSelection.Total + " selected toolpaths for collisions "} } // Now collision check toolpath with entered clearance // Set the clearance: EDIT COLLISION HOLDER_CLEARANCE $project.clearance // Now check the toolpath for collisions EDIT COLLISION TYPE COLLISION PRINT = "Processing toolpath " + $powermill.Status.MultipleSelection.Count EDIT COLLISION APPLY // Tell user all selected toolpaths have been checked IF ($powermill.Status.MultipleSelection.Last) { MESSAGE INFO "All toolpaths have been checked " } }
Enter all lines without line breaks. Some lines here may appear to include line breaks due to limited page width.