EgtGeomKernel :
- in Zmap aggiunta AvoidSphere - aggiunta funzione IntersLineSphere - migliorie a visualizzazione Zmap.
This commit is contained in:
+16
-16
@@ -3940,7 +3940,7 @@ VolZmap::CompCyl_Drilling( unsigned int nGrid, const Point3d& ptS, const Point3d
|
||||
Point3d ptInt1, ptInt2 ;
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
if ( IntersLineCylinder( ptC, Z_AX, CylFrame, dLen, dRad, ptInt1, ptInt2,vtN1, vtN2, bTapB, bTapT)) {
|
||||
if ( IntersLineCylinder( ptC, Z_AX, CylFrame, dLen, dRad, bTapB, bTapT, ptInt1, ptInt2,vtN1, vtN2)) {
|
||||
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z ;
|
||||
@@ -4018,8 +4018,8 @@ VolZmap::CompConus_Drilling( unsigned int nGrid, const Point3d & ptS, const Poin
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
// Cilindro
|
||||
if ( IntersLineCylinder( ptC - vtV1 * dL, Z_AX, ConusFrame, dLen, dMaxRad,
|
||||
ptInt1, ptInt2, vtN1, vtN2, true, bTapCylEn)) {
|
||||
if ( IntersLineCylinder( ptC - vtV1 * dL, Z_AX, ConusFrame, dLen, dMaxRad, true, bTapCylEn,
|
||||
ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + vtV1.z * dL ;
|
||||
dMax = ptInt2.z + vtV1.z * dL ;
|
||||
@@ -4037,8 +4037,8 @@ VolZmap::CompConus_Drilling( unsigned int nGrid, const Point3d & ptS, const Poin
|
||||
}
|
||||
|
||||
// Cono
|
||||
if ( IntersLineConus( ptC , Z_AX, ConusFrame, dTan, dl, dL,
|
||||
ptInt1, ptInt2, vtN1, vtN2, bTapT, true)) {
|
||||
if ( IntersLineConus( ptC , Z_AX, ConusFrame, dTan, dl, dL, bTapT, true,
|
||||
ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z /*+ vtV1.z * dL*/ ;
|
||||
dMax = ptInt2.z /*+ vtV1.z * dL*/ ;
|
||||
@@ -4175,7 +4175,7 @@ VolZmap::CompCyl_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
// Cilindro iniziale
|
||||
if ( IntersLineCylinder( ptC, Z_AX, CylFrame, dHei, dRad, ptInt1, ptInt2, vtN1, vtN2, bCylSt, bCylEn)) {
|
||||
if ( IntersLineCylinder( ptC, Z_AX, CylFrame, dHei, dRad, bCylSt, bCylEn, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z ;
|
||||
dMax = ptInt2.z ;
|
||||
@@ -4195,7 +4195,7 @@ VolZmap::CompCyl_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
|
||||
// Cilindro finale:L'unica differenza rispetto a prima è l'origine
|
||||
// del sistema di riferimento, quindi usiamo lo stesso sistema sommando a ptC
|
||||
// il vettore che congiunge le due origini.
|
||||
if ( IntersLineCylinder( ptC - vtMove, Z_AX, CylFrame, dHei, dRad, ptInt1, ptInt2, vtN1, vtN2, bCylSt, bCylEn)) {
|
||||
if ( IntersLineCylinder( ptC - vtMove, Z_AX, CylFrame, dHei, dRad, bCylSt, bCylEn, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + vtMove.z ;
|
||||
dMax = ptInt2.z + vtMove.z ;
|
||||
@@ -4232,7 +4232,7 @@ VolZmap::CompCyl_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
|
||||
|
||||
// Cilindro ellittico di punta
|
||||
if ( IntersLineEllipticalCylinder( Z_AX, ptC, CylFrame, dSqRad,
|
||||
dLongLen, dOrtLen, ptInt1, ptInt2, vtN1, vtN2, bElpsT, bElpsT)) {
|
||||
dLongLen, dOrtLen, bElpsT, bElpsT, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z ;
|
||||
dMax = ptInt2.z ;
|
||||
@@ -4253,7 +4253,7 @@ VolZmap::CompCyl_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
|
||||
// del sistema di riferimento, quindi usiamo lo stesso sistema sommando a ptC
|
||||
// il vettore che congiunge le due origini.
|
||||
if ( IntersLineEllipticalCylinder( Z_AX, ptC - dHei * vtV1, CylFrame, dSqRad,
|
||||
dLongLen, dOrtLen, ptInt1, ptInt2, vtN1, vtN2, bElpsB, bElpsB)) {
|
||||
dLongLen, dOrtLen, bElpsB, bElpsB, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + dHei * vtV1.z ;
|
||||
dMax = ptInt2.z + dHei * vtV1.z ;
|
||||
@@ -4391,7 +4391,7 @@ VolZmap::CompConus_Milling( unsigned int nGrid, const Point3d & ptS, const Point
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
// Cono iniziale
|
||||
if ( IntersLineConus( ptC, Z_AX, ConusFrame, dTan, dl, dL, ptInt1, ptInt2, vtN1, vtN2, bConeT, bConeB)) {
|
||||
if ( IntersLineConus( ptC, Z_AX, ConusFrame, dTan, dl, dL, bConeT, bConeB, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z ;
|
||||
@@ -4410,7 +4410,7 @@ VolZmap::CompConus_Milling( unsigned int nGrid, const Point3d & ptS, const Point
|
||||
}
|
||||
|
||||
// Cono finale
|
||||
if ( IntersLineConus( ptC - vtMove, Z_AX, ConusFrame, dTan, dl, dL, ptInt1, ptInt2, vtN1, vtN2, bConeT, bConeB)) {
|
||||
if ( IntersLineConus( ptC - vtMove, Z_AX, ConusFrame, dTan, dl, dL, bConeT, bConeB, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + vtMove.z ;
|
||||
@@ -4577,7 +4577,7 @@ VolZmap::CompConus_Milling( unsigned int nGrid, const Point3d & ptS, const Point
|
||||
|
||||
// Traslazione ellisse di punta
|
||||
if ( IntersLineEllipticalCylinder( Z_AX, ptC - vtV1 * dl, ConusFrame, dSqMinRad,
|
||||
dLongLen, dOrtLen, ptInt1, ptInt2, vtN1, vtN2, bElpsT, bElpsT)) {
|
||||
dLongLen, dOrtLen, bElpsT, bElpsT, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + vtV1.z * dl ;
|
||||
dMax = ptInt2.z + vtV1.z * dl ;
|
||||
@@ -4596,7 +4596,7 @@ VolZmap::CompConus_Milling( unsigned int nGrid, const Point3d & ptS, const Point
|
||||
|
||||
// Traslazione ellisse di base
|
||||
if ( IntersLineEllipticalCylinder( Z_AX, ptC - vtV1 * dL, ConusFrame, dSqMaxRad,
|
||||
dLongLen, dOrtLen, ptInt1, ptInt2, vtN1, vtN2, bElpsB, bElpsB)) {
|
||||
dLongLen, dOrtLen, bElpsB, bElpsB, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + vtV1.z * dL ;
|
||||
dMax = ptInt2.z + vtV1.z * dL ;
|
||||
@@ -4630,7 +4630,7 @@ VolZmap::CompConus_Milling( unsigned int nGrid, const Point3d & ptS, const Point
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
// Cono
|
||||
if ( IntersLineConus( ptC, Z_AX, ConusFrame, dTan, dl, dL, ptInt1, ptInt2, vtN1, vtN2, bConeT, bConeB)) {
|
||||
if ( IntersLineConus( ptC, Z_AX, ConusFrame, dTan, dl, dL, bConeT, bConeB, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z ;
|
||||
dMax = ptInt2.z ;
|
||||
@@ -4649,7 +4649,7 @@ VolZmap::CompConus_Milling( unsigned int nGrid, const Point3d & ptS, const Point
|
||||
|
||||
// Traslazione ellisse
|
||||
if ( IntersLineEllipticalCylinder( Z_AX, ptC - vtV1 * dL, ConusFrame, dSqMaxRad,
|
||||
dLongLen, dOrtLen, ptInt1, ptInt2, vtN1, vtN2, bConeB, bConeB)) {
|
||||
dLongLen, dOrtLen, bConeB, bConeB, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z + vtV1.z * dL ;
|
||||
dMax = ptInt2.z + vtV1.z * dL ;
|
||||
@@ -4897,7 +4897,7 @@ VolZmap::CompBall_Milling( unsigned int nGrid, const Point3d & ptLs, const Point
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
// Cilindro
|
||||
if ( IntersLineCylinder( ptC, Z_AX, CylFrame, dLengthPath, dRad, ptInt1, ptInt2, vtN1, vtN2, false, false)) {
|
||||
if ( IntersLineCylinder( ptC, Z_AX, CylFrame, dLengthPath, dRad, false, false, ptInt1, ptInt2, vtN1, vtN2)) {
|
||||
if ( ptInt1.z < ptInt2.z) {
|
||||
dMin = ptInt1.z ;
|
||||
dMax = ptInt2.z ;
|
||||
|
||||
Reference in New Issue
Block a user