When the compile_openhrp_model macro defined in hrpsys_ros_bridge/cmake/compile_robot_model.cmake is used to convert VRML files that have IndexedFaceSet fields containing normal fields (but no normalIndex fields), the resulting Euslisp files do not contain the proper models. When the resulting Euslisp file is loaded into roseus and when trying to display the model in irtviewer, the model parts defined using the IndexedFaceSet fields that contain the normal field are not rendered. Instead, a small box is rendered in place.
When the normal field is removed from the VRML file, the converted Euslisp file contains the proper model and loads properly.
Furthermore, when trying to display the VRML file by executing (each in a different terminal):
$ rosrun openhrp3 start_omninames.sh 9999
$ ORBgiopMaxMsgSize=2147483648 openhrp-model-loader -ORBInitRef NameService=corbaloc:iiop:localhost:9999/NameService
$ ORBgiopMaxMsgSize=2147483648 hrpsys-viewer MODEL.wrl -ORBInitRef NameService=corbaloc:iiop:localhost:9999/NameService
The model defined by the IndexedFaceSet field that contains the normal field is not displayed.
Output from the terminal executing the second command shows:
loading /home/....../MODEL.wrl
Humanoid node is not found
Retrying to load the file as a standard VRML file
The number of normals is less than the number of vertices.
Node is inconvertible and removed from the scene graph
Node is inconvertible and removed from the scene graph
When the normal field is removed from the VRML, executing the above commands again displays the model correctly.
When the compile_openhrp_model macro defined in hrpsys_ros_bridge/cmake/compile_robot_model.cmake is used to convert VRML files that have IndexedFaceSet fields containing normal fields (but no normalIndex fields), the resulting Euslisp files do not contain the proper models. When the resulting Euslisp file is loaded into roseus and when trying to display the model in irtviewer, the model parts defined using the IndexedFaceSet fields that contain the normal field are not rendered. Instead, a small box is rendered in place.
When the normal field is removed from the VRML file, the converted Euslisp file contains the proper model and loads properly.
Furthermore, when trying to display the VRML file by executing (each in a different terminal): $ rosrun openhrp3 start_omninames.sh 9999 $ ORBgiopMaxMsgSize=2147483648 openhrp-model-loader -ORBInitRef NameService=corbaloc:iiop:localhost:9999/NameService $ ORBgiopMaxMsgSize=2147483648 hrpsys-viewer MODEL.wrl -ORBInitRef NameService=corbaloc:iiop:localhost:9999/NameService
The model defined by the IndexedFaceSet field that contains the normal field is not displayed.
Output from the terminal executing the second command shows: loading /home/....../MODEL.wrl Humanoid node is not found Retrying to load the file as a standard VRML file The number of normals is less than the number of vertices. Node is inconvertible and removed from the scene graph Node is inconvertible and removed from the scene graph
When the normal field is removed from the VRML, executing the above commands again displays the model correctly.