|
| | Board3D () |
| |
| | Board3D (const KSpace &KSEmb) |
| |
| | ~Board3D () |
| |
| std::string | className () const |
| |
| void | saveOBJ (const std::string &filename, const bool isNormalized=false) |
| |
| Board3D & | operator<< (const DGtal::Color &aColor) |
| |
| template<typename TDrawableWithDisplay3D > |
| Board3D & | operator<< (const TDrawableWithDisplay3D &object) |
| |
| void | selfDisplay (std::ostream &out) const |
| |
| bool | isValid () const |
| |
| unsigned int | getMaterialIndex (const DGtal::Color &aColor) |
| |
| | BOOST_CONCEPT_ASSERT ((concepts::CSpace< Space >)) |
| |
| virtual | ~Display3D () |
| |
| | Display3D (const KSpace &KSEmb) |
| |
| | Display3D () |
| |
| | Display3D (const Display3D &)=delete |
| | Copy constructor. Deleted.
|
| |
| | Display3D (Display3D &&)=delete |
| | Move constructor. Deleted.
|
| |
| Display3D & | operator= (const Display3D &)=delete |
| | Assignment operator. Deleted.
|
| |
| Display3D & | operator= (Display3D &&)=delete |
| | Move operator. Deleted.
|
| |
| const Embedder & | embedder () const |
| |
| const CellEmbedder & | cellEmbedder () const |
| |
| const SCellEmbedder & | sCellEmbedder () const |
| |
| const KSpace & | space () const |
| |
| virtual void | setFillColor (DGtal::Color aColor) |
| |
| virtual void | setFillTransparency (unsigned char alpha) |
| |
| virtual void | setLineColor (DGtal::Color aColor) |
| |
| virtual DGtal::Color | getFillColor () |
| |
| virtual DGtal::Color | getLineColor () |
| |
| virtual void | setKSpace (const KSpace &aKSpace) |
| |
| void | setName3d (DGtal::int32_t name=-1) |
| |
| DGtal::int32_t | name3d () const |
| |
| void | setSelectCallback3D (SelectCallbackFct fct, void *data, DGtal::int32_t min_name, DGtal::int32_t max_name) |
| |
| SelectCallbackFct | getSelectCallback3D (DGtal::int32_t aName, void *&data) const |
| |
| void | addClippingPlane (double a, double b, double c, double d, bool drawPlane) |
| |
| std::string | getMode (const std::string &objectName) const |
| |
| void | createNewLineList (std::string s="") |
| |
| void | createNewBallList (std::string s="") |
| |
| DGtal::int32_t | createNewCubeList () |
| |
| bool | deleteCubeList (const DGtal::int32_t name) |
| |
| DGtal::int32_t | createNewQuadList () |
| |
| bool | deleteQuadList (const DGtal::int32_t name) |
| |
| void | createNewTriangleList (std::string s="") |
| |
| void | createNewPolygonList (std::string s="") |
| |
| void | addQuad (const RealPoint &p1, const RealPoint &p2, const RealPoint &p3, const RealPoint &p4) |
| |
| void | addQuadWithNormal (const RealPoint &p1, const RealPoint &p2, const RealPoint &p3, const RealPoint &p4, const RealPoint &n, const bool enableReorientation, const bool enableDoubleFace=false) |
| |
| void | addQuadFromSurfelCenter (const RealPoint &baseQuadCenter, bool xSurfel, bool ySurfel, bool zSurfel) |
| |
| void | addQuadFromSurfelCenterWithNormal (const RealPoint &baseQuadCenter, bool xSurfel, bool ySurfel, bool zSurfel, const RealVector &aNormal, const bool enableReorientation, const bool sign, const bool enableDoubleFace=false) |
| |
| void | addTriangle (const RealPoint &p1, const RealPoint &p2, const RealPoint &p3) |
| |
| void | addPolygon (const std::vector< RealPoint > &vertices) |
| |
| void | addLine (const RealPoint &p1, const RealPoint &p2, const double width=0.03) |
| |
| void | addCube (const RealPoint ¢er, double width=1.0) |
| |
| void | addBall (const RealPoint ¢er, const double radius=0.5, const unsigned int resolution=30) |
| |
| void | addPrism (const RealPoint &baseQuadCenter, bool xSurfel, bool ySurfel, bool zSurfel, double sizeShiftFactor, double sizeFactor=1.0, bool isSigned=false, bool aSign=true) |
| |
| void | addBasicSurfel (const RealPoint &baseQuadCenter, bool xSurfel, bool ySurfel, bool zSurfel) |
| |
| void | addCone (const RealPoint &p1, const RealPoint &p2, double width=0.08) |
| |
| void | addCylinder (const RealPoint &p1, const RealPoint &p2, const double width=0.02) |
| |
| void | updateBoundingBox (const RealPoint &point) |
| |
| void | exportToMesh (Mesh< RealPoint > &aMesh) const |
| |
| Display3D & | operator<< (const TDrawableWithDisplay3D &object) |
| |
| void | selfDisplay (std::ostream &out) const |
| |
| bool | isValid () const |
| |
| void | clear () |
| |
| RealPoint | embed (const typename Space::Point &dp) const |
| |
| RealPoint | embedKS (const typename KSpace::SCell &cell) const |
| |
| RealPoint | embedKS (const DGtal::TransformedPrism &aTrans) const |
| |
| RealPoint | embedK (const typename KSpace::Cell &cell) const |
| |
template<typename
Space = Z3i::Space, typename
KSpace = Z3i::KSpace>
class DGtal::Board3D< Space, KSpace >
The class Board3D is a type of Display3D which export the figures in the format OBJ/MTL when calling the method saveOBJ.
The format OBJ/MTL is a geometry definition file format, this format has been adopted by many 3D graphics application vendors (pbrt, blender, etc.). to learn more about OBJ see http://en.wikipedia.org/wiki/Wavefront_.obj_file
When exporting Board3D regroup objects by they list name. If two lists have the same name they will melt in the same mesh eventually. If a list doesn't have a name the program will try to give it an unique name so it will become a separate mesh. Each list have a material description which correspond to its first element color. If two lists have the same name and merge the final mesh will have two materials (one per list).
- Template Parameters
-
| Space | a model of digital space (default type=Z3i::Space) |
| KSpace | a model of Khalimsky space (default type=Z3i::KSpace) |
- Examples
- io/boards/dgtalBoard3D-1-points.cpp, io/boards/dgtalBoard3D-2-ks.cpp, io/boards/dgtalBoard3D-6-clipping.cpp, and shapes/exampleMeshVoxelizer.cpp.
Definition at line 81 of file Board3D.h.