I am using dbGetTrueOverlaps to extract data under my cursor through all levels of hierarchy. Ultimately I am striving to get the closest vertex of a path embeded down in the hierarchy to my current (top level) cursor location. I have no problem getting this resolved through all levels of hierarchy with one exception, Mosaics. I currently use dbGetHierPathTransform to transform the data up to my top level but if the elements are within a Mosaic then it always transforms the element data to be where it exists within the original (column 1 row 1) array instance. So if, for example, my cursor is over a path within row 2 column 5 instance of the array I do not get the location I need. It always returns col 1 row 1 equivalent. Is there some way to use dbGetHierPathTransform to get accurate mosiac data specific to the instance location within the array? Or am I going to have to just do the math and multiply the offsets by the number of rows and columns?
Are you using the last argument of dbGetTrueOverlaps which optionally returns the row/column information of overlaps in a mosaic? By default, the row/column information is not returned, so you must set the last argument to t. dbGetHierPathTransform is a relatively new function (not available in 5.1.41), so I have never used it before. I had to write my own code to parse the dbGetTrueOverlaps and do the mosaic transformation. Let me know if the row/col information does the trick and I'll update my code to use this new dbGetHierPathTransform. It would be much simpler.
dbGetTrueOverlaps( d_cellView l_bBox [ l_layerPurposePair ] [ lx_level ] [ g_doRowCol ]) => ld_fig | nil
In reply to dmay:
Early look at this looks promising, but I've been pulled onto something else for a bit so will let you know more when I get back onto this but it looks like the row column set to t is getting me just what I need. Thanks!
This did the trick! Worked perfectly for what I needed. Thanks again!