b78212c3a1
- miglioramenti e ottimizzazioni in CD su Zmap per cilindri e tronchi di cono.
36 lines
1.3 KiB
C
36 lines
1.3 KiB
C
//----------------------------------------------------------------------------
|
|
// EgalTech 2023-2023
|
|
//----------------------------------------------------------------------------
|
|
// File : IntersLineCyl.h Data : 16.05.23 Versione : 2.5e3
|
|
// Contenuto : Dichiarazione funzioni base per intersezione linea/cilindro.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 16.05.23 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include "/EgtDev/Include/EGkPoint3d.h"
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Linea e cilindro sono nel medesimo riferimento.
|
|
// Il cilindro è centrato sull'asse Z e appoggiato sul piano XY.
|
|
// Con intersezione viene restituito true e i parametri in dU1 e dU2.
|
|
//----------------------------------------------------------------------------
|
|
bool
|
|
IntersLineCyl( const Point3d& ptL, const Vector3d& vtL,
|
|
double dRad, double dHeight,
|
|
double& dU1, double& dU2) ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
inline bool
|
|
TestIntersLineCyl( const Point3d& ptL, const Vector3d& vtL,
|
|
double dRad, double dHeight)
|
|
{
|
|
double dU1, dU2 ;
|
|
return IntersLineCyl( ptL, vtL, dRad, dHeight, dU1, dU2) ;
|
|
}
|