3ds Max USD API Reference
Loading...
Searching...
No Matches
MAXUSD_NS_DEF::MeshFacade Class Reference

A facade to work with the 3dsMax Mesh and MNMesh classes transparently. Does some caching internally to avoid recomputing the same things. These assume that the mesh will not change from the moment it is passed to the facade. More...

#include <MeshFacade.h>

Public Member Functions

MaxUSDAPI MeshFacade (MNMesh *, bool ownMesh=false)
 
MaxUSDAPI MeshFacade (Mesh *, bool ownMesh=false)
 
MaxUSDAPI int VertexCount () const
 
MaxUSDAPI const Point3 & Vertex (int i) const
 
MaxUSDAPI int FaceCount () const
 
MaxUSDAPI int FaceDegree (int faceIdx) const
 
MaxUSDAPI int FaceVertex (int faceIdx, int cornerIdx) const
 
MaxUSDAPI bool FaceIsDead (int faceIdx) const
 
MaxUSDAPI std::shared_ptr< std::vector< int > > FaceIndices ()
 
MaxUSDAPI int FaceVertexIndicesCount ()
 
MaxUSDAPI DWORD GetAllSmGroups () const
 
MaxUSDAPI void LoadNormals ()
 
MaxUSDAPI int NormalCount () const
 
MaxUSDAPI const Point3 * NormalData () const
 
MaxUSDAPI const std::shared_ptr< std::vector< int > > NormalIndices () const
 
MaxUSDAPI int MapCount () const
 
MaxUSDAPI int MapFaceCount (int channel) const
 
MaxUSDAPI int MapFaceDegree (int channel, int faceIdx) const
 
MaxUSDAPI int MapFaceVertex (int channel, int faceIdx, int cornerIdx) const
 
MaxUSDAPI const Point3 * MapData (int channel) const
 
MaxUSDAPI int MapDataCount (int channel) const
 
MaxUSDAPI MtlID FaceMaterial (int faceIdx) const
 
MaxUSDAPI bool HasCreaseSupport () const
 
MaxUSDAPI int EdgeCount () const
 
MaxUSDAPI int EdgeVertex (int edgeIdx, bool start) const
 
MaxUSDAPI const float * VertexCreaseData () const
 
MaxUSDAPI const float * EdgeCreaseData () const
 
MaxUSDAPI void Transform (Matrix3 &transform) const
 
MaxUSDAPI void MakePlanar (float planarTresh) const
 
MaxUSDAPI void MakeConvex () const
 
MaxUSDAPI void Cleanup () const
 
MaxUSDAPI Box3 BoundingBox () const
 
MaxUSDAPI void Triangulate () const
 

Protected Attributes

MNMesh * polyMesh = nullptr
 
Mesh * triMesh = nullptr
 
bool ownMesh = false
 
std::shared_ptr< std::vector< int > > faceIndices
 
std::shared_ptr< std::vector< int > > normalsIndices
 
int faceVertexIndicesCountCache = -1
 

Detailed Description

A facade to work with the 3dsMax Mesh and MNMesh classes transparently. Does some caching internally to avoid recomputing the same things. These assume that the mesh will not change from the moment it is passed to the facade.


The documentation for this class was generated from the following file: