00001 00012 // RAIL Segmentation 00013 #include "rail_segmentation/SegmentationZone.h" 00014 00015 // C++ Standard Library 00016 #include <limits> 00017 00018 using namespace std; 00019 using namespace rail::segmentation; 00020 00021 SegmentationZone::SegmentationZone(const string &name, const string &parent_frame_id, const string &child_frame_id, 00022 const string &bounding_frame_id, const string &segmentation_frame_id) 00023 : name_(name), parent_frame_id_(parent_frame_id), child_frame_id_(child_frame_id), 00024 bounding_frame_id_(bounding_frame_id), segmentation_frame_id_(segmentation_frame_id) 00025 { 00026 // default remove surface 00027 remove_surface_ = true; 00028 00029 // set default limits 00030 roll_min_ = -numeric_limits<double>::infinity(); 00031 pitch_min_ = -numeric_limits<double>::infinity(); 00032 yaw_min_ = -numeric_limits<double>::infinity(); 00033 x_min_ = -numeric_limits<double>::infinity(); 00034 y_min_ = -numeric_limits<double>::infinity(); 00035 z_min_ = -numeric_limits<double>::infinity(); 00036 00037 roll_max_ = numeric_limits<double>::infinity(); 00038 pitch_max_ = numeric_limits<double>::infinity(); 00039 yaw_max_ = numeric_limits<double>::infinity(); 00040 x_max_ = numeric_limits<double>::infinity(); 00041 y_max_ = numeric_limits<double>::infinity(); 00042 z_max_ = numeric_limits<double>::infinity(); 00043 } 00044 00045 void SegmentationZone::setRemoveSurface(const bool remove_surface) 00046 { 00047 remove_surface_ = remove_surface; 00048 } 00049 00050 bool SegmentationZone::getRemoveSurface() const 00051 { 00052 return remove_surface_; 00053 } 00054 00055 void SegmentationZone::setName(const string &name) 00056 { 00057 name_ = name; 00058 } 00059 00060 const string &SegmentationZone::getName() const 00061 { 00062 return name_; 00063 } 00064 00065 void SegmentationZone::setParentFrameID(const string &parent_frame_id) 00066 { 00067 parent_frame_id_ = parent_frame_id; 00068 } 00069 00070 const string &SegmentationZone::getParentFrameID() const 00071 { 00072 return parent_frame_id_; 00073 } 00074 00075 void SegmentationZone::setChildFrameID(const string &child_frame_id) 00076 { 00077 child_frame_id_ = child_frame_id; 00078 } 00079 00080 const string &SegmentationZone::getChildFrameID() const 00081 { 00082 return child_frame_id_; 00083 } 00084 00085 void SegmentationZone::setSegmentationFrameID(const string &segmentation_frame_id) 00086 { 00087 segmentation_frame_id_ = segmentation_frame_id; 00088 } 00089 00090 const string &SegmentationZone::getSegmentationFrameID() const 00091 { 00092 return segmentation_frame_id_; 00093 } 00094 00095 void SegmentationZone::setBoundingFrameID(const string &bounding_frame_id) 00096 { 00097 bounding_frame_id_ = bounding_frame_id; 00098 } 00099 00100 const string &SegmentationZone::getBoundingFrameID() const 00101 { 00102 return bounding_frame_id_; 00103 } 00104 00105 void SegmentationZone::setRollMin(const double roll_min) 00106 { 00107 roll_min_ = roll_min; 00108 } 00109 00110 double SegmentationZone::getRollMin() const 00111 { 00112 return roll_min_; 00113 } 00114 00115 void SegmentationZone::setRollMax(const double roll_max) 00116 { 00117 roll_max_ = roll_max; 00118 } 00119 00120 double SegmentationZone::getRollMax() const 00121 { 00122 return roll_max_; 00123 } 00124 00125 void SegmentationZone::setPitchMin(const double pitch_min) 00126 { 00127 pitch_min_ = pitch_min; 00128 } 00129 00130 double SegmentationZone::getPitchMin() const 00131 { 00132 return pitch_min_; 00133 } 00134 00135 void SegmentationZone::setPitchMax(const double pitch_max) 00136 { 00137 pitch_max_ = pitch_max; 00138 } 00139 00140 double SegmentationZone::getPitchMax() const 00141 { 00142 return pitch_max_; 00143 } 00144 00145 void SegmentationZone::setYawMin(const double yaw_min) 00146 { 00147 yaw_min_ = yaw_min; 00148 } 00149 00150 double SegmentationZone::getYawMin() const 00151 { 00152 return yaw_min_; 00153 } 00154 00155 void SegmentationZone::setYawMax(const double yaw_max) 00156 { 00157 yaw_max_ = yaw_max; 00158 } 00159 00160 double SegmentationZone::getYawMax() const 00161 { 00162 return yaw_max_; 00163 } 00164 00165 00166 void SegmentationZone::setXMin(const double x_min) 00167 { 00168 x_min_ = x_min; 00169 } 00170 00171 double SegmentationZone::getXMin() const 00172 { 00173 return x_min_; 00174 } 00175 00176 void SegmentationZone::setXMax(const double x_max) 00177 { 00178 x_max_ = x_max; 00179 } 00180 00181 double SegmentationZone::getXMax() const 00182 { 00183 return x_max_; 00184 } 00185 00186 void SegmentationZone::setYMin(const double y_min) 00187 { 00188 y_min_ = y_min; 00189 } 00190 00191 double SegmentationZone::getYMin() const 00192 { 00193 return y_min_; 00194 } 00195 00196 void SegmentationZone::setYMax(const double y_max) 00197 { 00198 y_max_ = y_max; 00199 } 00200 00201 double SegmentationZone::getYMax() const 00202 { 00203 return y_max_; 00204 } 00205 00206 void SegmentationZone::setZMin(const double z_min) 00207 { 00208 z_min_ = z_min; 00209 } 00210 00211 double SegmentationZone::getZMin() const 00212 { 00213 return z_min_; 00214 } 00215 00216 void SegmentationZone::setZMax(const double z_max) 00217 { 00218 z_max_ = z_max; 00219 } 00220 00221 double SegmentationZone::getZMax() const 00222 { 00223 return z_max_; 00224 }