Issue with turning ANNOTATION RECTANGLES into MEASUREMENT RECTANGLES . . .
2019-11-14-181623
All --
I have an image.
Its dimensions are
20110 x 15390
This image was generated by the
TILE TOOL
This image is shown open within IMAGE-PRO (V10) below.
This TILED IMAGE was generated by TILING 16 x 16 = 256 IMAGES with dimensions of 1280 x 960 with a little BORDER and a little space between tiles. The TILED IMAGE has 256 ANNOTATION RECTANGLES in the image. I can save those ANNOTATION RECTANGLES into the FEATURE MANAGER. I can clear the ANNOTATIONS from the IMAGE and then recall them into the image via the FEATURE MANAGER.
I would expect that I could then CLEAR ANNOTATIONS from the TILED IMAGE, change the RECTANGLES in the FEATURE MANAGER from ANNOTATION to MEASUREMENTS and then recall them into the image as MEASUREMENT RECTANGLES. Unfortunately this does not seem to work. No error is being displayed.
Is this an OPERATOR ISSUE or a PROGRAM ISSUE or a combination of the two?
I can provide this image to you but it is 308 MB.
Thanks.
-- Matt
0
Best Answers
-
Hi Matt,
We were able to reproduce the problem and found that it's a bug related to the way overlays are created on Tiled images.
The problem will be fixed in the next patch. In the current 10.0.4 version the issue can be fixed by a macro (which will fix the overlay objects on the tiled image). Let us know if want to have that macro.
Regards,
Yuri0 -
Hi Matt,
Here is the macro, which will fix tile rectangles. You should run this macro after creation of the tiled image, before adding annotation objects to the Features manager.Public Sub FixTileRectangles Dim im As McImage=ThisApplication.ActiveImage If im Is Nothing Then Exit Sub Dim ovl As MediaCy.IQL.Display.Overlays.IMcGraphOverlay=im.AnnotationOverlay Dim n As Integer=ovl.Count For j As Integer=0 To n+1 Dim o As MediaCy.IQL.Display.Overlays.McGraphObj =ovl.Item(j) If o IsNot Nothing AndAlso o.TemplateID=0 AndAlso o.ClassName="McGraphObjRect" Then 'create duplicate rectangle with TemplateID=1 Dim o2 As MediaCy.IQL.Display.Overlays.McGraphObj=ovl.Add(o.ClassName,1) Dim x As Single, y As Single For i As Integer=0 To 6 o.GetHandle(i,x,y) o2.SetHandle(i,x,y) Next o2.NotifyCreationComplete ovl.Remove(o)'remove old End If Next End Sub
Yuri0
Answers
Can you please provide more specific details?
You mentioned 3 steps in one sentence: 1. CLEAR ANNOTATIONS from the TILED IMAGE, 2. change the RECTANGLES in the FEATURE MANAGER from ANNOTATION to MEASUREMENTS and then 3. recall them into the image as MEASUREMENT RECTANGLES.
Which step didn't work?
Thanks,
Yuri