|
@@ -386,10 +386,15 @@ function calculateMetroStep(arr: any[], m: any): number[] {
|
|
|
const measure_bbox = wholeNote?.attrs?.el?.parentElement?.parentElement?.getBoundingClientRect?.() || { x: 0, right: 0 };
|
|
|
let bbox = wholeNote?.attrs?.el?.getBoundingClientRect?.() || { x: 0 };
|
|
|
let stepWidth = Math.abs(measure_bbox.right - bbox.x) / m.numerator;
|
|
|
- let stepList: number[] = [];
|
|
|
- for (let i = -1; i < m.numerator - 1; i++) {
|
|
|
- stepList.push(bbox.x - measure_bbox.x + i * stepWidth);
|
|
|
- }
|
|
|
+ let stepList: any[] = [];
|
|
|
+ // 第一小节是休止符,节拍指针应该等分宽度
|
|
|
+ const widthStep = 100 / (m.numerator + 1);
|
|
|
+ // for (let i = -1; i < m.numerator - 1; i++) {
|
|
|
+ // stepList.push(bbox.x - measure_bbox.x + i * stepWidth);
|
|
|
+ // }
|
|
|
+ // for (let i = 1; i <= m.numerator; i++) {
|
|
|
+ // stepList.push(widthStep * i + '%');
|
|
|
+ // }
|
|
|
// console.log(wholeNote?.attrs?.el, m.measureNumberXML)
|
|
|
// console.log("🚀 ~ stepList:", stepList, m.measureNumberXML)
|
|
|
return stepList;
|