From f1ce998815a5561cba1fea374ed2542dd0ccb890 Mon Sep 17 00:00:00 2001 From: Daniele Bariletti Date: Wed, 8 May 2024 17:50:46 +0200 Subject: [PATCH] Include : - aggiunta funzione MakeRational per le curve di Bezier - aggiunta funzione di conversione da ICurve a curva di Bezier semplice o composta. --- EGkCurveAux.h | 4 ++++ EGkCurveBezier.h | 1 + 2 files changed, 5 insertions(+) diff --git a/EGkCurveAux.h b/EGkCurveAux.h index bd3e651..daffb58 100644 --- a/EGkCurveAux.h +++ b/EGkCurveAux.h @@ -46,6 +46,10 @@ struct CNurbsData // N.B. : in caso la curva sia razionale i punti di controllo sono in forma NON OMOGENEA [ x, y, z, w] ( dove la forma OMOGENEA è [ w*x, w*y, w*z, w]) // tutte le operazioni richiedono la forma OMOGENEA, finite le quali posso riportarmi alla forma NON OMOGENEA +//---------------------------------------------------------------------------- +//! Trasforma una linea in una nuova curva di Bezier semplice +EGK_EXPORT ICurve* CurveToBezierCurve( const ICurve* pCrv) ; + //---------------------------------------------------------------------------- //! Trasforma una linea in una nuova curva di Bezier semplice EGK_EXPORT ICurveBezier* LineToBezierCurve( const ICurveLine* pLine) ; diff --git a/EGkCurveBezier.h b/EGkCurveBezier.h index 6cc1c09..c94341c 100644 --- a/EGkCurveBezier.h +++ b/EGkCurveBezier.h @@ -37,6 +37,7 @@ class __declspec( novtable) ICurveBezier : public ICurve virtual double GetControlWeight( int nInd, bool* pbOk = NULL) const = 0 ; virtual bool GetControlPolygonLength( double& dLen) const = 0 ; virtual int GetSingularParam( double& dPar) const = 0 ; + virtual bool MakeRational( void) = 0 ; } ; //-----------------------------------------------------------------------------