Ejemplo n.º 1
0
def onFileSaveData():

    obj = om.getActiveObject()
    if not obj:
        app.showErrorMessage('Please select an object', title='No object selected')
        return
    if isinstance(obj, otdfmodel.OtdfModelItem):
        mainWindow = app.getMainWindow()
        filename = QtGui.QFileDialog.getSaveFileName(mainWindow, "Save Data...", getDefaultDirectory(), 'OTDF (*.otdf)', 'OTDF (*.otdf)')

        if not os.path.splitext(filename)[1]:
            filename += '.otdf'

        storeDefaultDirectory(filename)
        otdfString = obj.parser.getUpdatedOtdf()
        otdfFile = open(filename, 'w')
        otdfFile.write(otdfString)
        otdfFile.close()
    elif hasattr(obj, 'polyData'):
        mainWindow = app.getMainWindow()
        fileFilters = "PLY (*.ply);;STL (*.stl);;VTP (*.vtp)";
        filename = QtGui.QFileDialog.getSaveFileName(mainWindow, "Save Data...", getDefaultDirectory(), fileFilters, 'VTP (*.vtp)')

        if not filename:
            return

        if not os.path.splitext(filename)[1]:
            filename += '.vtp'

        polyData = io.writePolyData(obj.polyData, filename)
    else:
        app.showErrorMessage('Please select an object that contains geometry data or an OTDF object', title='Invalid object selected')
        return

    storeDefaultDirectory(filename)
Ejemplo n.º 2
0
 def onIkStartup(ikServer, startSuccess):
     if startSuccess:
         app.getMainWindow().statusBar().showMessage(
             'Planning server started.', 2000)
     else:
         app.showErrorMessage(
             'Error detected while starting the matlab planning server. '
             'Please check the output console for more information.',
             title='Error starting matlab')
Ejemplo n.º 3
0
def onOpenGeometry(filename):

    polyData = io.readPolyData(filename)

    if not polyData or not polyData.GetNumberOfPoints():
        app.showErrorMessage('Failed to read any data from file: %s' % filename, title='Reader error')
        return

    vis.showPolyData(polyData, os.path.basename(filename), parent='files')
Ejemplo n.º 4
0
def onFileSaveData():

    obj = om.getActiveObject()
    if not obj:
        app.showErrorMessage("Please select an object",
                             title="No object selected")
        return
    if isinstance(obj, otdfmodel.OtdfModelItem):
        mainWindow = app.getMainWindow()
        filename = QtGui.QFileDialog.getSaveFileName(
            mainWindow,
            "Save Data...",
            getDefaultDirectory(),
            "OTDF (*.otdf)",
            "OTDF (*.otdf)",
        )

        if not os.path.splitext(filename)[1]:
            filename += ".otdf"

        storeDefaultDirectory(filename)
        otdfString = obj.parser.getUpdatedOtdf()
        otdfFile = open(filename, "w")
        otdfFile.write(otdfString)
        otdfFile.close()
    elif hasattr(obj, "polyData"):
        mainWindow = app.getMainWindow()
        fileFilters = "PLY (*.ply);;STL (*.stl);;VTP (*.vtp);;VTK (*.vtk)"
        defaultFilter = "VTP (*.vtp)"
        filename = QtGui.QFileDialog.getSaveFileName(
            mainWindow,
            "Save Data...",
            getDefaultDirectory(),
            fileFilters,
            defaultFilter,
        )

        if not filename:
            return

        if not os.path.splitext(filename)[1]:
            filename += ".vtp"

        polyData = io.writePolyData(obj.polyData, filename)
    else:
        app.showErrorMessage(
            "Please select an object that contains geometry data or an OTDF object",
            title="Invalid object selected",
        )
        return

    storeDefaultDirectory(filename)
Ejemplo n.º 5
0
def onOpenGeometry(filename):

    if filename.lower().endswith('wrl'):
        onOpenVrml(filename)
        return

    polyData = io.readPolyData(filename)

    if not polyData or not polyData.GetNumberOfPoints():
        app.showErrorMessage('Failed to read any data from file: %s' % filename, title='Reader error')
        return

    vis.showPolyData(polyData, os.path.basename(filename), parent='files')
Ejemplo n.º 6
0
    def ensureDirectoryIsWritable(self, dirname):

        if not os.path.isdir(dirname):

            try:
                os.makedirs(dirname)
            except OSError:
                app.showErrorMessage('Error creating directory: %s' % dirname)
                return False

        if not os.access(dirname, os.W_OK | os.X_OK):
            app.showErrorMessage('Directory is not writable: %s' % dirname)
            return False

        return True
Ejemplo n.º 7
0
    def ensureDirectoryIsWritable(self, dirname):

        if not os.path.isdir(dirname):

            try:
                os.makedirs(dirname)
            except OSError:
                app.showErrorMessage("Error creating directory: %s" % dirname)
                return False

        if not os.access(dirname, os.W_OK | os.X_OK):
            app.showErrorMessage("Directory is not writable: %s" % dirname)
            return False

        return True
Ejemplo n.º 8
0
def onFileExportUrdf():
    obj = om.getActiveObject()
    if not obj or not isinstance(obj, otdfmodel.OtdfModelItem):
        app.showErrorMessage('Please select an OTDF object', title='OTDF object not selected')
        return

    mainWindow = app.getMainWindow()
    filename = QtGui.QFileDialog.getSaveFileName(mainWindow, "Save Data...", getDefaultDirectory(), 'URDF (*.urdf)', 'URDF (*.urdf)')

    if not os.path.splitext(filename)[1]:
        filename += '.urdf'

    storeDefaultDirectory(filename)
    urdfString = obj.parser.getUrdfFromOtdf()
    urdfFile = open(filename, 'w')
    urdfFile.write(urdfString)
    urdfFile.close()
Ejemplo n.º 9
0
 def onIkStartup(ikServer, startSuccess):
     if startSuccess:
         app.getMainWindow().statusBar().showMessage('Planning server started.', 2000)
     else:
         app.showErrorMessage('Error detected while starting the matlab planning server. '
                              'Please check the output console for more information.', title='Error starting matlab')
Ejemplo n.º 10
0
def onOpenUrdf(filename):

    model = roboturdf.openUrdf(filename, app.getCurrentRenderView())
    if not model:
        app.showErrorMessage('Failed to read urdf file: %s' % filename, title='Read urdf error')