[JW Lua] Finding a SmartShape by one of their anchor points
Thomas Weber
thomas.weber at notengrafik.com
Mon Aug 28 07:16:21 CEST 2017
Hi all,
I'm trying to find SmartShapes that start or end at a specific position given by a staff/measure number and a MeasurePos. The typical way of retrieving a SmartShape would probably be LoadAllForRegion on FCSmartShapeMeasureMarks. However, this will only get me the SmartShape at the given point if I create a region that fully encompasses the entire SmartShape. There I'm stuck in a vicious circle because I can only be sure the region encompasses the entire SmartShape if I already have the SmartShape I'm looking for.
Alternatively, I could simply make the region the entire document or use LoadAll on FCSmartShapes and iterate over them, but that seems pretty wasteful and poorly scalable when I imagine this could e.g. be used in the context of an entire opera, especially when a script is only applied selectively to very short selections, but run hundreds of times by users.
A workaround solution might be to assume that a SmartShape does not stretch over more than N bars (N being an arbitrarily chosen number) and restrict the search region to that area - risking to fail should there be SmartShapes spanning more then N bars.
Any smart ideas or hints to what method I might have failed to consider?
Best,
Thomas
--
Notengrafik Berlin GmbH
HRB 15007
UstID: DE 289234097
Geschäftsführer:
Thomas Weber und Werner J. Wolff
fon: +49 30 220661685
Leuschnerdamm 13
10999 Berlin
notengrafik.com
More information about the JWLua
mailing list