Fonctions | |
| int | SPI_CAL_speed (int iFlag, double diam, double *vc, double *vr) |
| Calcule la vitesse de coupe ou rotation. | |
| int | SPI_CAL_feedrate (int iFlag, int nbTeeth, double vr, double *vteeth, double *vfeed) |
| Calcule la vitesse de coupe ou rotation. | |
| double | SPI_CAL_read_length_accuracy () |
| Lit la valeur de tolérance de longueur utilisée par GO2cam. | |
| double | SPI_CAL_angle (double x, double y) |
| Calcule l'angle du triangle dont le cote adjacent vaut x et le cote oppose vaut y. | |
| double | SPI_CAL_dist_2pts (double *pt1, double *pt2) |
| Calcule la distance entre deux points. | |
| void | SPI_CAL_step_and_number (int flagEven, double length, double *lengthBegin, double *lengthEnd, double *step, int *number) |
| Calcule le nombre et la raison / hauteur totale (Suite) | |
| double | SPI_CAL_read_facet_accuracy () |
| Lit la tolérance de la courbe (pour la décomposition en segments) | |
| double | SPI_CAL_read_unit_ratio () |
| Lit le rapport entre mm/unité utilisateur (ex inch :1/INCHCOEF) | |
| double | SPI_CAL_read_dimension_ratio () |
| Lit le rapport entre mm/unité utilisateur (ex inch :1/INCHCOEF) | |
| double | SPI_CAL_acosinus (double x) |
| Calcule l'arcosinus d'un angle. | |
| void | SPI_CAL_angle_arc (double *elt, double *radius, double *angBeg, double *angEnd, double *dAngle) |
| Calcule les angles de départ, d'arrivée et le rayon d'un cercle. | |
| int | SPI_CAL_fillet_2lines (double *line1, int side1, double *line2, int side2, double radius, double *fillet) |
| Calcule un congé entre 2 droites. | |
| void | SPI_CAL_mat_coo (double *mat, double *pt, double *ps) |
| Calcule les coordonnées d'un point transformé par une matrice. | |
| void | SPI_CAL_mat_pro (double *mat1, double *mat2, double *mat) |
| calcule le produit de 2 matrices 3X3 | |
| void | SPI_CAL_mat_inv (double *mat1, double *mat2) |
| calcule la matrice inversée | |
| void | SPI_CAL_mat_vnorm (double *vec, double *mat) |
| calcule la matrice du plan qui a ce vecteur normal | |
| int | SPI_CAL_intersection_elt (int type1, double *param1, int type2, double *param2, int *nbInter, double *pt1, double *pt2) |
| calcule l'intersection entre 2 élements géometrique | |
| int | SPI_CAL_intersection (int ind1, int ind2, int unlimit, int *nbInter, int *indloc) |
| calcule l'intersection entre 2 élements géometrique | |
| int | SPI_CAL_facet_arc (int way, double *eltParam, double toler, int *indloc) |
| Facétise un arc / toler en une liste de segments. | |
| void | SPI_CAL_change_reference_elt (int refPlane, int ptPlane, int nbPt, double *listPt) |
| Change le repère du tableau de points. | |
| void | SPI_CAL_change_reference_point (int refPlane, int ptPlane, double *ptIn, double *ptOut) |
| Calcule les coordonnées du point dans un autre plan. | |
| int | SPI_CAL_pt_stock_lathe (int iFlag, double *ptRef, double angle, double *ptStock) |
| Calcule l'intersection entre le brut et une droite passant par un point suivant une direction. | |
| int | SPI_CAL_max_stock_lathe (double *ptMin, double *ptMax) |
| Calcule les maxi du brut courant ( brut de tournage ) Ptmax. | |
Base
| double SPI_CAL_acosinus | ( | double | x | ) |
Calcule l'arcosinus d'un angle.
| double SPI_CAL_angle | ( | double | x, |
| double | y ) |
Calcule l'angle du triangle dont le cote adjacent vaut x et
le cote oppose vaut y.
| [in] | x | Côté adjacent |
| [in] | y | Côté opposé |
| void SPI_CAL_angle_arc | ( | double * | elt, |
| double * | radius, | ||
| double * | angBeg, | ||
| double * | angEnd, | ||
| double * | dAngle ) |
Calcule les angles de départ, d'arrivée et le rayon d'un cercle.
| [in] | elt | caractéristiques du cercle point de depart, point d'arrivée et centre (TR9) |
| [out] | radius | rayon du cercle ou de l'arc |
| [out] | angBeg | angle de d'part en radian entre 0 et 2Pi |
| [out] | angEnd | angle de fin en radian entre 0 et 2Pi |
| [out] | dAngle | différence angulaire |
| void SPI_CAL_change_reference_elt | ( | int | refPlane, |
| int | ptPlane, | ||
| int | nbPt, | ||
| double * | listPt ) |
Change le repère du tableau de points.
| [in] | refPlane | plan de référence |
| [in] | ptPlane | plan des points |
| [in] | nbPt | nombre de points a traiter (CBddTRIPLET) |
| [in,out] | listPt | liste de point à traiter (nbpt*TR3) |
| void SPI_CAL_change_reference_point | ( | int | refPlane, |
| int | ptPlane, | ||
| double * | ptIn, | ||
| double * | ptOut ) |
Calcule les coordonnées du point dans un autre plan.
| [in] | refPlane | plan de référence |
| [in] | ptPlane | plan du point |
| [in] | ptIn | coordonnées du point dans son plan de référence |
| [in,out] | ptOut | coordonnées du point dans le plan ciblé |
| double SPI_CAL_dist_2pts | ( | double * | pt1, |
| double * | pt2 ) |
Calcule la distance entre deux points.
| [in] | pt1 | premier point (TR3) |
| [in] | pt2 | deuxième point (TR3) |
| int SPI_CAL_facet_arc | ( | int | way, |
| double * | eltParam, | ||
| double | toler, | ||
| int * | indloc ) |
Facétise un arc / toler en une liste de segments.
| [in] | way | sens de l'arc 1 Trigo | 0 Horaire |
| [in] | eltParam | forme canonique de l'arc (Point de départ, point d'arrivée, point de centre) |
| [in] | toler | tolérance de decoupe de l'arc |
| [out] | indloc | indice du tableau alloué contenant la liste des points |
| int SPI_CAL_feedrate | ( | int | iFlag, |
| int | nbTeeth, | ||
| double | vr, | ||
| double * | vteeth, | ||
| double * | vfeed ) |
Calcule la vitesse de coupe ou rotation.
param[in] iFlag 0 vfeed = vr * vteeth * nbteeth ,
1 vteeth = vfeed / vr / nbteeth param[in] nbTeeth Nombre de dent param[in] vr vitesse rotation
param[in,out] vteeth avance / dent param[in,out] vfeed vitesse d'avance
| int SPI_CAL_fillet_2lines | ( | double * | line1, |
| int | side1, | ||
| double * | line2, | ||
| int | side2, | ||
| double | radius, | ||
| double * | fillet ) |
Calcule un congé entre 2 droites.
| [in] | line1 | première droite (TR9) |
| [in] | side1 | premier coté / tangence (-1, +1) |
| [in] | line2 | deuxième droite (TR9) |
| [in] | side2 | deuxième coté / tangence (-1, +1) |
| [in] | radius | rayon du congé |
| [out] | fillet | congé |
| int SPI_CAL_intersection | ( | int | ind1, |
| int | ind2, | ||
| int | unlimit, | ||
| int * | nbInter, | ||
| int * | indloc ) |
calcule l'intersection entre 2 élements géometrique
| [in] | ind1 | indice dans la base de donnée de la 1ère entité géométrique |
| [in] | ind2 | indice dans la base de donnée de la 2ème entité géométrique |
| [in] | unlimit | si 1, considère les entités limitées comme illimitées |
| [out] | nbInter | nombre d'intersections entre les 2 éléments |
| [out] | indloc | indice du tableau alloué contenant la liste des points |
| int SPI_CAL_intersection_elt | ( | int | type1, |
| double * | param1, | ||
| int | type2, | ||
| double * | param2, | ||
| int * | nbInter, | ||
| double * | pt1, | ||
| double * | pt2 ) |
calcule l'intersection entre 2 élements géometrique
| [in] | type1 | type élement 1 (SPI_ELTTYPE_SEGMENT, SPI_ELTTYPE_ARC) |
| [in] | param1 | paramètre définissant l'élément 1 (TR9) |
| [in] | type2 | type élément 2 (SPI_ELTTYPE_SEGMENT, SPI_ELTTYPE_ARC) |
| [in] | param2 | paramètre définissant l'élément 2 (TR9) |
| [out] | nbInter | nombre d'intersections entre les 2 éléments (2 MAXI) |
| [out] | pt1 | 1er point d'intersection (TR3) |
| [out] | pt2 | 2ème point d'intersection (TR3) |
| void SPI_CAL_mat_coo | ( | double * | mat, |
| double * | pt, | ||
| double * | ps ) |
Calcule les coordonnées d'un point transformé par une matrice.
| [in] | mat | matrice de transformation (TR9) |
| [in] | pt | point à transformer (TR3) |
| [out] | ps | point issu de la transformmation. |
| void SPI_CAL_mat_inv | ( | double * | mat1, |
| double * | mat2 ) |
calcule la matrice inversée
| [in] | mat1 | matrice réference |
| [out] | mat2 | matrice inversée |
| void SPI_CAL_mat_pro | ( | double * | mat1, |
| double * | mat2, | ||
| double * | mat ) |
calcule le produit de 2 matrices 3X3
| [in] | mat1,mat2 | matrices 3X3 |
| [out] | mat | matrice calculeée |
| void SPI_CAL_mat_vnorm | ( | double * | vec, |
| double * | mat ) |
calcule la matrice du plan qui a ce vecteur normal
| [in] | vec | vecteur normal |
| [out] | mat | matrice calculée |
| int SPI_CAL_max_stock_lathe | ( | double * | ptMin, |
| double * | ptMax ) |
Calcule les maxi du brut courant ( brut de tournage )
Ptmax.
| [out] | ptMin | Point mini du brut |
| [out] | ptMax | Point maxi du brut |
| int SPI_CAL_pt_stock_lathe | ( | int | iFlag, |
| double * | ptRef, | ||
| double | angle, | ||
| double * | ptStock ) |
Calcule l'intersection entre le brut et une droite passant par un
point suivant une direction.
| [in] | iFlag | 0 point le plus près , 1 point le plus loin |
| [in] | ptRef | direction de recherche |
| [in] | angle | (angle en Degrés) |
| [out] | ptStock | point calculé |
| double SPI_CAL_read_dimension_ratio | ( | ) |
Lit le rapport entre mm/unité utilisateur (ex inch :1/INCHCOEF)
| double SPI_CAL_read_facet_accuracy | ( | ) |
Lit la tolérance de la courbe (pour la décomposition en segments)
| double SPI_CAL_read_length_accuracy | ( | ) |
Lit la valeur de tolérance de longueur utilisée par GO2cam.
| double SPI_CAL_read_unit_ratio | ( | ) |
Lit le rapport entre mm/unité utilisateur (ex inch :1/INCHCOEF)
| int SPI_CAL_speed | ( | int | iFlag, |
| double | diam, | ||
| double * | vc, | ||
| double * | vr ) |
Calcule la vitesse de coupe ou rotation.
param[in] iFlag 0 vr = 1000*vc/pi/diam , 1 vc = vr*pi*diam/1000 fraisage
10 vr = 1000*vc/pi/diam ,11 vc = vr*pi*diam/1000 tour param[in] diam diametre outil
param[in,out] vc vitesse de coupe param[in,out] vr vitesse de rotation
| void SPI_CAL_step_and_number | ( | int | flagEven, |
| double | length, | ||
| double * | lengthBegin, | ||
| double * | lengthEnd, | ||
| double * | step, | ||
| int * | number ) |
Calcule le nombre et la raison / hauteur totale (Suite)
| [in] | flagEven | 0 Nombre Quelconque | 1 Nombre pair seulement |
| [in] | length | longueur totale a décomposer |
| [in,out] | lengthBegin | longueur de départ |
| [in,out] | lengthEnd | longueur de fin |
| [out] | step | raison du calcul de décomposition |
| [out] | number | nombre de décomposition (pas) |