Include :
- aggiunta funzione per il calcolo della curvatura in un vertice per una superficie TriMesh.
This commit is contained in:
@@ -113,6 +113,10 @@ class __declspec( novtable) ISurfTriMesh : public ISurf
|
||||
virtual bool GetEdge( int nInd, int& nV1, int& nV2, int& nFl, int& nFr, double& dAng) const = 0 ;
|
||||
virtual bool GetEdge( int nInd, Point3d& ptP1, Point3d& ptP2, double& dAng) const = 0 ;
|
||||
virtual bool GetEdges( ICURVEPOVECTOR& vpCurve) const = 0 ;
|
||||
virtual bool GetCurvature( int nV,
|
||||
double& dMinK, Vector3d& vtMinK, double& dMaxK, Vector3d& vtMaxK, bool& bPlanar, Vector3d& vtNorm,
|
||||
double* dGaussK = nullptr, double* dMeanK = nullptr,
|
||||
double* dMaxNormK = nullptr, double* dMinNormK = nullptr) const = 0 ;
|
||||
virtual bool Cut( const Plane3d& plPlane, bool bSaveOnEq) = 0 ;
|
||||
virtual bool GeneralizedCut( const ICurve& cvCurve, bool bSaveOnEq) = 0 ;
|
||||
virtual bool Add( const ISurfTriMesh& Other) = 0 ;
|
||||
|
||||
@@ -154,6 +154,12 @@ enum VolZmapOffset { FILLET = 0 , // come in VolZmap
|
||||
CHAMFER = 1, // come in VolZmap
|
||||
EXTEND = 2 } ; // come in VolZmap
|
||||
|
||||
//----------------- Costanti Curvature per SurfTm ------------------------------
|
||||
enum StmCurvature { STM_CURVATURE_STD = 0, // Curvatura minima e massima
|
||||
STM_CURVATURE_GAUSS = 1, // Curvature Gaussiana
|
||||
STM_CURVATURE_MEAN = 2, // Curvature Media
|
||||
STM_CURVATURE_NORM = 3 } ; // Curvature Normale
|
||||
|
||||
//----------------- Costanti per sostituzione direttorio e nome progetto --------------------
|
||||
const std::string SUB_PROJECT_DIR = "%PRJDIR%" ;
|
||||
const std::string SUB_PROJECT_TITLE = "%PRJTITLE%" ;
|
||||
|
||||
@@ -838,6 +838,7 @@ EXE_EXPORT bool ExeSurfTmGetFacetOutlineInfo( int nId, int nFacet, int nRefId,
|
||||
int& nStatus, BOOLVECTOR& vbOpen, INTVECTOR& vnAdj, DBLVECTOR& vdLen,
|
||||
PNTVECTOR& vptStart, VCT3DVECTOR& vvtNorm, DBLVECTOR& vdElev) ;
|
||||
EXE_EXPORT int ExeSurfTmGetEdges( int nId, int nDestGrpId, bool bSmoothAng, int* pnCount) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetCurvatures( int nId, int nV, int nType, double& dK1, Vector3d& vtK1, double& dK2, Vector3d& vtK2) ;
|
||||
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,
|
||||
Point3d& ptP, Vector3d& vtDerU, Vector3d& vtDerV) ;
|
||||
|
||||
+3
-1
@@ -16,6 +16,7 @@
|
||||
#include <vector>
|
||||
#include <list>
|
||||
#include <utility>
|
||||
#include <set>
|
||||
#include <unordered_set>
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
@@ -28,7 +29,8 @@ typedef std::list<bool> BOOLLIST ; // lista di bool
|
||||
typedef std::vector<int> INTVECTOR ; // vettore di interi
|
||||
typedef std::list<int> INT_LIST ; // lista di interi (con _ per non collidere con Win)
|
||||
typedef std::vector<std::vector<int>> INTMATRIX ; // matrice di interi
|
||||
typedef std::unordered_set<int> INTUNORDSET ; // unordered set di interi
|
||||
typedef std::set<int> INTSET ; // set di interi
|
||||
typedef std::unordered_set<int> INTUNORDSET ; // unordered set di interi
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Raccolte di interi senza segno
|
||||
|
||||
Reference in New Issue
Block a user