EgtGeomKernel :

- aggiunta la funzione per modificare un singolo peso ad una curva di Bezier.
- aggiunta la funzione per lo screwing con una superficie di Bezier.
- aggiunto un commento.
This commit is contained in:
Daniele Bariletti
2024-05-21 15:42:57 +02:00
parent 1d4bccac4b
commit 247849d112
6 changed files with 157 additions and 53 deletions
+4
View File
@@ -2632,6 +2632,8 @@ VeryfyPolylineForRevolution( const PolyLine& PL, const Point3d& ptAx, const Vect
ptPc.z = 0 ;
++ nSeg ;
// verifico distanza
// se la curva è chiusa oppure è vicina all'asse ( entro EPS_SMALL), ma non ho che sono start o end ad essere sull'asse
// allora dovrò rimaneggiare la polyline
if ( DistPointLine( ORIG, ptPp, ptPc).IsSmall()) {
if ( bClosed ||
( ! ( nSeg == 1 && AreSamePointApprox( ORIG, ptPp)) &&
@@ -2750,10 +2752,12 @@ SurfTriMesh::CreateByScrewing( const PolyLine& PL, const Point3d& ptAx, const Ve
// verifico che la polilinea non attraversi l'asse di rivoluzione o lo tocchi in punti interni
PolyLine MyPL = PL ;
// commented for debug
if ( ! VeryfyPolylineForRevolution( MyPL, ptAx, vtAx) && ! AdjustPolylineForRevolution( MyPL, ptAx, vtAx)) {
LOG_ERROR( GetEGkLogger(), "StmCreateByRevolution : polyline inside meets axis")
return false ;
}
// commented for debug
// imposto ricalcolo
m_nStatus = ERR ;