#include <sdf_mesh.h>
Public Types | |
using | ConstPtr = std::shared_ptr< const SDFMesh > |
using | Ptr = std::shared_ptr< SDFMesh > |
![]() | |
using | ConstPtr = std::shared_ptr< const PolygonMesh > |
using | Ptr = std::shared_ptr< PolygonMesh > |
![]() | |
using | ConstPtr = std::shared_ptr< const Geometry > |
using | Ptr = std::shared_ptr< Geometry > |
Public Member Functions | |
Geometry::Ptr | clone () const override final |
Create a copy of this shape. More... | |
bool | operator!= (const SDFMesh &rhs) const |
bool | operator== (const SDFMesh &rhs) const |
SDFMesh ()=default | |
SDFMesh (std::shared_ptr< const tesseract_common::VectorVector3d > vertices, std::shared_ptr< const Eigen::VectorXi > triangles, int triangle_count, std::shared_ptr< const tesseract_common::Resource > resource=nullptr, const Eigen::Vector3d &scale=Eigen::Vector3d(1, 1, 1), std::shared_ptr< const tesseract_common::VectorVector3d > normals=nullptr, std::shared_ptr< const tesseract_common::VectorVector4d > vertex_colors=nullptr, std::shared_ptr< MeshMaterial > mesh_material=nullptr, std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture >>> mesh_textures=nullptr) | |
SDF Mesh geometry. More... | |
SDFMesh (std::shared_ptr< const tesseract_common::VectorVector3d > vertices, std::shared_ptr< const Eigen::VectorXi > triangles, std::shared_ptr< const tesseract_common::Resource > resource=nullptr, const Eigen::Vector3d &scale=Eigen::Vector3d(1, 1, 1), std::shared_ptr< const tesseract_common::VectorVector3d > normals=nullptr, std::shared_ptr< const tesseract_common::VectorVector4d > vertex_colors=nullptr, std::shared_ptr< MeshMaterial > mesh_material=nullptr, std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture >>> mesh_textures=nullptr) | |
SDF Mesh geometry. More... | |
~SDFMesh () override=default | |
![]() | |
int | getFaceCount () const |
Get face count. More... | |
const std::shared_ptr< const Eigen::VectorXi > & | getFaces () const |
Get Polygon mesh faces. More... | |
std::shared_ptr< const MeshMaterial > | getMaterial () const |
Get material data extracted from the mesh file. More... | |
const std::shared_ptr< const tesseract_common::VectorVector3d > & | getNormals () const |
Get the vertex normal vectors. More... | |
std::shared_ptr< const tesseract_common::Resource > | getResource () const |
Get the path to file used to generate the mesh. More... | |
const Eigen::Vector3d & | getScale () const |
Get the scale applied to file used to generate the mesh. More... | |
const std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture > > > & | getTextures () const |
Get textures extracted from the mesh file. More... | |
const std::shared_ptr< const tesseract_common::VectorVector4d > & | getVertexColors () const |
Get the vertex colors. More... | |
int | getVertexCount () const |
Get vertex count. More... | |
const std::shared_ptr< const tesseract_common::VectorVector3d > & | getVertices () const |
Get Polygon mesh vertices. More... | |
bool | operator!= (const PolygonMesh &rhs) const |
bool | operator== (const PolygonMesh &rhs) const |
PolygonMesh ()=default | |
PolygonMesh (std::shared_ptr< const tesseract_common::VectorVector3d > vertices, std::shared_ptr< const Eigen::VectorXi > faces, int face_count, std::shared_ptr< const tesseract_common::Resource > resource=nullptr, const Eigen::Vector3d &scale=Eigen::Vector3d(1, 1, 1), std::shared_ptr< const tesseract_common::VectorVector3d > normals=nullptr, std::shared_ptr< const tesseract_common::VectorVector4d > vertex_colors=nullptr, std::shared_ptr< MeshMaterial > mesh_material=nullptr, std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture >>> mesh_textures=nullptr, GeometryType type=GeometryType::POLYGON_MESH) | |
Polygon Mesh geometry. More... | |
PolygonMesh (std::shared_ptr< const tesseract_common::VectorVector3d > vertices, std::shared_ptr< const Eigen::VectorXi > faces, std::shared_ptr< const tesseract_common::Resource > resource=nullptr, const Eigen::Vector3d &scale=Eigen::Vector3d(1, 1, 1), std::shared_ptr< const tesseract_common::VectorVector3d > normals=nullptr, std::shared_ptr< const tesseract_common::VectorVector4d > vertex_colors=nullptr, std::shared_ptr< MeshMaterial > mesh_material=nullptr, std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture >>> mesh_textures=nullptr, GeometryType type=GeometryType::POLYGON_MESH) | |
Polygon Mesh geometry. More... | |
~PolygonMesh () override=default | |
![]() | |
Geometry (const Geometry &)=default | |
Geometry (Geometry &&)=default | |
Geometry (GeometryType type=GeometryType::UNINITIALIZED) | |
GeometryType | getType () const |
Get the geometry type. More... | |
const boost::uuids::uuid & | getUUID () const |
Get the geometry UUID. More... | |
bool | operator!= (const Geometry &rhs) const |
Geometry & | operator= (const Geometry &)=default |
Geometry & | operator= (Geometry &&)=default |
bool | operator== (const Geometry &rhs) const |
void | setUUID (const boost::uuids::uuid &uuid) |
Set the geometry UUID. More... | |
virtual | ~Geometry ()=default |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Friends | |
class | boost::serialization::access |
struct | tesseract_common::Serialization |
Definition at line 45 of file sdf_mesh.h.
using tesseract_geometry::SDFMesh::ConstPtr = std::shared_ptr<const SDFMesh> |
Definition at line 53 of file sdf_mesh.h.
using tesseract_geometry::SDFMesh::Ptr = std::shared_ptr<SDFMesh> |
Definition at line 52 of file sdf_mesh.h.
tesseract_geometry::SDFMesh::SDFMesh | ( | std::shared_ptr< const tesseract_common::VectorVector3d > | vertices, |
std::shared_ptr< const Eigen::VectorXi > | triangles, | ||
std::shared_ptr< const tesseract_common::Resource > | resource = nullptr , |
||
const Eigen::Vector3d & | scale = Eigen::Vector3d(1, 1, 1) , |
||
std::shared_ptr< const tesseract_common::VectorVector3d > | normals = nullptr , |
||
std::shared_ptr< const tesseract_common::VectorVector4d > | vertex_colors = nullptr , |
||
std::shared_ptr< MeshMaterial > | mesh_material = nullptr , |
||
std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture >>> | mesh_textures = nullptr |
||
) |
SDF Mesh geometry.
vertices | A vector of vertices associated with the mesh |
triangles | A vector of face indices where the first index indicates the number of vertices associated with the face followed by the vertices index in parameter vertices. For example a triangle has three vertices so there should be four inputs where the first should be 3 indicating there are three vertices that define this face followed by three indices. |
resource | A resource locator for locating resource |
scale | Scale the mesh |
normals | A vector of normals for the vertices (optional) |
vertex_colors | A vector of colors (RGBA) for the vertices (optional) |
mesh_material | A MeshMaterial describing the color and material properties of the mesh (optional) |
mesh_textures | A vector of MeshTexture to apply to the mesh (optional) |
Definition at line 38 of file sdf_mesh.cpp.
tesseract_geometry::SDFMesh::SDFMesh | ( | std::shared_ptr< const tesseract_common::VectorVector3d > | vertices, |
std::shared_ptr< const Eigen::VectorXi > | triangles, | ||
int | triangle_count, | ||
std::shared_ptr< const tesseract_common::Resource > | resource = nullptr , |
||
const Eigen::Vector3d & | scale = Eigen::Vector3d(1, 1, 1) , |
||
std::shared_ptr< const tesseract_common::VectorVector3d > | normals = nullptr , |
||
std::shared_ptr< const tesseract_common::VectorVector4d > | vertex_colors = nullptr , |
||
std::shared_ptr< MeshMaterial > | mesh_material = nullptr , |
||
std::shared_ptr< const std::vector< std::shared_ptr< MeshTexture >>> | mesh_textures = nullptr |
||
) |
SDF Mesh geometry.
vertices | A vector of vertices associated with the mesh |
triangles | A vector of face indices where the first index indicates the number of vertices associated with the face followed by the vertices index in parameter vertices. For example a triangle has three vertices so there should be four inputs where the first should be 3 indicating there are three vertices that define this face followed by three indices. |
triangle_count | Provide the number of faces. This is faster because it does not need to loop over triangles. |
resource | A resource locator for locating resource |
scale | Scale the mesh |
normals | A vector of normals for the vertices (optional) |
vertex_colors | A vector of colors (RGBA) for the vertices (optional) |
mesh_material | A MeshMaterial describing the color and material properties of the mesh (optional) |
mesh_textures | A vector of MeshTexture to apply to the mesh (optional) |
Definition at line 60 of file sdf_mesh.cpp.
|
default |
|
overridedefault |
|
finaloverridevirtual |
Create a copy of this shape.
Reimplemented from tesseract_geometry::PolygonMesh.
Definition at line 84 of file sdf_mesh.cpp.
bool tesseract_geometry::SDFMesh::operator!= | ( | const SDFMesh & | rhs | ) | const |
Definition at line 95 of file sdf_mesh.cpp.
bool tesseract_geometry::SDFMesh::operator== | ( | const SDFMesh & | rhs | ) | const |
Definition at line 89 of file sdf_mesh.cpp.
|
private |
Definition at line 98 of file sdf_mesh.cpp.
|
friend |
Definition at line 112 of file sdf_mesh.h.
|
friend |
Definition at line 113 of file sdf_mesh.h.