43 lines
890 B
C++
43 lines
890 B
C++
#pragma once
|
|
#include <map>
|
|
#include <vector>
|
|
#include <sstream>
|
|
#include <fstream>
|
|
#include <algorithm>
|
|
|
|
#ifdef EARTHWORM_EXPORT
|
|
#define DLLIMPEXP __declspec(dllexport)
|
|
#else
|
|
#define DLLIMPEXP __declspec(dllimport)
|
|
#endif
|
|
|
|
|
|
class DLLIMPEXP SubDMesh
|
|
{
|
|
public:
|
|
struct Pnt { double x, y, z; };
|
|
|
|
static void fillPnt(const AcGePoint3d &pt, Pnt &pnt);
|
|
|
|
static void fillPt(const Pnt &pnt, AcGePoint3d &pt);
|
|
|
|
static bool subDMesh2Buffer(const AcArray<Adesk::Int32> &faces
|
|
, const AcGePoint3dArray &pts
|
|
, const AcGePoint3dArray &pts2d
|
|
, void *&pOutBuffer
|
|
, Adesk::UInt32 &nOutLen);
|
|
|
|
static bool Buffer2SubDMesh(void *pBuffer
|
|
, const int &len
|
|
, AcArray<Adesk::Int32> &faces
|
|
, AcGePoint3dArray &pts
|
|
, AcGePoint3dArray &pts2d);
|
|
|
|
static bool subDMesh2Buffer( const AcDbSubDMesh &mesh
|
|
, const AcGePoint3dArray &pts2d
|
|
, void *&pOutBuffer
|
|
, Adesk::UInt32 &nOutLen);
|
|
};
|
|
|
|
|