TerraForge3D  2.3.1
3D Terrain And Landscape Generator
MaxMeshCoordinatesNode.cpp
1#include "Generators/CPUNodeEditor/Nodes/MaxMeshCoordinatesNode.h"
2#include "Generators/CPUNodeEditor/CPUNodeEditor.h"
3
4#include <iostream>
5
6NodeOutput MaxMeshCoordinatesNode::Evaluate(NodeInputParam input, NodeEditorPin *pin)
7{
8 int id = pin->id;
9
10 if (outputPins[0]->id == id)
11 return NodeOutput({input.maxX});
12 else if (outputPins[1]->id == id)
13 return NodeOutput({ input.maxY});
14 else if (outputPins[2]->id == id)
15 return NodeOutput({ input.maxZ});
16 return NodeOutput();
17}
18
19void MaxMeshCoordinatesNode::Load(nlohmann::json data)
20{
21}
22
23nlohmann::json MaxMeshCoordinatesNode::Save()
24{
25 nlohmann::json data;
26 data["type"] = MeshNodeEditor::MeshNodeType::MaxMeshCoordinates;
27 return data;
28}
29
30void MaxMeshCoordinatesNode::OnRender()
31{
32 DrawHeader("Maximum Mesh Coordinates");
33 ImGui::Dummy(ImVec2(150, 10));
34 ImGui::SameLine();
35 ImGui::Text("Max X");
36 outputPins[0]->Render();
37 ImGui::Dummy(ImVec2(150, 10));
38 ImGui::SameLine();
39 ImGui::Text("Max Y");
40 outputPins[1]->Render();
41 ImGui::Dummy(ImVec2(150, 10));
42 ImGui::SameLine();
43 ImGui::Text("Max Z");
44 outputPins[2]->Render();
45}
46
47MaxMeshCoordinatesNode::MaxMeshCoordinatesNode()
48{
49 headerColor = ImColor(VALUE_NODE_COLOR);
50 outputPins.push_back(new NodeEditorPin(NodeEditorPinType::Output));
51 outputPins.push_back(new NodeEditorPin(NodeEditorPinType::Output));
52 outputPins.push_back(new NodeEditorPin(NodeEditorPinType::Output));
53}
a class to store JSON values
Definition: json.hpp:17860