Message 1 of 4
edit model parameter of imported file
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Just as the title says, Trying to edit the parameter of imported file.
My code seems to work, But if the Model parameter name is already being used it will crash my program
Ptr<FileDialog> fileDialog = ui->createFileDialog();
if (!fileDialog)
return false;
fileDialog->filter("fusion File (*.f3d);;All files (*.*)");
if (fileDialog->showOpen() == adsk::core::DialogResults::DialogOK)
{
std::string filename = fileDialog->filename();
Ptr<Component> rootComp = des->rootComponent();
if (!rootComp)
return false;
Ptr<FusionArchiveImportOptions> archive_options = im->createFusionArchiveImportOptions(filename);
if (!archive_options)
return false;
im->importToTarget(archive_options, rootComp);
size_t importOccurenceCount = rootComp->occurrences()->count();
Ptr<Occurrence> importOccurence = rootComp->occurrences()->item(importOccurenceCount - 1);
if (!importOccurence)
return false;
Ptr<ModelParameters> modelParameters = importOccurence->component()->modelParameters();
if (!modelParameters)
return false;
std::string name = "test_" + std::to_string(importOccurenceCount - 1);
if((importOccurenceCount-1) > 0)
modelParameters->itemByName(name)->value(11);
else
modelParameters->itemByName("test")->value(11);
}
else
ui->messageBox("Canceled file dialog.");