28 #ifndef RTABMAP_APP_H_ 29 #define RTABMAP_APP_H_ 45 #include <boost/thread/mutex.hpp> 46 #include <pcl/pcl_base.h> 47 #include <pcl/TextureMesh.h> 55 RTABMapApp(JNIEnv* env, jobject caller_activity);
59 void(*progressCallback)(
void *,
int,
int),
60 void(*initCallback)(
void *,
int,
const char*),
61 void(*statsUpdatedCallback)(
void *,
64 int,
int,
int,
int,
int ,
int,
69 float,
float,
float,
float,
71 float,
float,
float,
float,
float,
float));
78 int openDatabase(
const std::string & databasePath,
bool databaseInMemory,
bool optimize,
bool clearDatabase);
82 bool startCamera(JNIEnv* env, jobject iBinder, jobject context, jobject activity,
int driver);
113 float x0,
float y0,
float x1,
float y1);
155 void save(
const std::string & databasePath);
156 bool recover(
const std::string & from,
const std::string & to);
159 float cloudVoxelSize,
160 bool regenerateCloud,
166 float optimizedVoxelSize,
168 int optimizedMaxPolygons,
169 float optimizedColorRadius,
170 bool optimizedCleanWhitePolygons,
171 int optimizedMinClusterSize,
172 float optimizedMaxTextureDistance,
173 int optimizedMinTextureClusterSize,
174 bool blockRendering);
180 float x,
float y,
float z,
float qx,
float qy,
float qz,
float qw,
double stamp);
184 float rgb_fx,
float rgb_fy,
float rgb_cx,
float rgb_cy,
185 float depth_fx,
float depth_fy,
float depth_cx,
float depth_cy,
190 const void * yPlane,
const void * uPlane,
const void * vPlane,
int yPlaneLen,
int rgbWidth,
int rgbHeight,
int rgbFormat,
191 const void * depth,
int depthLen,
int depthWidth,
int depthHeight,
int depthFormat,
192 const void * conf,
int confLen,
int confWidth,
int confHeight,
int confFormat,
193 const float * points,
int pointsLen,
int pointsChannels,
195 float p00,
float p11,
float p02,
float p12,
float p22,
float p32,
float p23,
196 float t0,
float t1,
float t2,
float t3,
float t4,
float t5,
float t6,
float t7);
206 std::vector<pcl::Vertices>
filterOrganizedPolygons(
const std::vector<pcl::Vertices> & polygons,
int cloudSize)
const;
207 std::vector<pcl::Vertices>
filterPolygons(
const std::vector<pcl::Vertices> & polygons,
int cloudSize)
const;
291 std::pair<rtabmap::RtabmapEventInit::Status, std::string>
status_;
301 int, int, int, int, int ,int,
306 float, float, float, float,
308 float, float, float, float, float, float);
313 #endif // TANGO_POINT_CLOUD_POINT_CLOUD_APP_H_
void save(const std::string &databasePath)
void(* swiftInitCallback)(void *, int, const char *)
void OnTouchEvent(int touch_count, tango_gl::GestureCamera::TouchEvent event, float x0, float y0, float x1, float y1)
void setCameraColor(bool enabled)
void setMaxGainRadius(float value)
void setWireframe(bool enabled)
void setAppendMode(bool enabled)
bool isBuiltWith(int cameraDriver) const
rtabmap::LogHandler * logHandler_
int setMappingParameter(const std::string &key, const std::string &value)
void SetViewPort(int width, int height)
double lastPoseEventTime_
void setSmoothing(bool enabled)
int lastDrawnCloudsCount_
void setGraphOptimization(bool enabled)
void setGraphVisible(bool visible)
rtabmap::ParametersMap getRtabmapParameters()
void setDepthFromMotion(bool enabled)
void postOdometryEvent(rtabmap::Transform pose, float rgb_fx, float rgb_fy, float rgb_cx, float rgb_cy, float depth_fx, float depth_fy, float depth_cx, float depth_cy, const rtabmap::Transform &rgbFrame, const rtabmap::Transform &depthFrame, double stamp, double depthStamp, const void *yPlane, const void *uPlane, const void *vPlane, int yPlaneLen, int rgbWidth, int rgbHeight, int rgbFormat, const void *depth, int depthLen, int depthWidth, int depthHeight, int depthFormat, const void *conf, int confLen, int confWidth, int confHeight, int confFormat, const float *points, int pointsLen, int pointsChannels, const rtabmap::Transform &viewMatrix, float p00, float p11, float p02, float p12, float p22, float p32, float p23, float t0, float t1, float t2, float t3, float t4, float t5, float t6, float t7)
std::map< std::string, std::string > ParametersMap
GLM_FUNC_DECL T angle(detail::tquat< T, P > const &x)
std::map< std::string, float > bufferedStatsData_
std::map< double, rtabmap::Transform > poseBuffer_
std::list< rtabmap::RtabmapEvent * > rtabmapEvents_
void setCloudDensityLevel(int value)
void InitializeGLContent()
int postProcessing(int approach)
pcl::TextureMesh::Ptr optMesh_
void setRenderingTextureDecimation(int value)
void setClusterRatio(float value)
void setOrthoCropFactor(float value)
int openDatabase(const std::string &databasePath, bool databaseInMemory, bool optimize, bool clearDatabase)
void setGPS(const rtabmap::GPS &gps)
void setPointSize(float value)
bool filterPolygonsOnNextRender_
bool takeScreenshotOnNextRender_
boost::mutex rtabmapMutex_
bool clearSceneOnNextRender_
void setTrajectoryMode(bool enabled)
virtual bool handleEvent(UEvent *event)
std::map< int, rtabmap::Transform > rawPoses_
void setMaxCloudDepth(float value)
void setGridRotation(float value)
int renderingTextureDecimation_
void setBackfaceCulling(bool enabled)
void setRawScanSaved(bool enabled)
void SetCameraType(tango_gl::GestureCamera::CameraType camera_type)
float meshDecimationFactor_
int gainCompensationOnNextRender_
void setupSwiftCallbacks(void *classPtr, void(*progressCallback)(void *, int, int), void(*initCallback)(void *, int, const char *), void(*statsUpdatedCallback)(void *, int, int, int, int, float, int, int, int, int, int, int, float, int, float, int, float, float, float, float, int, int, float, float, float, float, float, float))
bool postExportation(bool visualize)
void setBackgroundColor(float gray)
void setMeshRendering(bool enabled, bool withTexture)
void setNodesFiltering(bool enabled)
boost::mutex meshesMutex_
double lastPostRenderEventTime_
void setMapCloudShown(bool shown)
bool recover(const std::string &from, const std::string &to)
rtabmap::RtabmapThread * rtabmapThread_
boost::mutex cameraMutex_
void setMeshDecimationFactor(float value)
int updateMeshDecimation(int width, int height)
void setMinCloudDepth(float value)
rtabmap::Transform mapToOdom_
std::pair< rtabmap::RtabmapEventInit::Status, std::string > status_
void setOnlineBlending(bool enabled)
bool exportedMeshUpdated_
std::map< int, rtabmap::Mesh > createdMeshes_
void gainCompensation(bool full=false)
void setDataRecorderMode(bool enabled)
std::vector< pcl::Vertices > filterPolygons(const std::vector< pcl::Vertices > &polygons, int cloudSize) const
bool writeExportedMesh(const std::string &directory, const std::string &name)
bool cameraJustInitialized_
boost::mutex renderingMutex_
void setDepthConfidence(int value)
void setMeshTriangleSize(int value)
void setGridVisible(bool visible)
bool exportMesh(float cloudVoxelSize, bool regenerateCloud, bool meshing, int textureSize, int textureCount, int normalK, bool optimized, float optimizedVoxelSize, int optimizedDepth, int optimizedMaxPolygons, float optimizedColorRadius, bool optimizedCleanWhitePolygons, int optimizedMinClusterSize, float optimizedMaxTextureDistance, int optimizedMinTextureClusterSize, bool blockRendering)
float meshAngleToleranceDeg_
void postCameraPoseEvent(float x, float y, float z, float qx, float qy, float qz, float qw, double stamp)
std::list< rtabmap::Transform > poseEvents_
bool smoothMesh(int id, rtabmap::Mesh &mesh)
USemaphore screenshotReady_
void setFullResolution(bool enabled)
void setMeshAngleTolerance(float value)
std::list< rtabmap::OdometryEvent > odomEvents_
void addEnvSensor(int type, float value)
void(* swiftStatsUpdatedCallback)(void *, int, int, int, int, float, int, int, int, int, int, int, float, int, float, int, float, float, float, float, int, int, float, float, float, float, float, float)
void setScreenRotation(int displayRotation, int cameraRotation)
std::vector< pcl::Vertices > filterOrganizedPolygons(const std::vector< pcl::Vertices > &polygons, int cloudSize) const
rtabmap::Rtabmap * rtabmap_
bool bilateralFilteringOnNextRender_
rtabmap::ParametersMap mappingParameters_
rtabmap::ProgressionStatus progressionStatus_
void setLighting(bool enabled)
rtabmap::CameraMobile * camera_
rtabmap::Transform * optRefPose_
void setPausedMapping(bool paused)
void setOdomCloudShown(bool shown)
void setLocalizationMode(bool enabled)