MakeMusic
SmartMusic Finale Garritan MusicXML

BEZIER DATA ON SLUR

Moderator: Michael Good

BEZIER DATA ON SLUR

Postby mulfycrowh » Sun Apr 27, 2014 2:33 pm

Hi everybody !

I generated a slur in Finale and exported it into a XML file.
I have got :

<slur bezier-x ... bezier-y ... default-x ... default-y ... ....>

Could you please explain what is bezier-x and bezier-y ?
I think that's coordinates for the bezier control point. In that case I do not understand information for bezier-y. The node is included in the node of a note. So it should be relative to the note ????


Many thanks
mulfycrowh
 
Posts: 3
Joined: March, 2014
Reputation: 0

Re: BEZIER DATA ON SLUR

Postby Hans Vereyken » Tue Apr 29, 2014 3:34 am

Hi mulfycrowh,

If I'm not mistaken we are handling it this way:
default-x: horizontal distance between left side of notehead and slur start (in tenths)
default-y: vertical distance between top line of staff and slur start (in tenths)
bezier-x: horizontal distance between slur start and slur bezier point (control point, in tenths)
bezier-y: vertical distance between slur start and slur bezier point (control point, in tenths)

I'd like to add another question: is the default-y measured from the bottom, middle or top of the top line of the staff?

All the best
Hans Vereyken
 
Posts: 36
Joined: March, 2014
Reputation: 0

Re: BEZIER DATA ON SLUR

Postby JavaCS » Mon May 05, 2014 6:49 am

Hi,

I tried as Hans post, I think that's not the right explanation.
I'm confused for slur bezier data, and the temporary method is just ignore all of them.
JavaCS
 
Posts: 1
Joined: May, 2014
Reputation: 0

Re: BEZIER DATA ON SLUR

Postby mulfycrowh » Tue May 06, 2014 10:18 am

Thank you
mulfycrowh
 
Posts: 3
Joined: March, 2014
Reputation: 0

Re: BEZIER DATA ON SLUR

Postby James Sutton » Tue May 06, 2014 12:15 pm

SeeScore uses bezier-x/y and default-x/y following the MusicXML documentation:

The bezier attribute group is used to indicate the curvature of slurs and ties, representing the control points for a cubic bezier curve. For ties, the bezier attribute group is used with the tied element.

Normal slurs, S-shaped slurs, and ties need only two bezier points: one associated with the start of the slur or tie, the other with the stop. Complex slurs and slurs divided over system breaks can specify additional bezier data at slur elements with a continue type.

The bezier-offset, bezier-x, and bezier-y attributes describe the outgoing bezier point for slurs and ties with a start type, and the incoming bezier point for slurs and ties with types of stop or continue.
...

The bezier-offset and bezier-offset2 attributes are measured in terms of musical divisions, like the offset element. These are the recommended attributes for specifying horizontal position. The other attributes are specified in tenths, relative to any position settings associated with the slur or tied element.


default-x and default-y are also defined unambiguously in the documentation.

You can test with the sample scores e.g. BeetAnGeSample.xml

If you ignore these then you won't get the helpful user tweaks and your slurs will intersect other items unless you have a very clever slur layout algorithm (if so perhaps you could let me know how you do it!)

Best regards
James Sutton
James Sutton
 
Posts: 37
Joined: March, 2014
Reputation: 0

Re: BEZIER DATA ON SLUR

Postby Michael Good » Wed May 07, 2014 2:49 pm

Thanks, Hans and James. Regarding Hans's question, the MusicXML documentation doesn't yet specify exactly where in the line the reference point is from. In general I think most implementations are using the middle of the line, both for staff lines (default-y) and barlines (default-x). This is something we may want to specify more clearly in a future version.
Michael Good
VP of MusicXML Technologies
MakeMusic, Inc.
User avatar
Michael Good
 
Posts: 2197
Joined: March, 2014
Reputation: 0

Re: BEZIER DATA ON SLUR

Postby DigPubAM1 » Thu May 08, 2014 4:39 pm

I've been messing with this as well. Something to keep in mind is that the curve of the slur is controlled by two different slur elements, the start and the stop tags. Each element has two sets of coordinates (default-x/y and bezier-x/y, as mentioned above), which totals 4 coordinates that control the shape of the slur.

If you look at this diagram: http://upload.wikimedia.org/wikipedia/c ... _curve.svg
-P0 is determined by the start slur's default-x/y
-P1 is determined by the start slur's bezier-x/y, relative to P0
-P2 is determined by the stop slur's bezier-x/y, relative to P3
-P3 is determined by the stop slur's default-x/y
(If you were to make both sets of bezier-x/y 0,0 you would get a straight line.)

I'd like to add another question: is the default-y measured from the bottom, middle or top of the top line of the staff?

Top of the staff, I believe.
-----------------------------------
Digital Sheet Music Publishing Specialist
Composer/Songwriter
Finale Enthusiast
Mac OS X 10.7, 10.9, 10.10
Finale 2011, 2014
User avatar
DigPubAM1
 
Posts: 3
Joined: May, 2014
Reputation: 0
Software Owned:
Finale 2011
Finale 2014
ARIA Player
Brackets
Pro Tools 10

Who is online

Users browsing this forum: No registered users and 2 guests

cron