<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Hi Martin,<br>
<br>
as you own Perfect Layout, why don't you use it for hairpins?<br>
The plug-in has this barline collision algorithm.<br>
Hairpins can be controlled through JW Lua, except for hairpins that
span more than two systems: then only the first and the last hairpin
part can be adjusted.<br>
<br>
<div><br>
</div>
<div>>1. You will almost certainly need to call
SetCustomShaped(true). (What has me confused is that in Finale
each endpoint has its >own customized bit, so I am not sure how
the PDK Framework is doing this without specifying the left or
right endpoint.<br>
SetCustomOffset uses the boolean value to determine the start/end
segment.<br>
<br>
<table class="memname">
<tbody>
<tr>
<td class="memname">void
FCSmartShapeSegment::SetCustomOffset </td>
<td>(</td>
<td class="paramtype">bool </td>
<td class="paramname"><em>rightside</em></td>
<td>)</td>
<td><br>
</td>
</tr>
</tbody>
</table>
</div>
<br>
<br>
Best.<br>
Jan<br>
<br>
<div class="moz-cite-prefix">Am 24.12.2020 um 07:51 schrieb Martin
Marris:<br>
</div>
<blockquote type="cite"
cite="mid:001401d6d9c1$3b3cbc80$b1b63580$@notecraft.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style>@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}div.WordSection1
{page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">Thanks Robert. I am giving up on this one
for the time being. We will use the JW Change plugin manually.
It has a whole set of commands specifically for Hairpins. We
have found that we can get more or less what we are looking
for by setting all the horizontal positions to zero or
something close to zero. This can be relative to the note
entries, or relative to the measure borders. The very
existence of all these options makes me think there must be
some way to do the same in JW Lua although of course these may
be calls that have not been implemented yet.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The JW Change plugin can cope with most of
these issues, but cannot always fix sloppily attached
hairpins, even though it has options that try to do this. That
is one of the reasons I was hoping to achieve this
programmatically in JW Lua (by using the “find nearest” stuff,
which I am already using to fix the attachment of text
dynamics). We are not looking for subtlety. All of the source
material is at the elementary level and, for most instruments,
hairpins should always start on a note entry and end at the
rhythmic conclusion of another note entry (but without
colliding with group barlines, so pulled back slightly at the
right hand end at the end of a measure). In theory we should
use a different algorithm for pianos and other instruments
that cannot change dynamic through a sustained note, but I
have more or less given up on that one and perhaps it is only
engravers and other notation geeks who care.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Martin<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> JWLua
<a class="moz-txt-link-rfc2396E" href="mailto:jwlua-bounces@jwmusic.nu"><jwlua-bounces@jwmusic.nu></a> <b>On Behalf Of </b>Robert
Patterson<br>
<b>Sent:</b> Thursday, December 24, 2020 00:29<br>
<b>To:</b> The JW Lua script plug-in.
<a class="moz-txt-link-rfc2396E" href="mailto:jwlua@jwmusic.nu"><jwlua@jwmusic.nu></a><br>
<b>Subject:</b> Re: [JW Lua] Hairpins<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">I've never used the PDK Framework
support for Smart Shapes. It's complicated even with
direct PDK access. That said:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">1. You will almost certainly need to
call SetCustomShaped(true). (What has me confused is that
in Finale each endpoint has its own customized bit, so I
am not sure how the PDK Framework is doing this without
specifying the left or right endpoint.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">2. It's possible you are correct that
FCSmartShapeCtrlPointAdjust is not what you want. But if
it isn't, then what you *do* want is not hooked up through
the PDK Framework. So it's worth fiddling further, I'd
say.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Good luck.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Wed, Dec 23, 2020 at 6:14 PM Martin
Marris <<a href="mailto:mmarris@notecraft.com"
moz-do-not-send="true">mmarris@notecraft.com</a>>
wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC
1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I’ve
been trying to adjust the right end-point of hairpins.
In the source Finale material I am working with, these
routinely collide with or cross the group barlines in
conductor scores, but I want them to stop a bit before
the barline (this issue gets even more exaggerated if
the file is brought into another environment via
MusicXML). <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">From
Google searches it seems like this is a known issue
for Finale users, with all sorts of manual and
semi-automated solutions. Indeed if I create a totally
vanilla Finale document without using any special
settings, that is exactly the behavior that I get when
placing a slur. If you create a hairpin that spans a
measure, it snaps to end exactly on the group barline.<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">There
is a sample script on the JW Lua website that loads
FCSmartshape objects, filters for hairpins, and
changes the hairpin opening size by changing the
FCSmartShapeCtrlPointAdjust setting for
ControlPoint1OffsetY.<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">So
far, so good. But when I try to change the “X”
horizontal settings, nothing happens. I am beginning
to think that these “control point adjust” settings
have nothing to do with what I am trying to achieve,
namely changing the X-offset (relative to the beat, or
relative to the measure) of the SmartShape object.<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Martin<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
JWLua mailing list<br>
<a href="mailto:JWLua@jwmusic.nu" target="_blank"
moz-do-not-send="true">JWLua@jwmusic.nu</a><br>
<a
href="http://jwmusic.nu/mailman/listinfo/jwlua_jwmusic.nu"
target="_blank" moz-do-not-send="true">http://jwmusic.nu/mailman/listinfo/jwlua_jwmusic.nu</a><o:p></o:p></p>
</blockquote>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
JWLua mailing list
<a class="moz-txt-link-abbreviated" href="mailto:JWLua@jwmusic.nu">JWLua@jwmusic.nu</a>
<a class="moz-txt-link-freetext" href="http://jwmusic.nu/mailman/listinfo/jwlua_jwmusic.nu">http://jwmusic.nu/mailman/listinfo/jwlua_jwmusic.nu</a>
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Jan Angermüller
Dipl.-Ing.(FH) Dipl.-Jur.
Orchideenstieg 13
22297 Hamburg
Tel. 040 - 28 94 84 82
Mobil 0173 - 99 33 904
<a class="moz-txt-link-abbreviated" href="http://www.elbsound.studio">www.elbsound.studio</a></pre>
</body>
</html>