|
| SimpleViewer () |
|
| ~SimpleViewer () |
|
void | init () override |
|
bool | isInit () const override |
|
bool | isValid () const override |
|
bool | changeBackgroundColor (const Color &_color) override |
|
bool | saveScreenshot (const std::string &_name) override |
|
void | addModel (Model *_geode) override |
|
void | addGroup (Group *_group) override |
|
void | setNodeSelected (osg::Node *_geode, bool isSelected) override |
|
bool | isNodeSelected (osg::Node *_geode) override |
|
std::vector< osg::Geode * > | getSelectedGeodes () |
|
std::vector< osg::Geode * > | getGeodes () |
|
MixedMeshesVector | getSelectedMeshes () |
|
MixedMeshesVector | getMeshes () |
|
size_t | getMeshId (const void *mesh_ptr) |
|
std::vector< std::string > | getSelectedMeshesNames () |
|
std::vector< std::string > | getMeshesNames () |
|
std::vector< PMapsContainer * > | getSelected_properties_maps () |
|
std::vector< PMapsContainer * > | get_properties_maps () |
|
std::vector< osg::Group * > | getSelectedDraggers1 () |
|
std::vector< osg::Group * > | getDraggers1 () |
|
std::vector< osg::Group * > | getSelectedDraggers2 () |
|
std::vector< osg::Group * > | getDraggers2 () |
|
DataModelVector * | getDataModel () override |
|
osg::Matrix | getTransformMatrixOsg (unsigned int position) |
|
Eigen::Matrix4d | getTransformMatrixEigen (unsigned int position) |
|
void | resetTransformMatrix (unsigned int position) |
|
template<typename HalfedgeGraph , typename PointMap > |
osg::ref_ptr< osg::Group > | createMesh (HalfedgeGraph *_g, PMapsContainer *_pmaps, PointMap *_pm, std::string _mesh_file=std::string(""), osg::ref_ptr< osg::Group > _group=new osg::Group) |
|
template<typename HalfedgeGraph , typename PointMap > |
void | drawMesh (HalfedgeGraph *_g, PMapsContainer *_pmaps, PointMap *_pm, std::string _mesh_file=std::string("")) |
|
template<typename HalfedgeGraph , typename PointMap > |
void | redrawMesh (HalfedgeGraph *_g, PMapsContainer *_pmaps, PointMap *_pm=nullptr, std::string _mesh_file=std::string("")) |
|
template<typename HalfedgeGraph > |
void | centerMesh (HalfedgeGraph *_g) |
|
osg::Matrix | getMatrixVP () |
|
void | setMatrixVP (osg::Matrix matrix) |
|
template<typename HalfedgeGraph > |
void | draw_or_redraw_mesh (HalfedgeGraph *_g, PMapsContainer *_pmaps, bool _redraw=false, bool _recomputeNT_if_redraw=false, std::string _mesh_filename=std::string(""), bool _recreateOSGobj_if_redraw=true, float _step=0.) |
|
void | activate_time_mode () |
|
void | activate_space_mode () |
|
void | updateSWModelList () |
|
osg::Node * | addDraggersToScene (osg::Node *scene, const std::string &nameDrag1, float fScaleDrag1, char keyDrag1, const std::string &nameDrag2, float fScaleDrag2, char keyDrag2) |
|
| BaseViewerOSG () |
|
virtual | ~BaseViewerOSG () |
|
Group * | getRootNode () |
|
virtual bool | isSelected () const |
|
virtual void | setSelected (const bool _isSelected) |
|
| BaseViewer () |
|
virtual | ~BaseViewer () |
|
virtual bool | isSelected () const |
|
virtual void | setSelected (const bool _isSelected) |
|
void | attach (Window *_window) |
|
void | attach (Adapter *_adapter) |
|
Adapter * | getAdapter () |
|
Window * | getWindow () |
|
|
template<typename HalfedgeGraph , typename PointMap > |
void | internal_createMesh (osg::Geode *&geode, HalfedgeGraph *_g, PMapsContainer *_pmaps, std::vector< osg::ref_ptr< osg::Geometry > > &geometries, std::vector< osg::ref_ptr< osg::Geometry > > &geometriesL, std::vector< osg::ref_ptr< osg::Geometry > > &geometriesP, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_edges, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_vertices, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_normals, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_custom_vectors, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_edges, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_vertices, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_normals, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_custom_vectors, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArraysF, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays_edges, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays_vertices, std::vector< osg::ref_ptr< osg::Vec3Array > > &tangentsArrays, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_edges, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_vertices, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_normals, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_custom_vectors, std::vector< osg::ref_ptr< osg::Vec2Array > > &texcoordsArrays, PointMap *_pm, std::string _mesh_file=std::string("")) |
|
template<typename HalfedgeGraph , typename PointMap > |
osg::Geode * | internal_createMesh (HalfedgeGraph *_g, PMapsContainer *_pmaps, std::vector< osg::ref_ptr< osg::Geometry > > &geometries, std::vector< osg::ref_ptr< osg::Geometry > > &geometriesL, std::vector< osg::ref_ptr< osg::Geometry > > &geometriesP, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_edges, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_vertices, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_normals, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_custom_vectors, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_edges, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_vertices, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_normals, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_custom_vectors, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArraysF, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays_edges, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays_vertices, std::vector< osg::ref_ptr< osg::Vec3Array > > &tangentsArrays, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_edges, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_vertices, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_normals, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_custom_vectors, std::vector< osg::ref_ptr< osg::Vec2Array > > &texcoordsArrays, PointMap *_pm, std::string _mesh_file=std::string("")) |
|
template<typename PointCloud , typename PointMap > |
void | internal_createMesh_pointcloud (osg::Geode *&geode, PointCloud *_g, PMapsContainer *_pmaps, std::vector< osg::ref_ptr< osg::Geometry > > &geometries, std::vector< osg::ref_ptr< osg::Geometry > > &geometriesL, std::vector< osg::ref_ptr< osg::Geometry > > &geometriesP, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_edges, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_vertices, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_normals, std::vector< osg::ref_ptr< osg::Geometry > > &geometries_custom_vectorss, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_edges, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_vertices, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_normals, std::vector< osg::ref_ptr< osg::Vec3Array > > &vertexArrays_custom_vectors, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArraysF, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays_edges, std::vector< osg::ref_ptr< osg::Vec3Array > > &normalsArrays_vertices, std::vector< osg::ref_ptr< osg::Vec3Array > > &tangentsArrays, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_edges, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_vertices, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_normals, std::vector< osg::ref_ptr< osg::Vec4Array > > &colorsArrays_custom_vectors, std::vector< osg::ref_ptr< osg::Vec2Array > > &texcoordsArrays, PointMap *_pm, std::string _mesh_file=std::string("")) |
|
|
template<typename HalfedgeGraph , typename VertexNormalMap , typename VertexTangentMap , typename VertexColorMap , typename FaceColorMap , typename VertexUVMap , typename HalfedgeUVMap , typename FaceMaterialMap > |
void | internal_loadShadedMesh (osg::Geode *_geode, HalfedgeGraph *_g, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_edges, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_vertices, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_normals, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_custom_vectors, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_edges, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_vertices, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_normals, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_custom_vectors, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_normalsArrays, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_normalsArrays_edges, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_normalsArrays_vertices, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_tangentsArrays, const std::vector< osg::ref_ptr< osg::Vec2Array > > &_texcoordsArrays, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_edges, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_vertices, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_normals, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_custom_vectors, std::size_t _m_mm_size, VertexNormalMap *_vt_nm, VertexTangentMap *_vt_tm, VertexColorMap *_vt_cm, FaceColorMap *_f_cm, VertexUVMap *_vt_uv_m, HalfedgeUVMap *_het_uv_m, FaceMaterialMap *_m_mm, bool has_face_color_map) |
|
template<typename HalfedgeGraph , typename VertexNormalMap , typename VertexColorMap , typename FaceColorMap , typename VertexUVMap , typename HalfedgeUVMap , typename FaceMaterialMap > |
void | internal_loadLegacyMesh (osg::Geode *_geode, HalfedgeGraph *_g, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_edges, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_vertices, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_normals, const std::vector< osg::ref_ptr< osg::Geometry > > &_geometries_custom_vectors, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_edges, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_vertices, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_normals, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_vertexArrays_custom_vectors, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_normalsArrays, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_normalsArrays_edges, const std::vector< osg::ref_ptr< osg::Vec3Array > > &_normalsArrays_vertices, const std::vector< osg::ref_ptr< osg::Vec2Array > > &_texcoordsArrays, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_edges, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_vertices, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_normals, const std::vector< osg::ref_ptr< osg::Vec4Array > > &_colorsArrays_custom_vectors, std::size_t _m_mm_size, int _texture_type, VertexNormalMap *_vt_nm, VertexColorMap *_vt_cm, FaceColorMap *_f_cm, VertexUVMap *_vt_uv_m, HalfedgeUVMap *_het_uv_m, FaceMaterialMap *_m_mm, bool has_face_color_map) |
|
SimpleViewer is a specialization of osgViewer::CompositeViewer. This class is a widget where we are able to draw objects using OpenSceneGraph.
Definition at line 179 of file SimpleViewer.h.
template<typename HalfedgeGraph , typename PointMap >
void FEVV::SimpleViewer::internal_createMesh |
( |
osg::Geode *& |
geode, |
|
|
HalfedgeGraph * |
_g, |
|
|
PMapsContainer * |
_pmaps, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometries, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometriesL, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometriesP, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometries_edges, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometries_vertices, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometries_normals, |
|
|
std::vector< osg::ref_ptr< osg::Geometry > > & |
geometries_custom_vectors, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
vertexArrays, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
vertexArrays_edges, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
vertexArrays_vertices, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
vertexArrays_normals, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
vertexArrays_custom_vectors, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
normalsArrays, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
normalsArraysF, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
normalsArrays_edges, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
normalsArrays_vertices, |
|
|
std::vector< osg::ref_ptr< osg::Vec3Array > > & |
tangentsArrays, |
|
|
std::vector< osg::ref_ptr< osg::Vec4Array > > & |
colorsArrays, |
|
|
std::vector< osg::ref_ptr< osg::Vec4Array > > & |
colorsArrays_edges, |
|
|
std::vector< osg::ref_ptr< osg::Vec4Array > > & |
colorsArrays_vertices, |
|
|
std::vector< osg::ref_ptr< osg::Vec4Array > > & |
colorsArrays_normals, |
|
|
std::vector< osg::ref_ptr< osg::Vec4Array > > & |
colorsArrays_custom_vectors, |
|
|
std::vector< osg::ref_ptr< osg::Vec2Array > > & |
texcoordsArrays, |
|
|
PointMap * |
_pm, |
|
|
std::string |
_mesh_file = std::string("") |
|
) |
| |
|
protected |
Draw mesh into the scene.
- Note
- The mesh must be a model of HalfedgeGraph concept.
- Template Parameters
-
PointMap | a class of points map. Associate a coordinate to an halfedge_descriptor. |
- Parameters
-
[in] | _g | a mesh (model of HalfedgeGraph concept). |
[in] | _pm | a point map. |
Adding edges - superimpose only
Adding vertices - superimpose and 'only_pts' mode only
Adding faces
Definition at line 616 of file SimpleViewer.inl.
template<typename HalfedgeGraph , typename VertexNormalMap , typename VertexColorMap , typename FaceColorMap , typename VertexUVMap , typename HalfedgeUVMap , typename FaceMaterialMap >
void FEVV::SimpleViewer::internal_loadLegacyMesh |
( |
osg::Geode * |
_geode, |
|
|
HalfedgeGraph * |
_g, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_normals, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_custom_vectors, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_normals, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_custom_vectors, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_normalsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_normalsArrays_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_normalsArrays_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Vec2Array > > & |
_texcoordsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_normals, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_custom_vectors, |
|
|
std::size_t |
_m_mm_size, |
|
|
int |
_texture_type, |
|
|
VertexNormalMap * |
_vt_nm, |
|
|
VertexColorMap * |
_vt_cm, |
|
|
FaceColorMap * |
_f_cm, |
|
|
VertexUVMap * |
_vt_uv_m, |
|
|
HalfedgeUVMap * |
_het_uv_m, |
|
|
FaceMaterialMap * |
_m_mm, |
|
|
bool |
has_face_color_map |
|
) |
| |
|
private |
Loads a mesh into the scene using old rendering mode.
- Note
- The mesh must be a model of HalfedgeGraph concept.
- Template Parameters
-
VertexNormalMap | a class of vertex normals map. Associates a normal to a vertex_descriptor. |
VertexColorMap | a class of vertex colors map. Associates a coordinate to a vertex_descriptor. |
FaceColorMap | a class of face colors map. Associates a coordinate to a material index. |
VertexUVMap | a class of vertex texture coordinates map. Associates texture coordinates to a vertex_descriptor. |
HalfedgeUVMap | a class of halfedge texture coordinates map. Associates texture coordinates to an halfedge_descriptor. |
FaceMaterialMap | a class of face materials map. Associates a material to an material index. |
- Parameters
-
[in] | _geode | the geode which we want to load. |
[in] | _g | the halfedge graph. |
[in] | _geometries | the geometries which we load into the geode. |
[in] | _geometries_edges | the superimposed edges geometries which we load into the geode. |
[in] | _geometries_vertices | the superimposed vertices geometries which we load into the geode. |
[in] | _vertexArrays | the vertices positions we load into the geode. |
[in] | _vertexArrays_edges | the superimposed edges positions we load into the geode. |
[in] | _vertexArrays_vertices | the superimposed vertices positions we load into the geode. |
[in] | _normalsArrays | the normals we load into the geode. |
[in] | _texcoordsArrays | the texture coordinates we load into the geode. |
[in] | _colorsArrays | the colors we load into the geode. |
[in] | _colorsArrays_edges | the superimposed edges colors we load into the geode. |
[in] | _colorsArrays_vertices | the superimposed vertices colors we load into the geode. |
[in] | _m_mm_size | the number of materials. |
[in] | _texture_type | the texture coordinates setup (by vertex, by halfedge, or none). |
[in] | _vt_nm | the vertex normals property map. |
[in] | _vt_cm | the vertex colors property map. |
[in] | _f_cm | the face colors property map. |
[in] | _vt_uv_m | the vertex texture coordinates property map. |
[in] | _het_uv_m | the halfedge texture coordinates property map. |
[in] | _m_mm | the face materials property map. |
Definition at line 1050 of file MeshLoading.inl.
template<typename HalfedgeGraph , typename VertexNormalMap , typename VertexTangentMap , typename VertexColorMap , typename FaceColorMap , typename VertexUVMap , typename HalfedgeUVMap , typename FaceMaterialMap >
void FEVV::SimpleViewer::internal_loadShadedMesh |
( |
osg::Geode * |
_geode, |
|
|
HalfedgeGraph * |
_g, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_normals, |
|
|
const std::vector< osg::ref_ptr< osg::Geometry > > & |
_geometries_custom_vectors, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_normals, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_vertexArrays_custom_vectors, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_normalsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_normalsArrays_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_normalsArrays_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Vec3Array > > & |
_tangentsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec2Array > > & |
_texcoordsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_edges, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_vertices, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_normals, |
|
|
const std::vector< osg::ref_ptr< osg::Vec4Array > > & |
_colorsArrays_custom_vectors, |
|
|
std::size_t |
_m_mm_size, |
|
|
VertexNormalMap * |
_vt_nm, |
|
|
VertexTangentMap * |
_vt_tm, |
|
|
VertexColorMap * |
_vt_cm, |
|
|
FaceColorMap * |
_f_cm, |
|
|
VertexUVMap * |
_vt_uv_m, |
|
|
HalfedgeUVMap * |
_het_uv_m, |
|
|
FaceMaterialMap * |
_m_mm, |
|
|
bool |
has_face_color_map |
|
) |
| |
|
private |
Loads a mesh into the scene, using shaders. Assigns a shader to each mesh, according to its material type (standard - Blinn-Phong/PBR - Cook-Torrance).
- Note
- The mesh must be a model of HalfedgeGraph concept.
- Template Parameters
-
VertexNormalMap | a class of vertex normals map. Associates a normal to a vertex_descriptor. |
VertexTangentMap | a class of vertex tangents map. Associates a tangent to an vertex_descriptor. |
VertexColorMap | a class of vertex colors map. Associates a coordinate to a vertex_descriptor. |
FaceMaterialMap | a class of face materials map. Associates a material to an material index. |
- Parameters
-
[in] | _geode | the geode which we want to load. |
[in] | _g | the halfedge graph. |
[in] | _geometries | the geometries which we load into the geode. |
[in] | _geometries_edges | the superimposed edges geometries which we load into the geode. |
[in] | _geometries_vertices | the superimposed vertices geometries which we load into the geode. |
[in] | _vertexArrays | the vertices positions we load into the geode. |
[in] | _vertexArrays_edges | the superimposed edges positions we load into the geode. |
[in] | _vertexArrays_vertices | the superimposed vertices positions we load into the geode. |
[in] | _normalsArrays | the normals we load into the geode. |
[in] | _tangentsArrays | the tangents we load into the geode. |
[in] | _texcoordsArrays | the texture coordinates we load into the geode. |
[in] | _colorsArrays | the colors we load into the geode. |
[in] | _colorsArrays_edges | the superimposed edges colors we load into the geode. |
[in] | _colorsArrays_vertices | the superimposed vertices colors we load into the geode. |
[in] | _m_mm_size | the number of materials. |
[in] | _texture_type | the texture coordinates setup (by vertex, by halfedge, or none). |
[in] | _vt_nm | the vertex normals property map. |
[in] | _vt_tm | the vertex tangents property map. |
[in] | _vt_cm | the vertex colors property map. |
[in] | _m_mm | the face materials property map. |
Definition at line 615 of file MeshLoading.inl.