Functions | |
| int | SPI_CAL_speed (int iFlag, double diam, double *vc, double *vr) |
| Calculates cutting speed or rotation. | |
| int | SPI_CAL_feedrate (int iFlag, int nbTeeth, double vr, double *vteeth, double *vfeed) |
| Calculates feedrate value. | |
| double | SPI_CAL_read_length_accuracy () |
| Reads the length tolerance value used by GO2cam. | |
| double | SPI_CAL_angle (double x, double y) |
| Calculates the angle of the triangle whose adjacent dimension is x and the opposite side is worth y. | |
| double | SPI_CAL_dist_2pts (double *pt1, double *pt2) |
| Calculate the distance between two points. | |
| void | SPI_CAL_step_and_number (int flagEven, double length, double *lengthBegin, double *lengthEnd, double *step, int *number) |
| Calculatee number and reason / total height (sequence) | |
| double | SPI_CAL_read_facet_accuracy () |
| Reads the tolerance of the curve (for decomposition into segments) | |
| double | SPI_CAL_read_unit_ratio () |
| Reads the ratio between mm/user unit (ex inch :1/INCHCOEF) | |
| double | SPI_CAL_read_dimension_ratio () |
| Reads the ratio between mm/user unit (ex inch :1/INCHCOEF) | |
| double | SPI_CAL_acosinus (double x) |
| Calculates the arcosine of an angle. | |
| void | SPI_CAL_angle_arc (double *elt, double *radius, double *angBeg, double *angEnd, double *dAngle) |
| Calculates starting and ending angle and radius of an arc. | |
| int | SPI_CAL_fillet_2lines (double *line1, int side1, double *line2, int side2, double radius, double *fillet) |
| Calculate the fillet between two lines. | |
| void | SPI_CAL_mat_coo (double *mat, double *pt, double *ps) |
| Calculates the coordinates of a point transformed by a matrix. | |
| void | SPI_CAL_mat_pro (double *mat1, double *mat2, double *mat) |
| calculates the product of 2 3X3 matrices | |
| void | SPI_CAL_mat_inv (double *mat1, double *mat2) |
| calculates the inverse matrix | |
| void | SPI_CAL_mat_vnorm (double *vec, double *mat) |
| calculates matrix of plane which has this normal vector | |
| int | SPI_CAL_intersection_elt (int type1, double *param1, int type2, double *param2, int *nbInter, double *pt1, double *pt2) |
| calculates the intersection between 2 entities | |
| int | SPI_CAL_intersection (int ind1, int ind2, int unlimit, int *nbInter, int *indloc) |
| calculates the intersection between 2 entities | |
| int | SPI_CAL_facet_arc (int way, double *eltParam, double toler, int *indloc) |
| Facetizes an arc / toler into a list of segments. | |
| void | SPI_CAL_change_reference_elt (int refPlane, int ptPlane, int nbPt, double *listPt) |
| Changes points coordinates ( from one plane to another one) | |
| void | SPI_CAL_change_reference_point (int refPlane, int ptPlane, double *ptIn, double *ptOut) |
| Calculates the coordinates of the point in another plane. | |
| int | SPI_CAL_pt_stock_lathe (int iFlag, double *ptRef, double angle, double *ptStock) |
| Calculates intersection between rought and a line ( point + direction) | |
| int | SPI_CAL_max_stock_lathe (double *ptMin, double *ptMax) |
| calculates minimum/maximum value for the current lathe stock Ptmax | |
Basic
| double SPI_CAL_acosinus | ( | double | x | ) |
Calculates the arcosine of an angle.
| double SPI_CAL_angle | ( | double | x, |
| double | y ) |
Calculates the angle of the triangle whose adjacent dimension is x and
the opposite side is worth y.
| [in] | x | Adjacent dimension |
| [in] | y | Opposite side |
| void SPI_CAL_angle_arc | ( | double * | elt, |
| double * | radius, | ||
| double * | angBeg, | ||
| double * | angEnd, | ||
| double * | dAngle ) |
Calculates starting and ending angle and radius of an arc.
| [in] | elt | characteristics of the circle starting point, ending point and cente (TR9) |
| [out] | radius | circle or arc radius |
| [out] | angBeg | starting angle in radian between 0 and 2Pi |
| [out] | angEnd | ending angle in radian between 0 and 2Pi |
| [out] | dAngle | angular difference |
| void SPI_CAL_change_reference_elt | ( | int | refPlane, |
| int | ptPlane, | ||
| int | nbPt, | ||
| double * | listPt ) |
Changes points coordinates ( from one plane to another one)
| [in] | refPlane | reference plane |
| [in] | ptPlane | target plane |
| [in] | nbPt | points number to treat |
| [in,out] | listPt | points list to treat (nbpt*TR3) |
| void SPI_CAL_change_reference_point | ( | int | refPlane, |
| int | ptPlane, | ||
| double * | ptIn, | ||
| double * | ptOut ) |
Calculates the coordinates of the point in another plane.
| [in] | refPlane | reference plane |
| [in] | ptPlane | plane of point |
| [in] | ptIn | point coordinates in its ref plane |
| [in,out] | ptOut | points coordinates in target plane |
| double SPI_CAL_dist_2pts | ( | double * | pt1, |
| double * | pt2 ) |
Calculate the distance between two points.
| [in] | pt1 | first point (TR3) |
| [in] | pt2 | second point (TR3) |
| int SPI_CAL_facet_arc | ( | int | way, |
| double * | eltParam, | ||
| double | toler, | ||
| int * | indloc ) |
Facetizes an arc / toler into a list of segments.
| [in] | way | direction of the arc 1 Trigo | 0 clockwise |
| [in] | eltParam | canonical form of the arc (starting point, ending point, center point) |
| [in] | toler | arc cutting tolerance |
| [out] | indloc | index of the allocated table containing the list of points |
| int SPI_CAL_feedrate | ( | int | iFlag, |
| int | nbTeeth, | ||
| double | vr, | ||
| double * | vteeth, | ||
| double * | vfeed ) |
Calculates feedrate value.
| [in] | iFlag | 0 vfeed = vr * vteeth * nbteeth , 1 vteeth = vfeed / vr / nbteeth |
| [in] | nbTeeth | Number of teeth |
| [in] | vr | spindle speed |
| [in,out] | vteeth | feedrate / teeth |
| [in,out] | vfeed | feedrate |
| int SPI_CAL_fillet_2lines | ( | double * | line1, |
| int | side1, | ||
| double * | line2, | ||
| int | side2, | ||
| double | radius, | ||
| double * | fillet ) |
Calculate the fillet between two lines.
| [in] | line1 | first line (TR9) |
| [in] | side1 | first side to tangency (-1, +1) |
| [in] | line2 | second line (TR9) |
| [in] | side2 | second side to tangency (-1, +1) |
| [in] | radius | radius of a filet |
| [out] | fillet |
| int SPI_CAL_intersection | ( | int | ind1, |
| int | ind2, | ||
| int | unlimit, | ||
| int * | nbInter, | ||
| int * | indloc ) |
calculates the intersection between 2 entities
| [in] | ind1 | index in the database of the 1st geometrical entity |
| [in] | ind2 | index in the database of the 2nd geometrical entity |
| [in] | unlimit | if 1, consider consider limited entities as unlimited |
| [out] | nbInter | number of intersections between the 2 elements |
| [out] | indloc | index of the allocated table containing the list of points |
| int SPI_CAL_intersection_elt | ( | int | type1, |
| double * | param1, | ||
| int | type2, | ||
| double * | param2, | ||
| int * | nbInter, | ||
| double * | pt1, | ||
| double * | pt2 ) |
calculates the intersection between 2 entities
| [in] | type1 | 1st entity type (SPI_ELTTYPE_SEGMENT, SPI_ELTTYPE_ARC) |
| [in] | param1 | 1st entity coordinates (TR9) |
| [in] | type2 | 2nd entity type (SPI_ELTTYPE_SEGMENT, SPI_ELTTYPE_ARC) |
| [in] | param2 | 2nd entity coordinates (TR9) |
| [out] | nbInter | number of intersections between the 2 elements (2 MAXI) |
| [out] | pt1 | 1st intersection point (TR3) |
| [out] | pt2 | 2nd intersection point (TR3) |
| void SPI_CAL_mat_coo | ( | double * | mat, |
| double * | pt, | ||
| double * | ps ) |
Calculates the coordinates of a point transformed by a matrix.
| [in] | mat | transformation matrix (TR9) |
| [in] | pt | point to transform (TR3) |
| [out] | ps | point from the transformation. |
| void SPI_CAL_mat_inv | ( | double * | mat1, |
| double * | mat2 ) |
calculates the inverse matrix
| [in] | mat1 | reference matrix |
| [out] | mat2 | reverse matrix |
| void SPI_CAL_mat_pro | ( | double * | mat1, |
| double * | mat2, | ||
| double * | mat ) |
calculates the product of 2 3X3 matrices
| [in] | mat1,mat2 | matrices 3X3 |
| [out] | mat | calculated matrix |
| void SPI_CAL_mat_vnorm | ( | double * | vec, |
| double * | mat ) |
calculates matrix of plane which has this normal vector
| [in] | vec | normal vector |
| [out] | mat | calculated matrice |
| int SPI_CAL_max_stock_lathe | ( | double * | ptMin, |
| double * | ptMax ) |
calculates minimum/maximum value for the current lathe stock
Ptmax
| [out] | ptMin | Stock point min |
| [out] | ptMax | Stock point max |
| int SPI_CAL_pt_stock_lathe | ( | int | iFlag, |
| double * | ptRef, | ||
| double | angle, | ||
| double * | ptStock ) |
Calculates intersection between rought and a line ( point + direction)
| [in] | iFlag | 0 nearest point , 1 farest point |
| [in] | ptRef | search direction |
| [in] | angle | (angle in degrees) |
| [out] | ptStock | Found point |
| double SPI_CAL_read_dimension_ratio | ( | ) |
Reads the ratio between mm/user unit (ex inch :1/INCHCOEF)
| double SPI_CAL_read_facet_accuracy | ( | ) |
Reads the tolerance of the curve (for decomposition into segments)
| double SPI_CAL_read_length_accuracy | ( | ) |
Reads the length tolerance value used by GO2cam.
| double SPI_CAL_read_unit_ratio | ( | ) |
Reads the ratio between mm/user unit (ex inch :1/INCHCOEF)
| int SPI_CAL_speed | ( | int | iFlag, |
| double | diam, | ||
| double * | vc, | ||
| double * | vr ) |
Calculates cutting speed or rotation.
| [in] | iFlag | 0 vr = 1000*vc/pi/diam , 1 vc = vr*pi*diam/1000 milling 10 vr = 1000*vc/pi/diam ,11 vc = vr*pi*diam/1000 lathe |
| [in] | diam | tool diameter |
| [in,out] | vc | cutting speed |
| [in,out] | vr | spindle speed |
| void SPI_CAL_step_and_number | ( | int | flagEven, |
| double | length, | ||
| double * | lengthBegin, | ||
| double * | lengthEnd, | ||
| double * | step, | ||
| int * | number ) |
Calculatee number and reason / total height (sequence)
| [in] | flagEven | 0 Any number | 1 Even number only |
| [in] | length | total length to decompose |
| [in,out] | lengthBegin | start length |
| [in,out] | lengthEnd | end length |
| [out] | step | reason for decomposition calculation |
| [out] | number | number of decomposition (steps) |