Serialization
Armatura persists projects in a folder ending with .armatura.
Expected layout
MyProject.armatura/
project.json
models/
Frame_A.json
Roof_B.json
results/
Frame_A_G.json
Frame_A_W_+X.json
Save and load
project.Save("./MyProject.armatura");
project.SaveAs("./MyProject_Copy.armatura");
var loaded = ArmaturaProject.Load("./MyProject.armatura");
Save a single model
model.Save() works only after project path is known (project was saved/loaded):
project.Save("./MyProject.armatura");
model.Save();
Result file management
ProjectSerializer.SaveResult("./MyProject.armatura", model.Name, loadCase.Name, analysisResult);
ProjectSerializer.ClearResults("./MyProject.armatura");
ProjectSerializer.RemoveModel(project, "Frame A", "./MyProject.armatura");
Behavior notes
- JSON uses camelCase + indentation.
- Model/result filenames are sanitized.
- Loaded results are linked back to model/scenario names.
- Result staleness is tracked in
project.jsonvia timestamps.