3bcc803f47
- aggiunto parametro in CalcPocketing - Aggiunte definizioni in GeoCollection - Aggiunta funzione per ottenere i Loop dalle Part per le TriMesh - Aggiunta funzione di Test avanzata per le collisioni in CAvToolSurfTm.
85 lines
4.6 KiB
C++
85 lines
4.6 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2014-2019
|
|
//----------------------------------------------------------------------------
|
|
// File : EGkGeoCollection.h Data : 05.11.19 Versione : 2.1k1
|
|
// Contenuto : Raccolte di oggetti geometrici.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 17.12.13 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include "/EgtDev/Include/EGkPoint3d.h"
|
|
#include "/EgtDev/Include/EGkBBox3d.h"
|
|
#include "/EgtDev/Include/EGkFrame3d.h"
|
|
#include "/EgtDev/Include/EGkCurvePointDiffGeom.h"
|
|
#include "/EgtDev/Include/EgtNumCollection.h"
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di Point3d
|
|
typedef std::vector<Point3d> PNTVECTOR ; // vettore di punti
|
|
typedef std::list<Point3d> PNTLIST ; // lista di punti
|
|
typedef std::vector<PNTVECTOR> PNTMATRIX ; // matrice di punti
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di coppie Point3d,int
|
|
typedef std::pair<Point3d,int> POINTI ; // coppia punto, intero
|
|
typedef std::vector<POINTI> PNTIVECTOR ; // vettore di coppie punto, intero
|
|
typedef std::list<POINTI> PNTILIST ; // lista di coppie punto, intero
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di coppie Point3d,dU
|
|
typedef std::pair<Point3d,double> POINTU ; // coppia punto, parametro (o altro)
|
|
typedef std::vector<POINTU> PNTUVECTOR ; // vettore di coppie punto, parametro
|
|
typedef std::list<POINTU> PNTULIST ; // lista di coppie punto, parametro
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di coppie Point3d,Point3d
|
|
typedef std::pair<Point3d,Point3d> BIPOINT ; // coppia punto1, punto2
|
|
typedef std::vector<BIPOINT> BIPNTVECTOR ; // vettore di coppie punto1, punto2
|
|
typedef std::list<BIPOINT> BIPNTLIST ; // lista di coppie punto1, punto2
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di Punti di curva con loro geometria differenziale
|
|
typedef std::vector<CrvPointDiffGeom> CPDGVECTOR ; // vettore di CrvPointDiffGeom
|
|
typedef std::list<CrvPointDiffGeom> CPDGLIST ; // lista di CrvPointDiffGeom
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di Vector3d
|
|
typedef std::vector<Vector3d> VCT3DVECTOR ; // vettore di vettori 3d
|
|
typedef std::list<Vector3d> VCT3DLIST ; // lista di vettori 3d
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di Frame3d
|
|
typedef std::vector<Frame3d> FRAME3DVECTOR ; // vettore di riferimenti 3d
|
|
typedef std::list<Frame3d> FRAME3DLIST ; // lista di riferimenti 3d
|
|
typedef std::vector<std::pair<Frame3d,int>> FRAME3DIVECTOR ; // vettore di riferimenti 3d e Id
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di BBox3d
|
|
typedef std::vector<BBox3d> BOXVECTOR ; // vettore di bounding box 3d
|
|
typedef std::list<BBox3d> BOXLIST ; // lista di bounding box 3d
|
|
typedef std::vector<std::pair<BBox3d,int>> BOXIVECTOR ; // vettore di bounding box 3d e Id
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di coppie Point3d,Vector3d
|
|
typedef std::pair<Point3d,Vector3d> PNTVECT ; // coppia punto, vettore
|
|
typedef std::vector<PNTVECT> PNTVECTVECTOR ; // vettore di coppie punto, vettore
|
|
typedef std::list<PNTVECT> PNTVECTLIST ; // lista di coppie punto, vettore
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di coppie Point3d,Bool
|
|
typedef std::pair<Point3d, bool> PNTBOOL ; // coppia punto, bool
|
|
typedef std::vector<PNTBOOL> PNTBOOLVECTOR ; // vettore di coppie punto, bool
|
|
typedef std::list<PNTBOOL> PNTBOOLLIST ; // lista di coppie punto, bool
|
|
|
|
//----------------------------------------------------------------------------
|
|
// Raccolte di triplette Point3d,dU,vector<Vector3d>
|
|
typedef std::tuple<Point3d, double, VCT3DVECTOR> PNTUVVECT ; // tripletta punto, parametro, vettore di Vector3d
|
|
typedef std::vector<PNTUVVECT> PNTUVVECTVECTOR ; // vettore di triplette punto, parametro, vettore di Vector3d
|
|
typedef std::list<PNTUVVECT> PNTUVVECTLIST ; // lista di triplette punto, parametro, vettore di Vector3d
|