Как правильно втянуть сюжет Implots в узел редактора Imgui?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как правильно втянуть сюжет Implots в узел редактора Imgui?

Сообщение Anonymous »

Я работаю над проектом, который использует узлы и сюжеты. Я решил использовать imgui вместе с Implots и imgui-node-editor. > https://github.com/epezent/implot
https://github.com/thedmd/imgui-node-editor
Я хочу иметь возможность встроить участок IMPOT в узел Imgui-Node-Editor < /p>
Предполагая, что все настроено правильно, что это. < /p>
ax::NodeEditor::BeginNode(1);
if (ImPlot::BeginPlot("BlankPlot")) {
ImPlot::EndPlot();
}
ax::NodeEditor::EndNode();
< /code>
(пример, не моя фактическая реализация.) Нарисует за пределами границ узла < /p>

Что касается моей конкретной реализации: (я включаю это, потому что я не уверен, если это имеет значение или нет) < /p>
editor.cpp (выдержка из цикла Draw) < /p>
// Loop through all nodes in Nodes::nodes
for (auto it = Nodes::nodes.begin(); it != Nodes::nodes.end(); ) {
// Get node
Nodes::BaseNode* node = it->get();
// Begin drawing Node
ax::NodeEditor::BeginNode(node->GetNodeID()); // Begins Node, sets ID from node's GetNodeID (See BaseNode.h and BaseNode.cpp)
node->Draw(); // Draws node (Defined for every class inheriting from BaseNode)
if (!node->IsOpen()) { // Checks if node should still be open (See BaseNode.h and BaseNode.cpp)
it = Nodes::nodes.erase(it); // If node should be closed, remove it from Nodes::nodes
} else {
++it; // Else, keep chugging along
}
ax::NodeEditor::EndNode();
}
< /code>
scopenode.cpp
void Oscil::Nodes::ScopeNode::Draw() {
ImGui::Text("Node A");
ax::NodeEditor::BeginPin(Nodes::GetConnectionID(GetNodeID(), 1), ax::NodeEditor::PinKind::Input);
ImGui::Text("-> In");
ax::NodeEditor::EndPin();

if (ImPlot::BeginPlot("OscilloscopePlot")) {
//ImPlot::PlotLine("Line1", {1, 2, 3, 4, 5, 6, 6});
ImPlot::EndPlot();
}
}


Подробнее здесь: https://stackoverflow.com/questions/794 ... ditor-node
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»