gdcmMeshPrimitive.h
Go to the documentation of this file.
/*=========================================================================
Program: GDCM (Grassroots DICOM). A DICOM library
Copyright (c) 2006-2011 Mathieu Malaterre
All rights reserved.
See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
#ifndef GDCMMESHPRIMITIVE_H
#define GDCMMESHPRIMITIVE_H
#include <gdcmObject.h>
#include <gdcmDataElement.h>
namespace gdcm
{
class GDCM_EXPORT MeshPrimitive : public Object
{
public:
typedef std::vector< DataElement > PrimitivesData;
typedef enum {
VERTEX = 0,
EDGE,
TRIANGLE,
TRIANGLE_STRIP,
TRIANGLE_FAN,
LINE,
FACET,
MPType_END
} MPType;
static const char * GetMPTypeString(const MPType type);
static MPType GetMPType(const char * type);
MeshPrimitive();
~MeshPrimitive() override;
MPType GetPrimitiveType() const;
void SetPrimitiveType(const MPType type);
const DataElement & GetPrimitiveData() const;
DataElement & GetPrimitiveData();
void SetPrimitiveData(DataElement const & de);
const PrimitivesData & GetPrimitivesData() const;
PrimitivesData & GetPrimitivesData();
void SetPrimitivesData(PrimitivesData const & DEs);
const DataElement & GetPrimitiveData(const unsigned int idx) const;
DataElement & GetPrimitiveData(const unsigned int idx);
void SetPrimitiveData(const unsigned int idx, DataElement const & de);
void AddPrimitiveData(DataElement const & de);
unsigned int GetNumberOfPrimitivesData() const;
protected:
// Use to define tag where PrimitiveData will be put.
MPType PrimitiveType;
// PrimitiveData contains point index list.
// It shall have 1 or 1-n DataElement following PrimitiveType.
PrimitivesData PrimitiveData;
};
}
#endif // GDCMMESHPRIMITIVE_H
gdcm::DataElement
Class to represent a Data Element either Implicit or Explicit.
Definition gdcmDataElement.h:59
gdcm::MeshPrimitive::GetPrimitiveType
MPType GetPrimitiveType() const
gdcm::MeshPrimitive::AddPrimitiveData
void AddPrimitiveData(DataElement const &de)
gdcm::MeshPrimitive::~MeshPrimitive
~MeshPrimitive() override
gdcm::MeshPrimitive::GetPrimitiveData
const DataElement & GetPrimitiveData() const
gdcm::MeshPrimitive::PrimitivesData
std::vector< DataElement > PrimitivesData
Definition gdcmMeshPrimitive.h:34
gdcm::MeshPrimitive::PrimitiveType
MPType PrimitiveType
Definition gdcmMeshPrimitive.h:81
gdcm::MeshPrimitive::GetPrimitiveData
const DataElement & GetPrimitiveData(const unsigned int idx) const
gdcm::MeshPrimitive::MeshPrimitive
MeshPrimitive()
gdcm::MeshPrimitive::GetPrimitivesData
const PrimitivesData & GetPrimitivesData() const
gdcm::MeshPrimitive::PrimitiveData
PrimitivesData PrimitiveData
Definition gdcmMeshPrimitive.h:85
gdcm::MeshPrimitive::GetPrimitivesData
PrimitivesData & GetPrimitivesData()
gdcm::MeshPrimitive::SetPrimitiveType
void SetPrimitiveType(const MPType type)
gdcm::MeshPrimitive::GetPrimitiveData
DataElement & GetPrimitiveData(const unsigned int idx)
gdcm::MeshPrimitive::GetNumberOfPrimitivesData
unsigned int GetNumberOfPrimitivesData() const
gdcm::MeshPrimitive::MPType
MPType
This enumeration defines primitive types.
Definition gdcmMeshPrimitive.h:41
gdcm::MeshPrimitive::FACET
@ FACET
Definition gdcmMeshPrimitive.h:48
gdcm::MeshPrimitive::VERTEX
@ VERTEX
Definition gdcmMeshPrimitive.h:42
gdcm::MeshPrimitive::MPType_END
@ MPType_END
Definition gdcmMeshPrimitive.h:49
gdcm::MeshPrimitive::EDGE
@ EDGE
Definition gdcmMeshPrimitive.h:43
gdcm::MeshPrimitive::LINE
@ LINE
Definition gdcmMeshPrimitive.h:47
gdcm::MeshPrimitive::TRIANGLE_STRIP
@ TRIANGLE_STRIP
Definition gdcmMeshPrimitive.h:45
gdcm::MeshPrimitive::TRIANGLE
@ TRIANGLE
Definition gdcmMeshPrimitive.h:44
gdcm::MeshPrimitive::TRIANGLE_FAN
@ TRIANGLE_FAN
Definition gdcmMeshPrimitive.h:46
gdcm::MeshPrimitive::GetPrimitiveData
DataElement & GetPrimitiveData()
gdcm::MeshPrimitive::SetPrimitiveData
void SetPrimitiveData(DataElement const &de)
gdcm::MeshPrimitive::SetPrimitiveData
void SetPrimitiveData(const unsigned int idx, DataElement const &de)
gdcm::MeshPrimitive::GetMPType
static MPType GetMPType(const char *type)
gdcm::MeshPrimitive::GetMPTypeString
static const char * GetMPTypeString(const MPType type)
gdcm::MeshPrimitive::SetPrimitivesData
void SetPrimitivesData(PrimitivesData const &DEs)
gdcm::Object::Object
Object()
Definition gdcmObject.h:42
gdcmDataElement.h
gdcmObject.h
GDCM_EXPORT
#define GDCM_EXPORT
Definition gdcmWin32.h:34
gdcm
Definition gdcmASN1.h:21