2016-12-05 3 views
0

Gibt es eine Möglichkeit, die Mittelpunktposition von Kantenpfeilen zu ändern. Momentan ist es auf 50% eingestellt, aber ich möchte das je nach Rand auf 25% oder 75% einstellen können. Gibt es eine Variable/Option, die ich innerhalb anrufen kann:Pfeilposition für mittlere Zielkanten ändern

{selector: 'edge', 
    style: { 
    'curve-style': 'bezier', 
    'line-color': '#506368', 
    'mid-target-arrow-shape': 'triangle', 
    'mid-target-arrow-color': 'black', 
    'width': 1, 
    } 
}, 

Antwort

1

Ich glaube nicht, dass das passieren wird. Der einzige Grund, warum der mittlere Pfeil erlaubt ist, liegt darin, dass der Punkt trotzdem berechnet werden muss. Beliebige Punkte werden für Bezier teuer.

+0

Können Sie mir zeigen, wo im Skript diese Berechnung stattfindet, damit ich es für kleine Fälle testen kann? – desc

+0

Es ist nicht die gleiche Art von Berechnung, da Ihr Fall nicht die gleichen Annahmen oder Abkürzungen treffen kann. Sie müssten von vorne anfangen. – maxkfranz

+0

Sie können sich [calculateArrowAngles()] (https://github.com/cytoscape/cytoscape.js/blob/v2.7.12/src/extensions/renderer/base/coord-ele-math.js#L1781 ansehen) und [findEdgeControlPoints()] (https://github.com/cytoscape/cytoscape.js/blob/v2.7.12/src/extensions/renderer/base/coord-ele-math.js#L1152) um zu starten. Es wird nicht eine einfache zwicken sein ... – maxkfranz

Verwandte Themen