本文整理汇总了C++中Workspace::load方法的典型用法代码示例。如果您正苦于以下问题:C++ Workspace::load方法的具体用法?C++ Workspace::load怎么用?C++ Workspace::load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Workspace
的用法示例。
在下文中一共展示了Workspace::load方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char* argv[]) {
// init both Qt and Voreen application (does not require OpenGL context)
QApplication myapp(argc, argv);
VoreenApplicationQt vapp("simple-qt", "Simple-Qt", description, argc, argv,
VoreenApplication::ApplicationFeatures(VoreenApplication::APP_ALL &~ VoreenApplication::APP_PROCESSOR_WIDGETS));
vapp.initialize();
// create the mainwindow and assign a canvas to it as central widget
QMainWindow* mainwindow = new QMainWindow();
mainwindow->setWindowTitle("Voreen - The Volume Rendering Engine (Simple-Qt)");
VoreenApplicationQt::qtApp()->setMainWindow(mainwindow);
tgt::QtCanvas* canvas = new tgt::QtCanvas();
mainwindow->setCentralWidget(canvas);
mainwindow->resize(512, 512);
mainwindow->show();
// must be called *after* a OpenGL context has been created (canvas)
// and *before* any further OpenGL access
vapp.initializeGL();
// load workspace from disc
Workspace* workspace = new Workspace();
try {
workspace->load(VoreenApplication::app()->getResourcePath("/workspaces/standard.vws"));
}
catch (SerializationException& e) {
QMessageBox::critical(mainwindow, "Loading Workspace Failed", QString::fromStdString(e.what()));
return EXIT_FAILURE;
}
// initialize the network evaluator and retrieve the CanvasRenderer processor from the loaded network
NetworkEvaluator* networkEvaluator = new NetworkEvaluator();
vapp.registerNetworkEvaluator(networkEvaluator);
ProcessorNetwork* network = workspace->getProcessorNetwork();
std::vector<CanvasRenderer*> canvasRenderer = network->getProcessorsByType<CanvasRenderer>();
if (canvasRenderer.empty()) {
QMessageBox::critical(mainwindow, "Invalid Workspace", "Loaded workspace does not contain a CanvasRenderer.");
return EXIT_FAILURE;
}
// init painter and connect it to canvas, evaluator and canvas renderer
VoreenPainter* painter = new VoreenPainter(canvas, networkEvaluator, canvasRenderer[0]);
canvas->setPainter(painter);
canvasRenderer[0]->setCanvas(canvas);
// pass the network to the network evaluator, which also initializes the processors
networkEvaluator->setProcessorNetwork(network);
// start the event process; the program runs as long as theres no exit-event
myapp.exec();
// we're done as soon as myapp.exec() returns, so we can delete everything
delete painter;
delete workspace;
delete networkEvaluator;
delete mainwindow;
vapp.deinitializeGL();
vapp.deinitialize();
return 0;
}