You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
set(MUJINCLIENT_LIBRARY_SUFFIX "${MUJINCLIENT_SOVERSION}-${MSVC_PREFIX}-mt"CACHESTRING"Suffix to append to library names")
124
-
129
+
125
130
# install all DLLs
126
131
install(DIRECTORY"${CMAKE_CURRENT_SOURCE_DIR}/msvc_binaries/${MUJINCLIENT_TARGET_PROCESSOR}/${MSVC_PREFIX}/bin/"DESTINATION bin FILES_MATCHINGPATTERN"*.dll")
127
132
@@ -253,7 +258,7 @@ endif()
253
258
254
259
255
260
if( CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )
Copy file name to clipboardExpand all lines: include/mujincontrollerclient/binpickingtask.h
+60-59Lines changed: 60 additions & 59 deletions
Original file line number
Diff line number
Diff line change
@@ -28,8 +28,8 @@ namespace mujinclient {
28
28
/// Margins of the container to be cropped (or enlarged if negative), in order to define 3D container region under (calibration & shape) uncertainty - for pointcloud processing.
29
29
structCropContainerMarginsXYZXYZ
30
30
{
31
-
double minMargins[3]; ///< XYZ of how much to crop from min margins (value > 0 means crop inside)
32
-
double maxMargins[3]; ///< XYZ of how much to crop from min margins (value > 0 means crop inside)
31
+
double minMargins[3] = {0, 0, 0}; ///< XYZ of how much to crop from min margins (value > 0 means crop inside)
32
+
double maxMargins[3] = {0, 0, 0}; ///< XYZ of how much to crop from min margins (value > 0 means crop inside)
int numLeftInOrder = -1; ///< -1 if not initiaized
187
+
int numLeftInSupply = -1; ///< -1 if not initiaized
188
+
int placedInDest = -1; ///< -1 if not initiaized
188
189
std::string cycleIndex; ///< index of the published cycle that pickworker is currently executing
189
190
190
191
/**
@@ -206,32 +207,34 @@ class MUJINCLIENT_API BinPickingTaskResource : public TaskResource
206
207
structMinViableRegionInfo
207
208
{
208
209
MinViableRegionInfo();
209
-
std::array<double, 2> size2D; ///< width and length on the MVR
210
-
std::array<double, 3> maxPossibleSize; ///< the max possible size of actual item
211
-
std::array<double, 3> maxPossibleSizeOriginal; ///< the maxPossibleSize that has originally been given from vision
212
-
uint8_t cornerMaskOriginal; ///< the cornerMask that has originally been given from vision
213
-
uint8_t cornerMask; ///< Represents the corner(s) used for corner based detection. 4 bit. -x-y = 1, +x-y = 2, -x+y = 4, +x+y = 8
210
+
std::array<double, 2> size2D = {0, 0}; ///< width and length on the MVR
211
+
std::array<double, 3> maxPossibleSize = {0, 0, 0}; ///< the max possible size of actual item
212
+
std::array<double, 3> maxPossibleSizeOriginal = {0, 0, 0}; ///< the maxPossibleSize that has originally been given from vision
213
+
uint8_t cornerMaskOriginal = 0; ///< the cornerMask that has originally been given from vision
214
+
uint8_t cornerMask = 0; ///< Represents the corner(s) used for corner based detection. 4 bit. -x-y = 1, +x-y = 2, -x+y = 4, +x+y = 8
214
215
} minViableRegion;
215
216
216
217
std::string locationName; ///< The name of the location where the minViableRegion was triggered for
217
-
std::array<double, 3> translation; ///< Translation of the 2D MVR plane (height = 0)
218
-
std::array<double, 4> quaternion; ///< Rotation of the 2D MVR plane (height = 0)
219
-
double objectWeight; ///< If non-zero, use this weight fo registration. unit is kg. zero means unknown.
218
+
std::array<double, 3> translation = {0, 0, 0}; ///< Translation of the 2D MVR plane (height = 0)
219
+
std::array<double, 4> quaternion = {1, 0, 0, 0}; ///< Rotation of the 2D MVR plane (height = 0)
220
+
double objectWeight = 0; ///< If non-zero, use this weight fo registration. unit is kg. zero means unknown.
220
221
std::string objectType; ///< The type of the object
221
-
uint64_t sensorTimeStampMS; ///< Same as DetectedObject's timestamp sent to planning
222
-
double robotDepartStopTimestamp; ///< Force capture after robot stops
223
-
std::array<double, 3> liftedWorldOffset; ///< [dx, dy, dz], mm in world frame
224
-
std::array<double, 3> maxCandidateSize; ///< the max candidate size expecting
225
-
std::array<double, 3> minCandidateSize; ///< the min candidate size expecting
226
-
double transferSpeedPostMult; ///< transfer speed multiplication factor
222
+
uint64_t sensorTimeStampMS = 0; ///< Same as DetectedObject's timestamp sent to planning
223
+
double robotDepartStopTimestamp = 0; ///< Force capture after robot stops
224
+
std::array<double, 3> liftedWorldOffset = {0, 0, 0}; ///< [dx, dy, dz], mm in world frame
225
+
std::array<double, 3> maxCandidateSize = {0, 0, 0}; ///< the max candidate size expecting
226
+
std::array<double, 3> minCandidateSize = {0, 0, 0}; ///< the min candidate size expecting
227
+
double transferSpeedPostMult = 0; ///< transfer speed multiplication factor
228
+
rapidjson::Document targetTemplateSceneData; ///< targetTemplateSceneData (a openrave scene that is used as a template for the target object)
227
229
rapidjson::Document graspModelInfo; ///< Parameters used for grasping model generation for the object
228
-
double minCornerVisibleDist; ///< how much distance along with uncertain edge from uncertain corner robot exposes to camera
229
-
double minCornerVisibleInsideDist; ///< how much distance inside MVR robot exposes to camera
230
-
double maxCornerAngleDeviation; ///< how much angle deviation around uncertain corner is considered to expose to camera
231
-
uint8_t occlusionFreeCornerMask; ///< mask of corners that robot exposes to camera. 4 bit. -x-y = 1, +x-y = 2, -x+y = 4, +x+y = 8
230
+
rapidjson::Document registrationVisionInfo; ///< Parameters used for registration vision for the object
231
+
double minCornerVisibleDist = 0; ///< how much distance along with uncertain edge from uncertain corner robot exposes to camera
232
+
double minCornerVisibleInsideDist = 0; ///< how much distance inside MVR robot exposes to camera
233
+
double maxCornerAngleDeviation = 0; ///< how much angle deviation around uncertain corner is considered to expose to camera
234
+
uint8_t occlusionFreeCornerMask = 0; ///< mask of corners that robot exposes to camera. 4 bit. -x-y = 1, +x-y = 2, -x+y = 4, +x+y = 8
232
235
mujin::MinViableRegionRegistrationMode registrationMode; ///< lift, drag or perpendicular drag
233
-
bool skipAppendingToObjectSet; ///< if true, skip appending newly created registration data into an active object set
234
-
double maxPossibleSizePadding; ///< how much to additionally expose max possible size region to vision
236
+
bool skipAppendingToObjectSet = true; ///< if true, skip appending newly created registration data into an active object set
237
+
double maxPossibleSizePadding = 0; ///< how much to additionally expose max possible size region to vision
235
238
std::vector<double> fullDofValues; ///< robot configuration state on capturing
236
239
std::vector<int8_t> connectedBodyActiveStates; ///< robot configuration state on capturing
237
240
boolIsEmpty() const {
@@ -251,7 +254,7 @@ class MUJINCLIENT_API BinPickingTaskResource : public TaskResource
251
254
252
255
structTriggerDetectionCaptureInfo {
253
256
TriggerDetectionCaptureInfo();
254
-
double timestamp; ///< timestamp this request was sent. If non-zero, then valid.
257
+
double timestamp = 0; ///< timestamp this request was sent. If non-zero, then valid.
255
258
std::string triggerType; ///< The type of trigger this is. For now can be: "phase1Detection", "phase2Detection"
256
259
std::string locationName; ///< The name of the location for this detection trigger.
257
260
std::string targetUpdateNamePrefix; ///< if not empty, use this new targetUpdateNamePrefix for the triggering, otherwise do not change the original targetUpdateNamePrefix
@@ -278,26 +281,24 @@ class MUJINCLIENT_API BinPickingTaskResource : public TaskResource
278
281
structMUJINCLIENT_API ResultAABB : public ResultBase
279
282
{
280
283
voidParse(const rapidjson::Value& pt);
281
-
std::vector<Real> pos;
282
-
std::vector<Real> extents;
284
+
std::array<double, 3> pos;
285
+
std::array<double, 3> extents;
283
286
};
284
287
285
288
structMUJINCLIENT_API ResultOBB : public ResultBase
0 commit comments