Maybe the following helps (please adjust the color RGB values):
shape main
{
// draw a dashed line
noshadow=true;
setpencolor(100,100,100);
setlinestyle("DASH");
moveto(0,0);
lineto(100,0);
}
shape source
{
rotatable = true;
if(HasProperty("Direction","Bi-Directional")) {
startpath();
setfillcolor(100,100,100);
setpencolor(100,100,100);
moveto(0,0);
lineto(16,6);
lineto(16,-6);
endpath();
fillandstrokepath();
}
if(HasProperty("Direction","Destination -> Source")) {
startpath();
setfillcolor(100,100,100);
setpencolor(100,100,100);
moveto(0,0);
lineto(16,6);
lineto(16,-6);
endpath();
fillandstrokepath();
}
}
shape target
{
rotatable = true;
if(HasProperty("Direction","Bi-Directional")) {
startpath();
setfillcolor(100,100,100);
setpencolor(100,100,100);
moveto(0,0);
lineto(16,6);
lineto(16,-6);
endpath();
fillandstrokepath();
}
if(HasProperty("Direction","Source -> Destination")) {
startpath();
setfillcolor(100,100,100);
setpencolor(100,100,100);
moveto(0,0);
lineto(16,6);
lineto(16,-6);
endpath();
fillandstrokepath();
}
}