TerraForge3D  2.3.1
3D Terrain And Landscape Generator

◆ Load()

void NodeEditor::Load ( nlohmann::json  data)

Definition at line 338 of file NodeEditor.cpp.

339{
340 if (!config.insNodeFunc)
341 {
342 throw std::runtime_error("Node Instantiate Function Not Found!");
343 }
344
345 Reset();
346 SeUIDSeed(data["uidSeed"]);
347
348 for (nlohmann::json ndata : data["nodes"])
349 {
350 NodeEditorNode *nd = (config.insNodeFunc(ndata));
351 nd->LoadInternal(ndata);
352 AddNode(nd);
353 }
354
355 for (nlohmann::json ldata : data["links"])
356 {
357 NodeEditorLink *lnk = new NodeEditorLink();
358 lnk->Load(ldata);
359 ImGuiNodeEditor::PinId fromId, toId;
360 fromId = (int)ldata["from"];
361 toId = (int)ldata["to"];
362 lnk->from = pins[fromId.Get()];
363 lnk->to = pins[toId.Get()];
364 lnk->from->Link(lnk);
365 lnk->to->Link(lnk);
366 links[lnk->_id.Get()] = lnk;
367 }
368}
Definition: AddNode.h:7
a class to store JSON values
Definition: json.hpp:17860