Files
Extern/Optalog/Include/cns_shear_sequence.h
SaraP f6b8c50409 Extern :
- Optalog aggiornamento a versione 11.0.
2025-09-12 10:08:10 +02:00

70 lines
2.0 KiB
C

#ifndef CNS_SHEAR_SEQUENCE_H
#define CNS_SHEAR_SEQUENCE_H
#include "cns.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct CNS_ShearSequence * CNS_ShearSequencePtr;
/**
* Compute the shear sequence on the given nesting.
*
* If there is an interpart gap beteween parts (see CNS_SetInterpartGap), then there must be a shear
* gap (see CNS_SetShearGap) that is greater or equal otherwise a sequence can not be found. In
* this case, if there is some non zero border gaps (see CNS_SetSheetGaps) the border gaps must be
* greater or equal then the interpart gap.
*/
CNS_EXPORT CNS_ShearSequencePtr CNS_API CNS_ComputeShearSequence(CNS_NestingPtr nesting);
/**
* Delete the shear sequence.
*/
CNS_EXPORT void CNS_API CNS_DeleteShearSequence(CNS_ShearSequencePtr sequence);
/**
* For debugging, display the shear sequence in SVG
*/
CNS_EXPORT void CNS_API CNS_DrawShearSequence(CNS_NestingPtr nesting,
CNS_ShearSequencePtr sequence,
const char * filename);
/**
* return the number of cut elements in the given shear sequence
*/
CNS_EXPORT unsigned CNS_API
CNS_GetNumberOfElementsInShearSequence(CNS_ShearSequencePtr sequence);
/**
* return the given element in the given shear sequence
*/
CNS_EXPORT void CNS_API
CNS_GetElementInShearSequence(CNS_ShearSequencePtr sequence,
unsigned element,
double * xo, double * yo,
double * xe, double * ye);
/**
* return the number of offcuts in the shear sequence
*/
CNS_EXPORT unsigned CNS_API
CNS_GetNumberOfOffcutsInShearSequence(CNS_ShearSequencePtr sequence);
/**
* return the given offcut in the shear sequence
*/
CNS_EXPORT void CNS_API
CNS_GetOffcutInShearSequence(CNS_ShearSequencePtr sequence,
unsigned offcut,
double * minx, double * miny,
double * maxx, double * maxy);
#ifdef __cplusplus
}
#endif
#endif