Cpoy an iconic object in the HORUS database.
copy_obj copies NumObj iconic objects beginning with index Index (starting with 1) from the iconic input object tuple Objects to the output object ObjectsSelected. If -1 is passed for NumObj all objects beginning with Index 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_obj.
Objects (input_object) |
object(-array) -> object |
Objects to be copied. |
ObjectsSelected (output_object) |
object(-array) -> object |
Copied objects. |
Index (input_control) |
integer -> integer |
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 | |
Range of values: 1 <= Index | |
Restriction: Index <= number(Objects) |
NumObj (input_control) |
integer -> integer |
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 | |
Range of values: -1 <= NumObj | |
Restriction: ((NumObj + Index) <= number(Objects)) && (NumObj != 0) |
/* Access all regions */ count_obj(Regions:::Num) > for(::1,Num:i) > copy_obj(Regions:Single:i,1:) > fetch_polygon(Single::5.0:Line,Column) > disp_polygon(::Line,Column:) > clear(Single:::) > loop(:::).
Runtime complexity: O(|Objects| + NumObj);
Memory complexity of the result object: O(NumObj)
copy_obj returns TRUE if all objects are contained in the HORUS database and all parameters are correct. If the input is empty the behaviour can be set via set_system(::'no_object_result',<Result>:). If necessary, an exception is raised.
count_obj, concat_obj, obj_to_integer, dup_image