libigl v2.5.0
Loading...
Searching...
No Matches
igl::copyleft::cgal::CSGTree Class Reference

Class for defining and computing a constructive solid geometry result out of a tree of boolean operations on "solid" triangle meshes. More...

#include <CSGTree.h>

Public Types

typedef CGAL::Epeck::FT ExactScalar
typedef Eigen::MatrixXi POBF
typedef Eigen::Matrix< ExactScalar, Eigen::Dynamic, 3 > MatrixX3E
typedef Eigen::VectorXi VectorJ

Public Member Functions

 CSGTree ()
 CSGTree (const CSGTree &other)
CSGTreeoperator= (CSGTree other)
 CSGTree (CSGTree &&other)
 CSGTree (const CSGTree &A, const CSGTree &B, const MeshBooleanType &type)
 Construct and compute a boolean operation on existing CSGTree nodes.
 CSGTree (const CSGTree &A, const CSGTree &B, const std::string &s)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename DerivedV>
 CSGTree (const Eigen::MatrixBase< DerivedV > &V, const POBF &F)
 "Leaf" node with identity operation on assumed "solid" mesh (V,F)
const MatrixX3EV () const
template<typename DerivedV>
DerivedV cast_V () const
const POBFF () const
const VectorJJ () const
const size_t & number_of_birth_faces () const

Friends

void swap (CSGTree &first, CSGTree &second)

Detailed Description

Class for defining and computing a constructive solid geometry result out of a tree of boolean operations on "solid" triangle meshes.

Member Typedef Documentation

◆ ExactScalar

◆ POBF

typedef Eigen::MatrixXi igl::copyleft::cgal::CSGTree::POBF

◆ MatrixX3E

typedef Eigen::Matrix<ExactScalar,Eigen::Dynamic,3> igl::copyleft::cgal::CSGTree::MatrixX3E

◆ VectorJ

typedef Eigen::VectorXi igl::copyleft::cgal::CSGTree::VectorJ

Constructor & Destructor Documentation

◆ CSGTree() [1/6]

igl::copyleft::cgal::CSGTree::CSGTree ( )
inline

◆ CSGTree() [2/6]

igl::copyleft::cgal::CSGTree::CSGTree ( const CSGTree & other)
inline

◆ CSGTree() [3/6]

igl::copyleft::cgal::CSGTree::CSGTree ( CSGTree && other)
inline

◆ CSGTree() [4/6]

igl::copyleft::cgal::CSGTree::CSGTree ( const CSGTree & A,
const CSGTree & B,
const MeshBooleanType & type )
inline

Construct and compute a boolean operation on existing CSGTree nodes.

Parameters
[in]ASolid result of previous CSG operation (or identity, see below)
[in]BSolid result of previous CSG operation (or identity, see below)
[in]typetype of mesh boolean to compute

◆ CSGTree() [5/6]

igl::copyleft::cgal::CSGTree::CSGTree ( const CSGTree & A,
const CSGTree & B,
const std::string & s )
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ CSGTree() [6/6]

template<typename DerivedV>
igl::copyleft::cgal::CSGTree::CSGTree ( const Eigen::MatrixBase< DerivedV > & V,
const POBF & F )
inline

"Leaf" node with identity operation on assumed "solid" mesh (V,F)

Parameters
[in]VV by 3 list of mesh vertices (in any precision, will be converted to exact)
[in]FF by 3 list of mesh face indices into V

Member Function Documentation

◆ operator=()

CSGTree & igl::copyleft::cgal::CSGTree::operator= ( CSGTree other)
inline

◆ V()

const MatrixX3E & igl::copyleft::cgal::CSGTree::V ( ) const
inline

◆ cast_V()

template<typename DerivedV>
DerivedV igl::copyleft::cgal::CSGTree::cast_V ( ) const
inline

◆ F()

const POBF & igl::copyleft::cgal::CSGTree::F ( ) const
inline

◆ J()

const VectorJ & igl::copyleft::cgal::CSGTree::J ( ) const
inline

◆ number_of_birth_faces()

const size_t & igl::copyleft::cgal::CSGTree::number_of_birth_faces ( ) const
inline

◆ swap

void swap ( CSGTree & first,
CSGTree & second )
friend

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