2#include <NDEVR/NDEVRChart.h>
4#include <NDEVR/Deployment.h>
5#include <NDEVR/SnapLocation.h>
12 class TopDownDeploymentChart :
public NDEVRRadialChart
15 TopDownDeploymentChart(QWidget* parent =
nullptr);
16 void updateData(
const Buffer<Deployment>& deployments,
bool align_with_hole);
17 void updateData(
const Buffer<Deployment>& deployments,
const Matrix<fltp08>& transform);
19 void addDeployment(
const Deployment& deployment,
const TranslatedString& point_names,
const Matrix<fltp08>& transform, QPen pen);
21 Buffer<UUID> m_deployment_ids;
26 class SideViewDeploymentChart :
public NDEVRChart
30 explicit SideViewDeploymentChart(QWidget* parent =
nullptr);
31 void updateData(
const Buffer<Deployment>& deployments, SnapLocation snap_location);
32 void updateData(
const Buffer<Deployment>& deployments,
const Matrix<fltp08>& transform);
33 void setLockedAxes(
bool locked_axes);
34 bool hasLockedAxes()
const;
36 void onDeploymentClickedSignal(
const UUID& deployment, uint04 segment_index);
37 void onDeploymentHoveredSignal(
const UUID& deployment, uint04 segment_index,
bool hovered);
39 void clickedSlot(
const PlotData& plot_data, Vertex<3, fltp08> vertex);
40 void hoveredSlot(
const PlotData& plot_data, Vertex<3, fltp08> vertex,
bool hovered);
42 void drawOriginAxis(fltp08 size);
43 void addDeployment(
const Deployment& deployment,
const String& point_names,
const Matrix<fltp08>& transform, QPen pen);
45 QValueAxis* m_bot_axis;
46 QValueAxis* m_left_axis;
47 Buffer<UUID> m_deployment_ids;
48 bool m_is_updating_chart =
false;