#!/usr/bin/env python

PACKAGE = 'aricc_3d_vision'

from math import pi

from dynamic_reconfigure.parameter_generator_catkin import ParameterGenerator, double_t, int_t, bool_t, str_t

gen = ParameterGenerator()

gen.add("use_pass_through_filter", bool_t, 0, "Set this to TRUE if you want to use passthrough filter", True)
gen.add("ps_field_name", str_t, 0, "The field you want to filte out,x,y,z", "z")
gen.add("ps_limit_min", double_t, 0, "The min limit of passthrough filter", 0.0, -2.0, 2.0)
gen.add("ps_limit_max", double_t, 0, "The max limit of passthrough filter", 0.3, -2.0, 2.0)


gen.add("pp_height_limit_min", double_t, 0, "The min height limit of ExtractPolygonalPrismData", 0.0, -2.0, 2.0)
gen.add("pp_height_limit_max", double_t, 0, "The max height limit of ExtractPolygonalPrismData", 0.0, -2.0, 2.0)

gen.add("use_cloud_radius_filter", bool_t, 0, "Set this to TRUE if you want to use radius filter", False)
gen.add("cr_search_radius", double_t, 0, "The searching radius for radius filter", 0.8, 0.0, 2.0)
gen.add("cr_min_radius", int_t, 0, "The cloud point number threshold for radius filter", 2, 0, 100)

gen.add("use_voxel_grid_filter", bool_t, 0, "Set this to TRUE if you want to use voxel grid filter to downsamle", False)
gen.add("voxel_grid_side", double_t, 0, "The number of voxel grid side", 0.01, 0.0, 1.0)

gen.add("ps_max_iterations", int_t, 0, "The max number of iterations for planar segementation", 100, 1, 1000)
gen.add("ps_dist_threshold", double_t, 0, "The distance threshold for planar segementation", 0.01, 0.0, 1.0)

gen.add("ns_dist_threshold", double_t, 0, "The threshold of distance for normal segementation", 0.02, 0.0, 1.0)
gen.add("ns_dist_weight", double_t, 0, "The distance weight for normal segementation", 0.01, 0.0, 1.0)

gen.add("ece_tolerance", double_t, 0, "The tolerance for euclidean cluster", 0.01, 0.0, 1.0)
gen.add("ece_cluster_min", int_t, 0, "The min number of cluster for euclidean cluster", 100, 0, 100000)
gen.add("ece_cluster_max", int_t, 0, "The max number of cluster for euclidean cluster", 25000, 0, 100000)

exit(gen.generate(PACKAGE, "aricc_3d_vision", "Segmentation"))

a39fe7e16473996faa01485debb561f13a189b71
<mask token>

<mask token>
gen.add('use_pass_through_filter', bool_t, 0,
    'Set this to TRUE if you want to use passthrough filter', True)
gen.add('ps_field_name', str_t, 0, 'The field you want to filte out,x,y,z', 'z'
    )
gen.add('ps_limit_min', double_t, 0, 'The min limit of passthrough filter',
    0.0, -2.0, 2.0)
gen.add('ps_limit_max', double_t, 0, 'The max limit of passthrough filter',
    0.3, -2.0, 2.0)
gen.add('pp_height_limit_min', double_t, 0,
    'The min height limit of ExtractPolygonalPrismData', 0.0, -2.0, 2.0)
gen.add('pp_height_limit_max', double_t, 0,
    'The max height limit of ExtractPolygonalPrismData', 0.0, -2.0, 2.0)
gen.add('use_cloud_radius_filter', bool_t, 0,
    'Set this to TRUE if you want to use radius filter', False)
gen.add('cr_search_radius', double_t, 0,
    'The searching radius for radius filter', 0.8, 0.0, 2.0)
gen.add('cr_min_radius', int_t, 0,
    'The cloud point number threshold for radius filter', 2, 0, 100)
gen.add('use_voxel_grid_filter', bool_t, 0,
    'Set this to TRUE if you want to use voxel grid filter to downsamle', False
    )
gen.add('voxel_grid_side', double_t, 0, 'The number of voxel grid side', 
    0.01, 0.0, 1.0)
gen.add('ps_max_iterations', int_t, 0,
    'The max number of iterations for planar segementation', 100, 1, 1000)
gen.add('ps_dist_threshold', double_t, 0,
    'The distance threshold for planar segementation', 0.01, 0.0, 1.0)
gen.add('ns_dist_threshold', double_t, 0,
    'The threshold of distance for normal segementation', 0.02, 0.0, 1.0)
gen.add('ns_dist_weight', double_t, 0,
    'The distance weight for normal segementation', 0.01, 0.0, 1.0)
gen.add('ece_tolerance', double_t, 0, 'The tolerance for euclidean cluster',
    0.01, 0.0, 1.0)
gen.add('ece_cluster_min', int_t, 0,
    'The min number of cluster for euclidean cluster', 100, 0, 100000)
gen.add('ece_cluster_max', int_t, 0,
    'The max number of cluster for euclidean cluster', 25000, 0, 100000)
exit(gen.generate(PACKAGE, 'aricc_3d_vision', 'Segmentation'))

PACKAGE = 'aricc_3d_vision'
<mask token>
gen = ParameterGenerator()
gen.add('use_pass_through_filter', bool_t, 0,
    'Set this to TRUE if you want to use passthrough filter', True)
gen.add('ps_field_name', str_t, 0, 'The field you want to filte out,x,y,z', 'z'
    )
gen.add('ps_limit_min', double_t, 0, 'The min limit of passthrough filter',
    0.0, -2.0, 2.0)
gen.add('ps_limit_max', double_t, 0, 'The max limit of passthrough filter',
    0.3, -2.0, 2.0)
gen.add('pp_height_limit_min', double_t, 0,
    'The min height limit of ExtractPolygonalPrismData', 0.0, -2.0, 2.0)
gen.add('pp_height_limit_max', double_t, 0,
    'The max height limit of ExtractPolygonalPrismData', 0.0, -2.0, 2.0)
gen.add('use_cloud_radius_filter', bool_t, 0,
    'Set this to TRUE if you want to use radius filter', False)
gen.add('cr_search_radius', double_t, 0,
    'The searching radius for radius filter', 0.8, 0.0, 2.0)
gen.add('cr_min_radius', int_t, 0,
    'The cloud point number threshold for radius filter', 2, 0, 100)
gen.add('use_voxel_grid_filter', bool_t, 0,
    'Set this to TRUE if you want to use voxel grid filter to downsamle', False
    )
gen.add('voxel_grid_side', double_t, 0, 'The number of voxel grid side', 
    0.01, 0.0, 1.0)
gen.add('ps_max_iterations', int_t, 0,
    'The max number of iterations for planar segementation', 100, 1, 1000)
gen.add('ps_dist_threshold', double_t, 0,
    'The distance threshold for planar segementation', 0.01, 0.0, 1.0)
gen.add('ns_dist_threshold', double_t, 0,
    'The threshold of distance for normal segementation', 0.02, 0.0, 1.0)
gen.add('ns_dist_weight', double_t, 0,
    'The distance weight for normal segementation', 0.01, 0.0, 1.0)
gen.add('ece_tolerance', double_t, 0, 'The tolerance for euclidean cluster',
    0.01, 0.0, 1.0)
gen.add('ece_cluster_min', int_t, 0,
    'The min number of cluster for euclidean cluster', 100, 0, 100000)
gen.add('ece_cluster_max', int_t, 0,
    'The max number of cluster for euclidean cluster', 25000, 0, 100000)
exit(gen.generate(PACKAGE, 'aricc_3d_vision', 'Segmentation'))

PACKAGE = 'aricc_3d_vision'
from math import pi
from dynamic_reconfigure.parameter_generator_catkin import ParameterGenerator, double_t, int_t, bool_t, str_t
gen = ParameterGenerator()
gen.add('use_pass_through_filter', bool_t, 0,
    'Set this to TRUE if you want to use passthrough filter', True)
gen.add('ps_field_name', str_t, 0, 'The field you want to filte out,x,y,z', 'z'
    )
gen.add('ps_limit_min', double_t, 0, 'The min limit of passthrough filter',
    0.0, -2.0, 2.0)
gen.add('ps_limit_max', double_t, 0, 'The max limit of passthrough filter',
    0.3, -2.0, 2.0)
gen.add('pp_height_limit_min', double_t, 0,
    'The min height limit of ExtractPolygonalPrismData', 0.0, -2.0, 2.0)
gen.add('pp_height_limit_max', double_t, 0,
    'The max height limit of ExtractPolygonalPrismData', 0.0, -2.0, 2.0)
gen.add('use_cloud_radius_filter', bool_t, 0,
    'Set this to TRUE if you want to use radius filter', False)
gen.add('cr_search_radius', double_t, 0,
    'The searching radius for radius filter', 0.8, 0.0, 2.0)
gen.add('cr_min_radius', int_t, 0,
    'The cloud point number threshold for radius filter', 2, 0, 100)
gen.add('use_voxel_grid_filter', bool_t, 0,
    'Set this to TRUE if you want to use voxel grid filter to downsamle', False
    )
gen.add('voxel_grid_side', double_t, 0, 'The number of voxel grid side', 
    0.01, 0.0, 1.0)
gen.add('ps_max_iterations', int_t, 0,
    'The max number of iterations for planar segementation', 100, 1, 1000)
gen.add('ps_dist_threshold', double_t, 0,
    'The distance threshold for planar segementation', 0.01, 0.0, 1.0)
gen.add('ns_dist_threshold', double_t, 0,
    'The threshold of distance for normal segementation', 0.02, 0.0, 1.0)
gen.add('ns_dist_weight', double_t, 0,
    'The distance weight for normal segementation', 0.01, 0.0, 1.0)
gen.add('ece_tolerance', double_t, 0, 'The tolerance for euclidean cluster',
    0.01, 0.0, 1.0)
gen.add('ece_cluster_min', int_t, 0,
    'The min number of cluster for euclidean cluster', 100, 0, 100000)
gen.add('ece_cluster_max', int_t, 0,
    'The max number of cluster for euclidean cluster', 25000, 0, 100000)
exit(gen.generate(PACKAGE, 'aricc_3d_vision', 'Segmentation'))

#!/usr/bin/env python

PACKAGE = 'aricc_3d_vision'

from math import pi

from dynamic_reconfigure.parameter_generator_catkin import ParameterGenerator, double_t, int_t, bool_t, str_t

gen = ParameterGenerator()

gen.add("use_pass_through_filter", bool_t, 0, "Set this to TRUE if you want to use passthrough filter", True)
gen.add("ps_field_name", str_t, 0, "The field you want to filte out,x,y,z", "z")
gen.add("ps_limit_min", double_t, 0, "The min limit of passthrough filter", 0.0, -2.0, 2.0)
gen.add("ps_limit_max", double_t, 0, "The max limit of passthrough filter", 0.3, -2.0, 2.0)


gen.add("pp_height_limit_min", double_t, 0, "The min height limit of ExtractPolygonalPrismData", 0.0, -2.0, 2.0)
gen.add("pp_height_limit_max", double_t, 0, "The max height limit of ExtractPolygonalPrismData", 0.0, -2.0, 2.0)

gen.add("use_cloud_radius_filter", bool_t, 0, "Set this to TRUE if you want to use radius filter", False)
gen.add("cr_search_radius", double_t, 0, "The searching radius for radius filter", 0.8, 0.0, 2.0)
gen.add("cr_min_radius", int_t, 0, "The cloud point number threshold for radius filter", 2, 0, 100)

gen.add("use_voxel_grid_filter", bool_t, 0, "Set this to TRUE if you want to use voxel grid filter to downsamle", False)
gen.add("voxel_grid_side", double_t, 0, "The number of voxel grid side", 0.01, 0.0, 1.0)

gen.add("ps_max_iterations", int_t, 0, "The max number of iterations for planar segementation", 100, 1, 1000)
gen.add("ps_dist_threshold", double_t, 0, "The distance threshold for planar segementation", 0.01, 0.0, 1.0)

gen.add("ns_dist_threshold", double_t, 0, "The threshold of distance for normal segementation", 0.02, 0.0, 1.0)
gen.add("ns_dist_weight", double_t, 0, "The distance weight for normal segementation", 0.01, 0.0, 1.0)

gen.add("ece_tolerance", double_t, 0, "The tolerance for euclidean cluster", 0.01, 0.0, 1.0)
gen.add("ece_cluster_min", int_t, 0, "The min number of cluster for euclidean cluster", 100, 0, 100000)
gen.add("ece_cluster_max", int_t, 0, "The max number of cluster for euclidean cluster", 25000, 0, 100000)

exit(gen.generate(PACKAGE, "aricc_3d_vision", "Segmentation"))
