#ifndef VTKBASE_SPAWNPOINTCALLBACK_H #define VTKBASE_SPAWNPOINTCALLBACK_H #include #include #include #include #include #include #include "../advection/UVGrid.h" class SpawnPointCallback : public vtkCallbackCommand { public: static SpawnPointCallback *New(); SpawnPointCallback(); void setPoints(const vtkSmartPointer &points); void setData(const vtkSmartPointer &data); void setRen(const vtkSmartPointer &ren); void setUVGrid(const std::shared_ptr &uvGrid); private: vtkSmartPointer data; vtkSmartPointer points; vtkSmartPointer ren; std::shared_ptr uvGrid; vtkSmartPointer inverseCartographicProjection; void Execute(vtkObject *caller, unsigned long evId, void *callData) override; bool dragging = false; }; #endif //VTKBASE_SPAWNPOINTCALLBACK_H