コード例 #1
0
void TW_CALL loadOBJModel(void *data)
{
	std::wstring str = getOpenFileName();

	Wavefront_obj objScene;
	bool result = objScene.load_file(str);



	if (result)
	{
		std::cout << "The obj file was loaded successfully" << std::endl;
		//store the values in Object, MeshModel...
		//draw the object for the first time
		MeshModel m(objScene);
		transform.setAllValues(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);//this is the model matrix
		axisTransform.setAllValues(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);//this is the model matrix
		box.setVertices(m);
		sceneObject.setModel(m, transform);

	}
	else
	{
		std::cerr << "Failed to load obj file" << std::endl;
	}

	std::cout << "The number of vertices in the model is: " << objScene.m_points.size() << std::endl;
	std::cout << "The number of triangles in the model is: " << objScene.m_faces.size() << std::endl;
	clear = false;
	glutPostRedisplay();
}
コード例 #2
0
void TransFuncEditorIntensityPet::loadTransferFunction() {
    // create filter with supported file formats
    QString filter = "transfer function (";
    for (size_t i = 0; i < transferFuncIntensity_->getLoadFileFormats().size(); ++i) {
        std::string temp = "*." + transferFuncIntensity_->getLoadFileFormats()[i] + " ";
        filter.append(temp.c_str());
    }
    filter.replace(filter.length()-1, 1, ")");

    QString fileName = getOpenFileName(filter);
    if (!fileName.isEmpty()) {
        if (transferFuncIntensity_->load(fileName.toStdString()) &&
            transferFuncGradient_->load(fileName.toStdString()))
        {
            if (!transferFunctionCorrect()) {
                rectifyTransferFunction();
                std::string error = "The transfer function contains keys which alpha value is not ";
                error += "255.\nThe alpha value of these keys will be set to 255.";
                QMessageBox::critical(this, tr("Error"), tr(error.c_str()));
                LINFO(error);
            }
            ranges_.clear();
            currentRange_ = tgt::ivec2(0, maximumIntensity_);
            oldThreshold_ = tgt::vec2(0.f, 1.f);
            if (transferFuncIntensity_->getThresholds() != tgt::vec2(0.f, 1.f))
                restoreThresholds();

            updateTransferFunction();
        }
        else {
            QMessageBox::critical(this, tr("Error"), "The selected transfer function could not be loaded.");
            LERROR("The selected transfer function could not be loaded. Maybe the file is corrupt.");
        }
    }
}
コード例 #3
0
ファイル: pythoneditor.cpp プロジェクト: MKLab-ITI/gnorasi
void PythonEditor::openScript() {

    if (!PythonModule::getInstance()) {
        LERROR("PythonModule not instantiated");
        return;
    }

    //create filter with supported file formats
    QString filter = "Python Script (*.py)";
    QString fileName = getOpenFileName(filter);
    if (!fileName.isEmpty()) {
        clearScript();

        script_ = PythonModule::getInstance()->loadScript(fileName.toStdString(), false);
        if (!script_) {
            QMessageBox::critical(this, tr("Python Error"), tr("Python script '%1' could not be loaded.").arg(fileName));
        }
        else {
            // retrieve script source from script object and assign it to code editor
            QString source = QString::fromStdString(script_->getSource());
            source = source.replace("\t", "    ");  //< replace tabs with four spaces
            codeEdit_->setPlainText(source);
            scriptOwner_ = false;
        }
        updateGuiState();
    }
}
コード例 #4
0
void TransFunc1DKeysEditor::loadTransferFunction() {

    if (!transferFuncIntensity_) {
        LWARNING("No valid transfer function assigned");
        return;
    }

    //create filter with supported file formats
    QString filter = "transfer function (";
    for (size_t i = 0; i < transferFuncIntensity_->getLoadFileFormats().size(); ++i) {
        std::string temp = "*." + transferFuncIntensity_->getLoadFileFormats()[i] + " ";
        filter.append(temp.c_str());
    }
    filter.replace(filter.length()-1, 1, ")");

    QString fileName = getOpenFileName(filter);
    if (!fileName.isEmpty()) {
        if (transferFuncIntensity_->load(fileName.toStdString())) {
            updateMappingSpin(true);
            updateThresholdFromProperty();
            updateTransferFunction();
        }
        else {
            QMessageBox::critical(this, tr("Error"),
                "The selected transfer function could not be loaded.");
            LERROR("The selected transfer function could not be loaded. Maybe the file is corrupt.");
        }
    }
}
コード例 #5
0
int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QMainWindow::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: attachSexyAPI(); break;
        case 1: { QStringList _r = exec((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])));
            if (_a[0]) *reinterpret_cast< QStringList*>(_a[0]) = _r; }  break;
        case 2: { QStringList _r = exec((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< QStringList*>(_a[0]) = _r; }  break;
        case 3: alert((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 4: quit(); break;
        case 5: windowMinimize(); break;
        case 6: windowMaximize(); break;
        case 7: windowResize((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        case 8: { int _r = windowWidth();
            if (_a[0]) *reinterpret_cast< int*>(_a[0]) = _r; }  break;
        case 9: { int _r = windowHeight();
            if (_a[0]) *reinterpret_cast< int*>(_a[0]) = _r; }  break;
        case 10: { QStringList _r = getOpenFileName((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])));
            if (_a[0]) *reinterpret_cast< QStringList*>(_a[0]) = _r; }  break;
        case 11: { QStringList _r = getOpenFileName((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< QStringList*>(_a[0]) = _r; }  break;
        case 12: { QStringList _r = getOpenFileName();
            if (_a[0]) *reinterpret_cast< QStringList*>(_a[0]) = _r; }  break;
        case 13: { QString _r = getSaveFileName((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])));
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = _r; }  break;
        case 14: { QString _r = getSaveFileName((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = _r; }  break;
        case 15: { QString _r = getSaveFileName();
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = _r; }  break;
        case 16: { QString _r = getDirectory((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = _r; }  break;
        case 17: { QString _r = getDirectory();
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = _r; }  break;
        case 18: { QStringList _r = getArgs();
            if (_a[0]) *reinterpret_cast< QStringList*>(_a[0]) = _r; }  break;
        default: ;
        }
        _id -= 19;
    }
    return _id;
}
コード例 #6
0
void QgsAuthImportCertDialog::btnImportFile_clicked()
{
  const QString &fn = getOpenFileName( tr( "Open Certificate File" ),  tr( "All files (*.*);;PEM (*.pem);;DER (*.der)" ) );
  if ( !fn.isEmpty() )
  {
    leImportFile->setText( fn );
  }
  validateCertificates();
}
コード例 #7
0
ファイル: client.cpp プロジェクト: nightfly19/renyang-learn
void ClientInfo::downloadFile()
{
    // under Windows you must not use the native file dialog
    QString file = getOpenFileName();
    if ( !file.isEmpty() ) {
	infoText->clear();
	// download the data
	op = file;
	op.get();
    }
}
コード例 #8
0
ファイル: importmidi.cpp プロジェクト: Adamiko/los
void LOS::importPart()
{
    unsigned curPos = song->cpos();
    TrackList* tracks = song->tracks();
    Track* track = 0;
    // Get first selected track:
    for (iTrack i = tracks->begin(); i != tracks->end(); i++)
    {
        Track* t = *i;
        if (t->selected())
        {
            // Changed by T356. Support mixed .mpt files.
            //if (t->isMidiTrack()) {
            if (t->isMidiTrack() || t->type() == Track::WAVE)
            {
                track = t;
                break;
            }
            else
            {
                //QMessageBox::warning(this, QString("LOS"), tr("Import part is only valid for midi tracks!"));
                QMessageBox::warning(this, QString("LOS"), tr("Import part is only valid for midi and wave tracks!"));
                return;
            }
        }
    }

    if (track)
    {
        bool loadAll;
        QString filename = getOpenFileName(QString(""), part_file_pattern, this, tr("LOS: load part"), &loadAll);
        if (!filename.isEmpty())
        {
            // Make a backup of the current clone list, to retain any 'copy' items,
            //  so that pasting works properly after.
            CloneList copyCloneList = cloneList;
            // Clear the clone list to prevent any dangerous associations with
            //  current non-original parts.
            cloneList.clear();

            importPartToTrack(filename, curPos, track);

            // Restore backup of the clone list, to retain any 'copy' items,
            //  so that pasting works properly after.
            cloneList.clear();
            cloneList = copyCloneList;
        }
    }
    else
    {
        QMessageBox::warning(this, QString("LOS"), tr("No track selected for import"));
    }
}
コード例 #9
0
ファイル: view.cpp プロジェクト: opieproject/qte-opie
void View::downloadFile()
{
    // QString file = QFileDialog::getOpenFileName();
    // under Windows you must not use the native file dialog
    QString file = getOpenFileName();
    if ( !file.isEmpty() ) {
	// clear the view
	fileView->clear();
	
	// download the data
	op = file;
	op.get();
    }
}
コード例 #10
0
ファイル: qnapiopendialog.cpp プロジェクト: Greedysky/qnapi
bool QNapiOpenDialog::selectFile() {
#if defined(Q_OS_WIN) || defined(Q_OS_MAC)
  files.clear();
  QString file = getOpenFileName(this, windowTitle(), directory().path(),
                                 nameFilters().join("\n"));

  if (!file.isEmpty()) files << file;

  return !file.isEmpty();
#else
  if (!placeWindow()) return false;
  setFileMode(QFileDialog::ExistingFile);
  return exec();
#endif
}
コード例 #11
0
void WindowConfiguration_Mesh::loadFile()
{
	QStringList type_load;
 	current_dir = "Ressources/OBJ/";
 	type_load << "OBJ file (*.obj)";
 	std::string filename = getOpenFileName("Specify a OBJ file", type_load,0);
 	if (filename != ""){
		if(loader!=NULL) delete(loader);
		loader = new ObjLoader();
		Mesh mesh = loader->load(filename.c_str());
		M = new MeshCollision(elast->value(),friction->value(),container->isChecked());
		M->setFaces(mesh.getFaces());
		M->storeFacesOnGPU();
		glWidget->getDisplay()->displayObjectCollision(M);
  	}	
}
コード例 #12
0
ファイル: view_file.cpp プロジェクト: PheeL79/lightpen
const QString ViewFile::FilePathGet(const FileAction action, const QString &file_path,
                                    const QString &caption, const QString &filter)
{
    switch (action) {
        case FILE_READ:
            return getOpenFileName(NULL, caption, QDir(file_path).path(), filter);
            break;
        case FILE_WRITE:
            return getSaveFileName(NULL, caption, QDir(file_path).path(), filter);
            break;
        default:
            D_ASSERT(action != FILE_UNDEF);
            break;
    }
    return QString();
}
コード例 #13
0
ファイル: dialoggui.cpp プロジェクト: dewhisna/emscripten-qt
QString DialogGui::getOpenImageFileName(QWidget *parent, const QString &caption, const QString &dir, const QString &filter, QString *selectedFilter, QFileDialog::Options options )
{

#ifdef IMAGE_PREVIEW
    QFileDialog fileDialog(parent, caption, dir, filter);
    initializeImageFileDialog(fileDialog, options, QFileDialog::ExistingFile);
    if (fileDialog.exec() != QDialog::Accepted)
        return QString();

    const QStringList selectedFiles = fileDialog.selectedFiles();
    if (selectedFiles.empty())
        return QString();

    if (selectedFilter)
        *selectedFilter =  fileDialog.selectedFilter();

    return selectedFiles.front();
#else
    return getOpenFileName(parent, caption, dir, filter, selectedFilter, options);
#endif
}
コード例 #14
0
void TransFunc1DRampEditor::loadTransferFunction() {

    if (!transferFuncIntensity_) {
        LWARNING("No valid transfer function assigned");
        return;
    }

    //create filter with supported file formats
    QString filter = "transfer function (";
    for (size_t i = 0; i < transferFuncIntensity_->getLoadFileFormats().size(); ++i) {
        std::string temp = "*." + transferFuncIntensity_->getLoadFileFormats()[i] + " ";
        filter.append(temp.c_str());
    }
    filter.replace(filter.length()-1, 1, ")");

    QString fileName = getOpenFileName(filter);
    if (!fileName.isEmpty()) {
        if (transferFuncIntensity_->load(fileName.toStdString())) {
            if (transferFuncIntensity_->getNumKeys() > 2) {
                clearButtonClicked();
                std::string error = "The loaded transfer function contains more than 2 keys.\n";
                error += "The editor does not support this kind of transfer functions.\n";
                error += "The transfer function is reset to default.";
                QMessageBox::critical(this, tr("Error"), tr(error.c_str()));
                LERROR(error);
            }
            else {
                restoreThresholds();
                updateTransferFunction();
            }
        }
        else {
            QMessageBox::critical(this, tr("Error"),
                                  tr("The selected transfer function could not be loaded."));
            LERROR("The selected transfer function could not be loaded. Maybe the file is corrupt.");
        }
    }
}
コード例 #15
0
ファイル: importmidi.cpp プロジェクト: peter1000/los
void LOS::importMidi(const QString &file)
{
    QString fn;
    if (file.isEmpty())
    {
        fn = getOpenFileName(lastMidiPath, midi_file_pattern, this,
                tr("LOS: Import Midi"), 0);
        if (fn.isEmpty())
            return;
        lastMidiPath = fn;
    }
    else
        fn = file;

    int n = QMessageBox::question(this, appName,
            tr("Add midi file to current project?\n"),
            tr("&Add to Project"),
            tr("&Replace"),
            tr("&Cancel"), 0, 2);

    switch (n)
    {
        case 0:
            song->invalid = true;
            importMidi(fn, true);
            song->invalid = false;
            song->update();
            break;
        case 1:
            song->invalid = true;
            loadProjectFile(fn, false, false); // replace
            song->invalid = false;
            break;
        default:
            return;
    }
}
コード例 #16
0
void TransFuncEditorIntensityGradient::loadTransferFunction() {
    // create filter with supported file formats
    QString filter = "transfer function (";
    for (size_t i = 0; i < transFuncGradient_->getLoadFileFormats().size(); ++i) {
        std::string temp = "*." + transFuncGradient_->getLoadFileFormats()[i] + " ";
        filter.append(temp.c_str());
    }
    filter.replace(filter.length()-1, 1, ")");

    QString fileName = getOpenFileName(filter);
    if (!fileName.isEmpty()) {
        // deselect current selected primitive. Primitive gets deleted on successfull loading.
        painter_->deselectPrimitive();
        if (transFuncGradient_->load(fileName.toStdString())) {
            painter_->updateTF();
            transCanvas_->update();
        }
        else {
            QMessageBox::critical(this, tr("Error"),
                                  tr("The selected transfer function could not be loaded."));
            LERROR("The selected transfer function could not be loaded. Maybe the file is corrupt.");
        }
    }
}
コード例 #17
0
void TestMainWindow::activatedListItem(HbListWidgetItem *item)
{
    if( item->text().compare( getDir ) == 0 ) {
        getExistingDirectory();
    } else if( item->text().compare( getFile ) == 0 ) {
        getOpenFileName();
    } else if( item->text().compare( saveFile ) == 0 ) {
       getSaveFileName();
    } else if( item->text().compare( getDir_SetDir ) == 0 ) {
        getExistingDirectory_SetDir();
    } else if( item->text().compare( getFile_SetDir ) == 0 ) {
       getOpenFileName_SetDir();
    } else if( item->text().compare( saveFile_SetDir ) == 0 ) {
        getSaveFileName_SetDir();
    } else if( item->text().compare( getDir_SetFilter ) == 0 ) {
        getExistingDirectory_SetFilter();
    } else if( item->text().compare( getDir_SetFilter_AllDirs ) == 0 ) {
        getExistingDirectory_SetFilter_AllDirs();
    } else if( item->text().compare( getFile_SetFilter ) == 0 ) {
        getOpenFileName_SetFilter();
    } else if( item->text().compare( saveFile_SetFilter ) == 0 ) {
       getSaveFileName_SetFilter();
    }
}
コード例 #18
0
ファイル: main_window.cpp プロジェクト: pat1005331/mapper
void MainWindow::showOpenDialog()
{
	QString path = getOpenFileName(this, tr("Open file"), FileFormat::AllFiles);
	if (!path.isEmpty())
		openPath(path);
}
コード例 #19
0
ファイル: output.cpp プロジェクト: RaceOfAce/mkvtoolnix
void
MergeWidget::onBrowseSegmentInfo() {
  auto fileName = getOpenFileName(QY("Select segment info file"), QY("XML files") + Q(" (*.xml)"), ui->segmentInfo);
  if (!fileName.isEmpty())
    m_config.m_segmentInfo = fileName;
}
コード例 #20
0
ファイル: output.cpp プロジェクト: RaceOfAce/mkvtoolnix
void
MergeWidget::onBrowseGlobalTags() {
  auto fileName = getOpenFileName(QY("Select tags file"), QY("XML files") + Q(" (*.xml)"), ui->globalTags);
  if (!fileName.isEmpty())
    m_config.m_globalTags = fileName;
}
コード例 #21
0
ファイル: output.cpp プロジェクト: RaceOfAce/mkvtoolnix
void
MergeWidget::onBrowseChapters() {
  auto fileName = getOpenFileName(QY("Select chapter file"), QY("XML files") + Q(" (*.xml)"), ui->chapters);
  if (!fileName.isEmpty())
    m_config.m_chapters = fileName;
}
コード例 #22
0
void QgsDelimitedTextSourceSelect::on_btnBrowseForFile_clicked()
{
  getOpenFileName();
}
コード例 #23
0
QString QDesignerDialogGuiInterface::getOpenImageFileName(QWidget *parent, const QString &caption, const QString &dir, const QString &filter, QString *selectedFilter, QFileDialog::Options options)
{
    return getOpenFileName(parent, caption, dir, filter, selectedFilter, options);
}