Include :

- aggiornamento prototipi
- in Vector3d aggiunte funzioni GetToLoc, GetToGlob e GetLocToLoc per avere subito una copia del trasformato
- in Point3d aggiunte funzioni GetToLoc, GetToGlob e GetLocToLoc per avere subito una copia del trasformato.
This commit is contained in:
DarioS
2022-08-23 11:45:50 +02:00
parent ebae52195d
commit 34599980fe
4 changed files with 97 additions and 3 deletions
+27
View File
@@ -0,0 +1,27 @@
//----------------------------------------------------------------------------
// EgalTech 2022-2022
//----------------------------------------------------------------------------
// File : MedialAxis.h Data : 22.08.22 Versione : 2.4h2
// Contenuto : Dichiarazione funzione calcolo MedialAxis principale.
//
//
//
// Modifiche : 22.08.22 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGkCurve.h"
//----------------------- Macro per import/export ----------------------------
#undef EGK_EXPORT
#if defined( I_AM_EGK) // da definirsi solo nella DLL
#define EGK_EXPORT __declspec( dllexport)
#else
#define EGK_EXPORT __declspec( dllimport)
#endif
//-----------------------------------------------------------------------------
EGK_EXPORT bool CurveSimpleMedialAxis( const ICurve* pCrv, PolyLine& PL) ;
+35 -2
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2013-2014
// EgalTech 2013-2022
//----------------------------------------------------------------------------
// File : EGkPoint3d.h Data : 30.05.14 Versione : 1.5e10
// File : EGkPoint3d.h Data : 22.08.224 Versione : 2.4h2
// Contenuto : Dichiarazione della classe Punto 3d.
//
//
@@ -364,3 +364,36 @@ AreSamePointXYExact( const Point3d& ptP1, const Point3d& ptP2)
{
return ( SqDistXY( ptP1, ptP2) < SQ_EPS_ZERO) ;
}
//----------------------------------------------------------------------------
//! Restituisce una copia in locale del punto passato
//----------------------------------------------------------------------------
inline Point3d
GetToLoc( const Point3d& ptP, const Frame3d& frRef)
{
Point3d ptQ = ptP ;
ptQ.ToLoc( frRef) ;
return ptQ ;
}
//----------------------------------------------------------------------------
//! Restituisce una copia in globale del punto passato
//----------------------------------------------------------------------------
inline Point3d
GetToGlob( const Point3d& ptP, const Frame3d& frRef)
{
Point3d ptQ = ptP ;
ptQ.ToGlob( frRef) ;
return ptQ ;
}
//----------------------------------------------------------------------------
//! Restituisce una copia dal primo al secondo riferimento del punto passato
//----------------------------------------------------------------------------
inline Point3d
GetLocToLoc( const Point3d& ptP, const Frame3d& frOri, const Frame3d& frDest)
{
Point3d ptQ = ptP ;
ptQ.LocToLoc( frOri, frDest) ;
return ptQ ;
}
+34 -1
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2013-2022
//----------------------------------------------------------------------------
// File : EGkVector3d.h Data : 18.082.22 Versione : 2.4h2
// File : EGkVector3d.h Data : 22.08.22 Versione : 2.4h2
// Contenuto : Dichiarazione della classe Vettore 3d.
//
//
@@ -403,3 +403,36 @@ AreOrthoExact( const Vector3d& vtV1, const Vector3d& vtV2)
{
return ( abs( vtV1 * vtV2) < COS_ORTO_ANG_ZERO) ;
}
//----------------------------------------------------------------------------
//! Restituisce una copia in locale del vettore passato
//----------------------------------------------------------------------------
inline Vector3d
GetToLoc( const Vector3d& vtV, const Frame3d& frRef)
{
Vector3d vtW = vtV ;
vtW.ToLoc( frRef) ;
return vtW ;
}
//----------------------------------------------------------------------------
//! Restituisce una copia in globale del vettore passato
//----------------------------------------------------------------------------
inline Vector3d
GetToGlob( const Vector3d& vtV, const Frame3d& frRef)
{
Vector3d vtW = vtV ;
vtW.ToGlob( frRef) ;
return vtW ;
}
//----------------------------------------------------------------------------
//! Restituisce una copia dal primo al secondo riferimento del vettore passato
//----------------------------------------------------------------------------
inline Vector3d
GetLocToLoc( const Vector3d& vtV, const Frame3d& frOri, const Frame3d& frDest)
{
Vector3d vtW = vtV ;
vtW.LocToLoc( frOri, frDest) ;
return vtW ;
}
+1
View File
@@ -506,6 +506,7 @@ EXE_EXPORT int ExeSplitText( int nId, int* pnCount) ;
EXE_EXPORT bool ExeInvertCurve( const INTVECTOR& vIds) ;
EXE_EXPORT bool ExeOffsetCurve( int nId, double dDist, int nType) ;
EXE_EXPORT int ExeOffsetCurveAdv( int nId, double dDist, int nType, int* pnCount) ;
EXE_EXPORT int ExeCurveMedialAxis( int nId) ;
EXE_EXPORT bool ExeApproxCurve( int nId, int nApprType, double dLinTol) ;
EXE_EXPORT bool ExeProjectCurveOnPlane( int nId, const Point3d& ptOn, const Vector3d& vtN, int nRefType) ;
EXE_EXPORT bool ExeChangeClosedCurveStart( int nId, double dU) ;