Пример #1
0
int main(int argc, char **argv)
{
    QString fileName{ "C:/develop/$sync/GFZ/data/VTK XML data/Volcano 2 topo.vtp" };

    auto data = Loader::readFile(fileName);

    QApplication app(argc, argv);
    QMainWindow window;
    window.show();

    DataSetHandler dataSetHandler;
    DataMapping dataMapping(dataSetHandler);

    RenderView renderView(dataMapping, -1);
    window.addDockWidget(Qt::TopDockWidgetArea, renderView.dockWidgetParent());
    app.setActiveWindow(&renderView);

    RenderConfigWidget renderConfig;
    renderConfig.setCurrentRenderView(&renderView);
    renderConfig.show();

    RendererConfigWidget rendererConfig;
    rendererConfig.setCurrentRenderView(&renderView);
    rendererConfig.show();

    ColorMappingChooser colorMapping;
    colorMapping.setCurrentRenderView(&renderView);
    colorMapping.show();

    GlyphMappingChooser glyphs;
    glyphs.setCurrentRenderView(&renderView);
    glyphs.show();


    QPushButton button;
    button.connect(&button, &QPushButton::clicked, [&renderView, &data] (){
        QList<DataObject *> incomp;
        renderView.showDataObjects({ data.get() }, incomp);
    });
    button.show();

    QPushButton exitButton("quit");
    exitButton.connect(&exitButton, &QPushButton::clicked, &app, &QApplication::quit);
    exitButton.show();

    return app.exec();

    /*auto renderer = vtkSmartPointer<vtkRenderer>::New();
    renderer->SetBackground(0.7, 0.7, 0.7);

    QScopedPointer<RenderedData> rendered{ data->createRendered() };

    rendered->viewProps()->InitTraversal();
    while (auto && it = rendered->viewProps()->GetNextProp())
    {
        renderer->AddViewProp(it);
    }

    auto renderWindow = vtkSmartPointer<vtkRenderWindow>::New();
    renderWindow->AddRenderer(renderer);

    auto rwInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
    rwInteractor->SetRenderWindow(renderWindow);

    rwInteractor->Start();


    return 0;*/
}
Пример #2
0
int main()
{
//	TestScenario test;

//	test.scenarioEvents();

	sf::RenderWindow* window = new sf::RenderWindow(sf::VideoMode(1980, 1080), "SFML works!", sf::Style::Fullscreen);
//	sf::RenderWindow* window = new sf::RenderWindow(sf::VideoMode(1000, 580), "SFML works!");

//	Game game;

//	game.GameLoop();
	
	
	sf::CircleShape shape(100.f);
	shape.setFillColor(sf::Color::Green);

	Button exitButton("Exit", 840, 700);
	Textbox testbox;
	sf::Clock time;
	sf::Vector2i mousePos;
	while (window->isOpen())
	{
		sf::Event event;

		
		
		while (testbox.Update(time.restart().asSeconds()))
		{
			while (window->pollEvent(event))
			{
				mousePos = sf::Mouse::getPosition(*window);
				if (exitButton.ButtonFunction(mousePos) || event.type == sf::Event::Closed || sf::Keyboard::isKeyPressed(sf::Keyboard::Escape))
				{
					window->close();
					return 0;
				}
			}


			window->clear();
			window->draw(shape);
			testbox.Draw(window);
			exitButton.Draw(window); 
			window->display();

		}
		testbox.ChangeText("Well it worked well \nThat's really nice to know :) \n едцедцедц");

		while (testbox.Update(time.restart().asSeconds()))
		{
			while (window->pollEvent(event))
			{
				mousePos = sf::Mouse::getPosition(*window);
				if (exitButton.ButtonFunction(mousePos) || event.type == sf::Event::Closed || sf::Keyboard::isKeyPressed(sf::Keyboard::Escape))
				{
					window->close();
					return 0;
				}
			}


			window->clear(sf::Color(222,222,222));
			window->draw(shape);
			testbox.Draw(window);
			exitButton.Draw(window);
			window->display();

		}
		testbox.ChangeText("Program gonna loop now soo that's it folks!");
	}
	
//	game.Delete();
	return 0;
}