diff options
Diffstat (limited to 'plugins/X3DReader')
-rw-r--r-- | plugins/X3DReader/X3DReader.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/plugins/X3DReader/X3DReader.py b/plugins/X3DReader/X3DReader.py index f1c217da9d..4ce21f3f8c 100644 --- a/plugins/X3DReader/X3DReader.py +++ b/plugins/X3DReader/X3DReader.py @@ -78,12 +78,17 @@ class X3DReader(MeshReader): builder.setIndices(numpy.concatenate([shape.faces for shape in self.shapes])) builder.calculateNormals() builder.setFileName(file_name) - - scene = SceneNode() - scene.setMeshData(builder.build()) - scene.setSelectable(True) - scene.setName(file_name) - scene.getBoundingBox() + mesh_data = builder.build() + + # Manually try and get the extents of the mesh_data. This should prevent nasty NaN issues from + # leaving the reader. + mesh_data.getExtents() + + node = SceneNode() + node.setMeshData(mesh_data) + node.setSelectable(True) + node.setName(file_name) + else: return None @@ -91,7 +96,7 @@ class X3DReader(MeshReader): Logger.logException("e", "Exception in X3D reader") return None - return scene + return node # ------------------------- XML tree traversal |