Author |
Topic: DiatonicDegree (Read 369 times) |
|
ANdre_B
Board Master
Email
Gender:
Posts: 2848
|
|
DiatonicDegree
« on: Apr 25th, 2022, 7:16pm » |
Quote | Modify
|
Dans une partition, j'ai des Mib ... mais les fonctions Symbol.DiatonicDegree/Offset me disent que c'est un degré 2 et un offset +1 (soit un ré#)... alors que ce qui apparait à l'écran est un degré 3 offset -1! Si j'en efface un, et que je mets à la main un mib, j'obtiens bien un degré 3 offset +1 (mais il y en a des tas...) La partition vient d'un scan Sharpeye, je crois. Le document d'origine a bien un ré#, ce que je cherche à faire est de remplacer ces mib par des ré# lorsque cela fait un clash avec une portée fusionnée. Un passage par xml, ici, ne résout pas le problème. Mais la partition avait déjà été traitée avant que je ne la reçoive. Cela dit-il quelque chose à quelqu'un? Merci
|
|
offline |
André Baeck, de retour en Belgique après 12 ans passés dans le Gard. Windows 11, HA 997e (et précédents)
|
|
|
PaulL
Board Master
Retired organist and choir director; former progra
Gender:
Posts: 1130
|
|
Re: DiatonicDegree
« Reply #1 on: Apr 25th, 2022, 8:03pm » |
Quote | Modify
|
Pardon l'anglais, c'est trop compliqué pour mon français. I find that when entering notes manually, certain accidentals need to be altered in the "Accidental" tab of the "Note options" window, because the Auto setting gives the wrong result. I suspect that means there is an equivalent setting available in the MyrScript Note object, but I wouldn't know how to tell you where to find it. If you could find it, however, it would be simple to loop through all the notes in the score, identify the ones that need to be changed, and set the proper accidental.
|
« Last Edit: Apr 25th, 2022, 8:04pm by PaulL » |
offline |
Le coeur a ses raisons, que la Raison ne connaît point. Paul Littlefield, retired Church musician
HA+VS+PdfToMusic Linux Mint 21.3 Cinnamon
|
|
|
ANdre_B
Board Master
Email
Gender:
Posts: 2848
|
|
Re: DiatonicDegree
« Reply #3 on: Apr 26th, 2022, 8:58am » |
Quote | Modify
|
En fait, je me suis résolu à une approche pragmatique: - Diatonic.Degree indique ce que la note devrait être, et pas ce qui apparaît à l'écran - mais mon objectif est qu'elle apparaisse à l'écran comme elle devrait être j'ai essayé symbol.DiatonicDegree = symbol.DiatonicDegree ce qui est peu logique en soi, voire stupide. Mais l'objectif est atteint. Il me reste à ajouter un commentaire, pour qu'un lecteur/réviseur ultérieur ne supprime pas cette ligne! Merci pour tous les commentaires
|
|
offline |
André Baeck, de retour en Belgique après 12 ans passés dans le Gard. Windows 11, HA 997e (et précédents)
|
|
|
Sylvain Machefert
Administrator
WWW |
Gender:
Posts: 7065
|
|
Re: DiatonicDegree
« Reply #4 on: Apr 26th, 2022, 1:18pm » |
Quote | Modify
|
Surprenant! Il y a peut-être un ordre dans l'assignation des propriétés de la note? Comme expliqué sur l'autre sujet, mettre DiatonicDegree ou autre pour choisir la hauteur, et Accidental pour définir l'altération préférée pour l'affichage. note.LatinName="Si" note.Accidental=ACCIDENTAL_FLAT ne donne pas un si bémol, mais une note jouée à la hauteur d'un si, affiché avec un bémol => do bémol.
|
|
offline |
HA+HQ+VS+PdfToM, Reaper+Audiveris+Transcribe, Win10+Focusrite Scarlet 4i4+Nord Electro 3 Linktree: VS languages, my scripts, my bands, my performances...
|
|
|
Sylvain Machefert
Administrator
WWW |
Gender:
Posts: 7065
|
|
Re: DiatonicDegree
« Reply #5 on: Jun 19th, 2022, 4:57pm » |
Quote | Modify
|
on Jun 19th, 2022, 11:21am, ANdre_B wrote: Mais alors je me demande pourquoi l'instruction Symbol.DiatonicDegree = Symbol.DiatonicDegree (à laquelle je fais allusion dans un autre post en catégorie MyrScript) qui devrait être un no-op, refait une analyse plus complexe que la lecture initiale. |
| Pas si sûr que ce soit un no-op. Si tu prends une note en MyrScript, HA fournit ses paramètres sous formes de variables : DiatonicDegree, LatinName, etc... Soit ce sont des valeurs fixes, soit elles sont calculées. Lorsque tu en modifies une, il n'est pas impossible que HA recalcule les autres en fonction de cette modification, de ce que tu viens d'imposer. Exemple pas testé, tu as un mib, tu dis .Accidental = SHARP alors le LatinName qui était "Mi" devient "Ré". Si tu crées un objet en MyrScript comme cet exemple basique, alors si tu écris Code: tu obtiendras le nom "Maggie". Si tu écris Code: tu modifies sa valeur en brut. Si tu veux alors un objet qui contrôle les modifications de paramètres, il faut créer des functions getName (pour obtenir) setName (pour modifier de manière contrôlée, ex: rejeter "Bambi" et "Pluto" car ce ne sont pas des noms de vaches). Pour les objets fournis par HA comme les symboles (notes), bien qu'on ait l'impression de modifier en direct un paramètre, cette modification est en réalité contrôlée par du code du côté de chez Myriad (en C).
|
« Last Edit: Jun 19th, 2022, 4:59pm by Sylvain Machefert » |
offline |
HA+HQ+VS+PdfToM, Reaper+Audiveris+Transcribe, Win10+Focusrite Scarlet 4i4+Nord Electro 3 Linktree: VS languages, my scripts, my bands, my performances...
|
|
|
|