6646aee01c
- estratta funzione per trovare il punto corrispondente sulla seconda curva di una coppia di curve da sincronizzare. - pulizia codice.
38 lines
1.9 KiB
C++
38 lines
1.9 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2013-2013
|
|
//----------------------------------------------------------------------------
|
|
// File : CurveAux.h Data : 22.11.13 Versione : 1.3a1
|
|
// Contenuto : Dichiarazione di alcune funzioni di utilità per le curve.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 22.11.13 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include "/EgtDev/Include/EGkCurveAux.h"
|
|
|
|
class Voronoi ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
bool IsClosed( const ICurve& crvC) ;
|
|
bool IsValidParam( const ICurve& crvC, double dPar, ICurve::Side nSide) ;
|
|
bool IsStartParam( const ICurve& crvC, double dPar) ;
|
|
bool IsEndParam( const ICurve& crvC, double dPar) ;
|
|
bool GetNearestExtremityToPoint( const Point3d& ptP, const ICurve& Curve, bool& bStart) ;
|
|
bool MoveParamToAvoidTg( double& dU, ICurve::Side nSide, const ICurve& Curve) ;
|
|
bool GetTang( const ICurve& crvC, double dU, ICurve::Side nS, Vector3d& vtTang) ;
|
|
bool GetPointTang( const ICurve& crvC, double dU, ICurve::Side nS, Point3d& ptPos, Vector3d& vtTang) ;
|
|
bool GetPointDiffGeom( const ICurve& crvC, double dU, ICurve::Side nS, CrvPointDiffGeom& oDiffG) ;
|
|
bool ImproveCurveParamAtPoint( double& dU, const Point3d& ptP, const ICurve* pCrv) ;
|
|
bool CurveGetAreaXY( const ICurve& crvC, double& dArea) ;
|
|
bool CurveGetArea( const ICurve& crvC, Plane3d& plPlane, double& dArea) ;
|
|
bool CurveDump( const ICurve& crvC, std::string& sOut, bool bMM, const char* szNewLine) ;
|
|
bool CopyExtrusion( const ICurve* pSouCrv, ICurve* pDestCrv) ;
|
|
bool CopyThickness( const ICurve* pSouCrv, ICurve* pDestCrv) ;
|
|
ICurveBezier* ApproxCurveBezierWithSingleCubic( const ICurve* pCrv) ;
|
|
Voronoi* GetCurveVoronoi( const ICurve& crvC) ;
|
|
bool GetChainedCurves( ICRVCOMPOPOVECTOR& vCrv, double dChainTol, bool bAllowInvert) ; |