Name
copy_objcopy_objCopyObjcopy_objCopyObjCopyObj — Copy an iconic object in the HALCON database.
void CopyObj(const HObject& Objects, HObject* ObjectsSelected, const HTuple& Index, const HTuple& NumObj)
HObject HObject::CopyObj(Hlong Index, Hlong NumObj) const
HImage HImage::CopyObj(Hlong Index, Hlong NumObj) const
HRegion HRegion::CopyObj(Hlong Index, Hlong NumObj) const
HXLD HXLD::CopyObj(Hlong Index, Hlong NumObj) const
HXLDCont HXLDCont::CopyObj(Hlong Index, Hlong NumObj) const
HXLDPoly HXLDPoly::CopyObj(Hlong Index, Hlong NumObj) const
HXLDPara HXLDPara::CopyObj(Hlong Index, Hlong NumObj) const
HXLDModPara HXLDModPara::CopyObj(Hlong Index, Hlong NumObj) const
HXLDExtPara HXLDExtPara::CopyObj(Hlong Index, Hlong NumObj) const
void HOperatorSetX.CopyObj(
[in] IHUntypedObjectX* Objects, [out] IHUntypedObjectX** ObjectsSelected, [in] VARIANT Index, [in] VARIANT NumObj)
IHImageX* HImageX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHRegionX* HRegionX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHUntypedObjectX* HUntypedObjectX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHXLDContX* HXLDContX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHXLDPolyX* HXLDPolyX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHXLDParaX* HXLDParaX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHXLDModParaX* HXLDModParaX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
IHXLDExtParaX* HXLDExtParaX.CopyObj(
[in] Hlong Index, [in] Hlong NumObj)
static void HOperatorSet.CopyObj(HObject objects, out HObject objectsSelected, HTuple index, HTuple numObj)
HObject HObject.CopyObj(int index, int numObj)
HImage HImage.CopyObj(int index, int numObj)
HRegion HRegion.CopyObj(int index, int numObj)
HXLD HXLD.CopyObj(int index, int numObj)
HXLDCont HXLDCont.CopyObj(int index, int numObj)
HXLDPoly HXLDPoly.CopyObj(int index, int numObj)
HXLDPara HXLDPara.CopyObj(int index, int numObj)
HXLDModPara HXLDModPara.CopyObj(int index, int numObj)
HXLDExtPara HXLDExtPara.CopyObj(int index, int numObj)
copy_objcopy_objCopyObjcopy_objCopyObjCopyObj copies NumObjNumObjNumObjNumObjNumObjnumObj iconic objects
beginning with index IndexIndexIndexIndexIndexindex (starting with 1) from the
iconic input object tuple ObjectsObjectsObjectsObjectsObjectsobjects to the output object
ObjectsSelectedObjectsSelectedObjectsSelectedObjectsSelectedObjectsSelectedobjectsSelected. If -1 is passed for NumObjNumObjNumObjNumObjNumObjnumObj
all objects beginning with IndexIndexIndexIndexIndexindex are copied. No new
storage is allocated for the regions and images. Instead, new
objects containing references to the existing objects are created.
The number of objects in an object tuple can be queried with the
operator count_objcount_objCountObjcount_objCountObjCountObj.
For a short description of the iconic objects that are available in HALCON
see the introduction of chapter Object.
- Supports objects on compute devices.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Starting index of the objects to be copied.
Default value: 1
Suggested values: 1, 2, 3, 4, 5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000
Typical range of values: 1
≤
Index
Index
Index
Index
Index
index
Restriction: Index <= number(Objects)
Number of objects to be copied or -1.
Default value: 1
Suggested values: -1, 1, 2, 3, 4, 5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000
Typical range of values: -1
≤
NumObj
NumObj
NumObj
NumObj
NumObj
numObj
Restriction: NumObj + Index - 1 <= number(Objects) && NumObj != 0
gen_circle (Circles, [100,200,400], [200,100,400], [100,100,50])
copy_obj (Circles, CircleCopy, 2, 3)
erosion_circle (CircleCopy, CircleErosion, 15.5)
dev_set_color ('red')
dev_set_draw ('fill')
dev_display(Circles)
dev_set_color ('white')
dev_set_draw ('margin')
dev_display (CircleCopy)
dev_set_color ('green')
dev_display (CircleErosion)
/* Access all regions */
count_obj(Regions,&Num);
for (i=1; i<=Num; i++);
{
copy_obj(Regions,&Single,i,1);
T_get_region_polygon(Single,5.0,&Row,&Column);
T_disp_polygon(WindowHandleTuple,Row,Column);
destroy_tuple(Row);
destroy_tuple(Column);
clear_obj(Single);
}
gen_circle (Circles, [100,200,400], [200,100,400], [100,100,50])
copy_obj (Circles, CircleCopy, 2, 3)
erosion_circle (CircleCopy, CircleErosion, 15.5)
dev_set_color ('red')
dev_set_draw ('fill')
dev_display(Circles)
dev_set_color ('white')
dev_set_draw ('margin')
dev_display (CircleCopy)
dev_set_color ('green')
dev_display (CircleErosion)
gen_circle (Circles, [100,200,400], [200,100,400], [100,100,50])
copy_obj (Circles, CircleCopy, 2, 3)
erosion_circle (CircleCopy, CircleErosion, 15.5)
dev_set_color ('red')
dev_set_draw ('fill')
dev_display(Circles)
dev_set_color ('white')
dev_set_draw ('margin')
dev_display (CircleCopy)
dev_set_color ('green')
dev_display (CircleErosion)
gen_circle (Circles, [100,200,400], [200,100,400], [100,100,50])
copy_obj (Circles, CircleCopy, 2, 3)
erosion_circle (CircleCopy, CircleErosion, 15.5)
dev_set_color ('red')
dev_set_draw ('fill')
dev_display(Circles)
dev_set_color ('white')
dev_set_draw ('margin')
dev_display (CircleCopy)
dev_set_color ('green')
dev_display (CircleErosion)
gen_circle (Circles, [100,200,400], [200,100,400], [100,100,50])
copy_obj (Circles, CircleCopy, 2, 3)
erosion_circle (CircleCopy, CircleErosion, 15.5)
dev_set_color ('red')
dev_set_draw ('fill')
dev_display(Circles)
dev_set_color ('white')
dev_set_draw ('margin')
dev_display (CircleCopy)
dev_set_color ('green')
dev_display (CircleErosion)
Runtime complexity: O(|ObjectsObjectsObjectsObjectsObjectsobjects| + NumObjNumObjNumObjNumObjNumObjnumObj);
Memory complexity of the result object: O(NumObjNumObjNumObjNumObjNumObjnumObj)
copy_objcopy_objCopyObjcopy_objCopyObjCopyObj returns 2 (H_MSG_TRUE) if all objects are contained in
the HALCON database and all parameters are correct. If the input
is empty the behavior can be set via
set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>).
If necessary, an exception is raised.
count_objcount_objCountObjcount_objCountObjCountObj
select_objselect_objSelectObjselect_objSelectObjSelectObj
count_objcount_objCountObjcount_objCountObjCountObj,
concat_objconcat_objConcatObjconcat_objConcatObjConcatObj,
obj_to_integerobj_to_integerObjToIntegerobj_to_integerObjToIntegerObjToInteger,
copy_imagecopy_imageCopyImagecopy_imageCopyImageCopyImage
Foundation