Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| eb2148618a |
+1
-23
@@ -15,8 +15,6 @@
|
||||
|
||||
#include "/EgtDev/Include/EGkCurveComposite.h"
|
||||
|
||||
class ICurveBezier ;
|
||||
class ICurveLine ;
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
@@ -46,29 +44,9 @@ 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 ICurveBezier* LineToBezierCurve( const ICurveLine* pLine) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Trasforma un arco in una nuova curva di Bezier semplice o composta
|
||||
EGK_EXPORT ICurve* ArcToBezierCurve( const ICurve* pArc, bool bDeg3OrDeg2 = true) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Trasforma una curva compo in una nuova curva di Bezier semplice o composta
|
||||
EGK_EXPORT ICurve* CompositeToBezierCurve( const ICurveComposite* pCrvCompo) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Trasforma una curva bezier in una nuova curva di Bezier semplice o composta di grado 2 e razionale
|
||||
EGK_EXPORT ICurve* BezierToBasicBezierCurve( const ICurveBezier* pCrvBezier) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Aumento il grado della curva di Bezier
|
||||
EGK_EXPORT ICurveBezier* BezierIncreaseDegree( const ICurveBezier* pCrvBezier) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Riduco il grado della curva di Bezier
|
||||
EGK_EXPORT ICurveBezier* BezierDecreaseDegree( const ICurveBezier* pCrvBezier, double dTol) ;
|
||||
EGK_EXPORT ICurve* ArcToBezierCurve( const ICurve* pArc) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Trasforma una curva in una nuova curva semplice o composta senza archi (solo linee o curve di Bezier)
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
|
||||
class ICurveArc ;
|
||||
class ICurveLine ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
class __declspec( novtable) ICurveBezier : public ICurve
|
||||
@@ -29,7 +28,6 @@ class __declspec( novtable) ICurveBezier : public ICurve
|
||||
virtual bool SetControlPoint( int nInd, const Point3d& ptCtrl) = 0 ;
|
||||
virtual bool SetControlPoint( int nInd, const Point3d& ptCtrl, double dW) = 0 ;
|
||||
virtual bool FromArc( const ICurveArc& crArc) = 0 ;
|
||||
virtual bool FromLine( const ICurveLine& crLine) = 0 ;
|
||||
virtual int GetDegree( void) const = 0 ;
|
||||
virtual bool IsRational( void) const = 0 ;
|
||||
virtual bool IsAPoint( void) const = 0 ;
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2020-2024
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkDistLineLine.h Data : 10.05.24 Versione : 2.6e31
|
||||
// Contenuto : Dichiarazione della classe distanza fra elementi lineari.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 06.11.20 LM Creazione modulo.
|
||||
// 10.05.24 DS Portata in Include.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkPoint3d.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
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
class DistLineLine
|
||||
{
|
||||
public :
|
||||
EGK_EXPORT DistLineLine( const Point3d& ptSt1, const Point3d& ptEn1,
|
||||
const Point3d& ptSt2, const Point3d& ptEn2,
|
||||
bool bIsSegment1 = true, bool bIsSegment2 = true) ;
|
||||
EGK_EXPORT DistLineLine( const Point3d& ptSt1, const Vector3d& vtD1, double dLen1,
|
||||
const Point3d& ptSt2, const Vector3d& vtD2, double dLen2,
|
||||
bool bIsSegment1 = true, bool bIsSegment2 = true) ;
|
||||
|
||||
public :
|
||||
EGK_EXPORT bool GetSqDist( double& dSqDist) const ;
|
||||
EGK_EXPORT bool GetDist( double& dDist) const ;
|
||||
EGK_EXPORT bool IsEpsilon( double dTol) const
|
||||
{ double dSqDist ; return ( GetSqDist( dSqDist) && ( dSqDist < SQ_EPS_ZERO || dSqDist < dTol * dTol)) ; }
|
||||
EGK_EXPORT bool IsSmall( void) const
|
||||
{ return IsEpsilon( EPS_SMALL) ; }
|
||||
EGK_EXPORT bool IsZero( void) const
|
||||
{ return IsEpsilon( EPS_ZERO) ; }
|
||||
EGK_EXPORT bool GetMinDistPoints( Point3d& ptMinDist1, Point3d& ptMinDist2) const ;
|
||||
EGK_EXPORT bool GetPositionsAtMinDistPoints( double& dPos1, double& dPos2) const ;
|
||||
|
||||
private :
|
||||
void Calculate( const Point3d& ptSt1, const Vector3d& vtD1, double dLen1,
|
||||
const Point3d& ptSt2, const Vector3d& vtD2, double dLen2,
|
||||
bool bIsSegment1, bool bIsSegment2) ;
|
||||
private:
|
||||
double m_dSqDist ;
|
||||
mutable double m_dDist ;
|
||||
double m_dPos1 ;
|
||||
double m_dPos2 ;
|
||||
Point3d m_ptMinDist1 ;
|
||||
Point3d m_ptMinDist2 ;
|
||||
} ;
|
||||
+1
-29
@@ -1,14 +1,13 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2024
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkLuaAux.h Data : 08.05.24 Versione : 2.6e2
|
||||
// File : EGkLuaAux.h Data : 14.04.24 Versione : 2.6d4
|
||||
// Contenuto : Funzioni per gestione parametri geometrici con LUA.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 21.03.15 DS Creazione modulo.
|
||||
// 14.04.24 DS Aggiunta gestione Quaternion.
|
||||
// 08.05.24 DS Aggiunta LuaSetParam per VCT3DVECTOR.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -277,33 +276,6 @@ LuaSetParam( lua_State* L, const Vector3d& vtPar)
|
||||
return true ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
inline bool
|
||||
LuaSetParam( lua_State* L, const VCT3DVECTOR& vPar)
|
||||
{
|
||||
try {
|
||||
// recupero dimensione vettore
|
||||
int nDim = int( vPar.size()) ;
|
||||
// creo tavola principale
|
||||
lua_createtable( L, nDim, 0) ;
|
||||
// creo e inserisco tavola per ogni componente
|
||||
for ( int i = 1 ; i <= nDim ; ++ i) {
|
||||
// creo tavola componente
|
||||
lua_createtable( L, 3, 0) ;
|
||||
for ( int j = 1 ; j <= 3 ; ++ j) {
|
||||
lua_pushnumber( L, vPar[i-1].v[j-1]) ;
|
||||
lua_rawseti( L, -2, j) ;
|
||||
}
|
||||
// la metto nel vettore
|
||||
lua_rawseti( L, -2, i) ;
|
||||
}
|
||||
}
|
||||
catch( ...) {
|
||||
return false ;
|
||||
}
|
||||
return true ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
LuaSetParam( lua_State* L, const Point3d& ptPar)
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2024-2024
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkProjectCurveSurfTm.h Data : 07.05.24 Versione : 2.6e3
|
||||
// Contenuto : Dichiarazione funzioni proiezione curve su superficie Bezier.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 07.05.24 DB Creazione modulo.
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkGeoPoint3d.h"
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
#include "/EgtDev/Include/EGkSurfBezier.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
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Proiezione di una curva su una superficie TriMesh lungo la direzione data.
|
||||
EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const Vector3d& vtDir,
|
||||
double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ;
|
||||
EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const IGeoPoint3d& gpRef,
|
||||
double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ;
|
||||
EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const ICurve& crRef,
|
||||
double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ;
|
||||
EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const ISurfTriMesh& tmRef,
|
||||
double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ;
|
||||
@@ -126,8 +126,6 @@ class __declspec( novtable) ISurfTriMesh : public ISurf
|
||||
virtual int GetPartCount( void) const = 0 ;
|
||||
virtual bool RemovePart( int nPart) = 0 ;
|
||||
virtual ISurfTriMesh* ClonePart( int nPart) const = 0 ;
|
||||
virtual bool SetTFlag( int nId, int nTFlag) = 0 ;
|
||||
virtual bool GetTFlag( int nId, int& nFlag) const = 0 ;
|
||||
virtual int GetMaxTFlag( void) const = 0 ;
|
||||
virtual bool ResetTFlags( void) = 0 ;
|
||||
} ;
|
||||
|
||||
@@ -88,8 +88,6 @@ class __declspec( novtable) IVolZmap : public IGeoObj
|
||||
virtual IVolZmap* ClonePart( int nPart) const = 0 ;
|
||||
virtual bool RemovePart( int nPart) = 0 ;
|
||||
virtual int GetPartMinDistFromPoint( const Point3d& ptP) const = 0 ;
|
||||
virtual bool AddSurfTm( const ISurfTriMesh* pStm) = 0 ;
|
||||
virtual bool MakeUniform( double dToler) = 0 ;
|
||||
} ;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
-18
@@ -323,24 +323,6 @@ LuaSetParam( lua_State* L, const std::string& sPar)
|
||||
return true ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
LuaSetParam( lua_State* L, const BOOLVECTOR& vPar)
|
||||
{
|
||||
try {
|
||||
int nSize = int( vPar.size()) ;
|
||||
lua_createtable( L, nSize, 0) ;
|
||||
for ( int i = 1 ; i <= nSize ; ++ i) {
|
||||
lua_pushboolean( L, ( vPar[i-1] ? 1 : 0)) ;
|
||||
lua_rawseti( L, -2, i) ;
|
||||
}
|
||||
}
|
||||
catch( ...) {
|
||||
return false ;
|
||||
}
|
||||
return true ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
LuaSetParam( lua_State* L, const INTVECTOR& vPar)
|
||||
|
||||
@@ -323,8 +323,6 @@ EXE_EXPORT int ExeCreatePolygonFromSide( int nParentId, int nNumSides, const Po
|
||||
const Point3d& ptFin, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateCirclesAlongCurve( int nParentId, int nCrvId, double dOffset, double dOverlap,
|
||||
double dStartAdd, double dEndAdd, double dDiam, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCreateCurveBezierForm( int nParentId, int nCrvId) ;
|
||||
|
||||
// GeomDB Create Surf
|
||||
EXE_EXPORT int ExeCreateSurfFlatRegion( int nParentId, const INTVECTOR& vCrvIds, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCreateSurfFrFatCurve( int nParentId, int nCrvId, double dRad, bool bSquaredEnds, bool bSquaredMids, double dLinTol) ;
|
||||
@@ -382,8 +380,6 @@ EXE_EXPORT int ExeCreateVolZmapEmpty( int nParentId, const Point3d& ptIni, doub
|
||||
double dDimY, double dDimZ, double dPrec, bool bTriDex, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateVolZmapByRegionExtrusion( int nParentId, int nSfrId, double dDimZ, double dPrec, bool bTriDex) ;
|
||||
EXE_EXPORT int ExeCreateVolZmapFromSurfTm( int nParentId, int nStmId, double dPrec, bool bTriDex) ;
|
||||
EXE_EXPORT bool ExeUpdateVolZmapByAddingSurfTm( int nVolZmapId, int nStmId) ;
|
||||
EXE_EXPORT bool ExeUniformVolZmap( int nVolZmapId, double dToler) ;
|
||||
|
||||
// GeomDB PartLayer
|
||||
EXE_EXPORT bool ExeIsPart( int nPartId) ;
|
||||
@@ -611,10 +607,6 @@ EXE_EXPORT bool ExeProjectCurveOnSurfTm( int nCurveId, int nSurfTmId, const Vect
|
||||
double dLinTol, double dMaxSegmLen, int nRefType) ;
|
||||
EXE_EXPORT bool ExeProjectCurveOnSurfTmExt( int nCurveId, int nSurfTmId, int nGuideId, int nDestGrpId,
|
||||
double dLinTol, double dMaxSegmLen, bool bDirFromGuide) ;
|
||||
EXE_EXPORT bool ExeProjectCurveOnSurfBz( int nCurveId, int nSurfBzId, const Vector3d& vtDir, int nDestGrpId,
|
||||
double dLinTol, double dMaxSegmLen, int nRefType) ;
|
||||
EXE_EXPORT bool ExeProjectCurveOnSurfBzExt( int nCurveId, int nSurfBzId, int nGuideId, int nDestGrpId,
|
||||
double dLinTol, double dMaxSegmLen, bool bDirFromGuide) ;
|
||||
EXE_EXPORT int ExeCurveGetVoronoi( int nId, int nDestGrpId, int nBound, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCurveGetMedialAxis( int nId, int nDestGrpId, int nSide, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCurveGetFatCurve( int nId, int nDestGrpId, double dRad, bool bSquareEnds, bool bSquareMids, int* pnCount) ;
|
||||
@@ -647,13 +639,9 @@ EXE_EXPORT bool ExeSurfTmCut( int nId, int nCutterId, bool bInVsOut, bool bSaveO
|
||||
EXE_EXPORT bool ExeSurfTmSubtractProjectedFacesOnFace( int nSurfId, int nFaceInd, int nDestGrpId,
|
||||
INTVECTOR vSurfsId, bool bOCFlag,
|
||||
bool& bExistProjection, int& nNewId, int& nNewFaceNbr) ;
|
||||
EXE_EXPORT bool ExeSurfTmSetFaceColor( int nId, int nFacet, int nColor) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetTriaColor( int nId, int nTria, int& nColor) ;
|
||||
EXE_EXPORT bool ExeSurfTmResetTwoColors( int nId) ;
|
||||
EXE_EXPORT bool ExeSurfTmSetShowEdges( int nId, bool bShow) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetShowEdges( int nId, bool& bShow) ;
|
||||
EXE_EXPORT bool ExeSurfBzTrim( int nId, int nCutterId) ;
|
||||
EXE_EXPORT bool ExeSurfTmSetSmoothAng( int nId, double dAngDeg) ;
|
||||
|
||||
// GeomDb Volume Modify
|
||||
EXE_EXPORT int ExeExplodeVolume( int nId, int* pnCount) ;
|
||||
@@ -721,7 +709,6 @@ EXE_EXPORT bool ExeCurveCompoCenter( int nId, int nSimpCrv, int nRefId, Point3d&
|
||||
EXE_EXPORT bool ExeCurveCompoRadius( int nId, int nSimpCrv, double& dRad) ;
|
||||
EXE_EXPORT bool ExeCurveCompoAngCenter( int nId, int nSimpCrv, double& dAngCen) ;
|
||||
EXE_EXPORT bool ExeCurveCompoNormVersor( int nId, int nSimpCrv, int nRefId, Vector3d& vtNorm) ;
|
||||
EXE_EXPORT bool ExeShowBezierCurveControlPoints( int nCrvId, int* pnCount) ;
|
||||
|
||||
// GeomDb Surf Get
|
||||
EXE_EXPORT bool ExeSurfArea( int nId, double& dArea) ;
|
||||
@@ -763,8 +750,6 @@ EXE_EXPORT bool ExeSurfTmGetAllVertInFacet( int nId, int nFacet, INTVECTOR& vVer
|
||||
EXE_EXPORT bool ExeSurfTmGetFacetBBox( int nId, int nFacet, int nFlag, BBox3d& b3Box) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetFacetBBoxGlob( int nId, int nFacet, int nFlag, BBox3d& b3Box) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetFacetBBoxRef( int nId, int nFacet, int nFlag, const Frame3d& frRef, BBox3d& b3Box) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetFacetOutlineInfo( int nId, int nFacet, int nRefId,
|
||||
int& nStatus, BOOLVECTOR& vbOpen, INTVECTOR& vnAdj, DBLVECTOR& vdLen, VCT3DVECTOR& vvtNorm, DBLVECTOR& vdElev) ;
|
||||
EXE_EXPORT int ExeSurfTmGetEdges( int nId, int nDestGrpId, bool bSmoothAng, int* pnCount) ;
|
||||
EXE_EXPORT bool ExeSurfBezierGetPoint( int nSurfId, double dU, double dV, int nRefId, Point3d& ptP) ;
|
||||
EXE_EXPORT bool ExeSurfBezierGetPointD1( int nSurfId, double dU, double dV, int nUsd, int nVsd, int nRefId,
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
const int KEY_BASELIB_PROD = 207 ;
|
||||
const int KEY_BASELIB_VER = 2605 ;
|
||||
const int KEY_BASELIB_VER = 2604 ;
|
||||
const int KEY_BASELIB_LEV = 1 ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user