f6b8c50409
- Optalog aggiornamento a versione 11.0.
65 lines
2.3 KiB
C
65 lines
2.3 KiB
C
#ifndef CNS_TOOLING_H_
|
|
#define CNS_TOOLING_H_
|
|
|
|
#include "cns.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
|
|
/**
|
|
* Add a tool path to the part.
|
|
*
|
|
* Tool paths on different parts can overlap each other but a too path can not overlap the standard
|
|
* geometry of another part. By default, a tool path can also be nested outside of sheet boundaries,
|
|
* but this can be change using the function CNS_AllowToolsOutsideSheet. This function can be called
|
|
* multiple times, all the tooling contours will be considered.
|
|
*/
|
|
CNS_EXPORT void CNS_API CNS_AddToolPathToPart(CNS_PartPtr part,
|
|
unsigned number_of_elements,
|
|
const CNS_Element * elements);
|
|
|
|
/**
|
|
* Add a hole in a tool path.
|
|
*/
|
|
CNS_EXPORT void CNS_API CNS_AddHoleInToolPath(CNS_PartPtr part,
|
|
unsigned number_of_elements,
|
|
const CNS_Element * elements);
|
|
|
|
/**
|
|
* Compute a global tool path on the given part.
|
|
*
|
|
* Computes a tool path that offsets the part externals and holes of @param inflate_size distance.
|
|
* This function can be useful for milling with different diameters on tools.
|
|
*/
|
|
CNS_EXPORT void CNS_API CNS_AddInflatedToolPathToPart(CNS_PartPtr part, double inflate_size);
|
|
|
|
/**
|
|
* Add a tool path with a diameter.
|
|
*
|
|
* Given a tool trajectory and diameter, automatically computes and adds to the part the
|
|
* corresponding tool path. This function can be called multiple times. Free shape contours can also
|
|
* be used as tool path using the function with CNS_AddToolPathToPart.
|
|
*/
|
|
CNS_EXPORT void CNS_API CNS_AddOpenToolPathToPart(CNS_PartPtr part, CNS_Point origin,
|
|
unsigned number_of_elements,
|
|
const CNS_Element * elements,
|
|
double tool_diameter);
|
|
|
|
/**
|
|
* Specify it tool paths can go outside the sheet or not.
|
|
*
|
|
* By default tool paths are allowed to be nested outside of the sheet. This function lets you
|
|
* define if tool paths can go out of sheet or not.
|
|
*/
|
|
CNS_EXPORT void CNS_API CNS_AllowToolsOutsideSheet(CNS_LaunchingOrderPtr order, int allowed);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* CNS_TOOLING_H_ */
|