Found a convenient solution by drawing the arrow tips "by hand" (code reused 
from TeXCAD :-) )
-----8<--------------8<--------------8<--------------8<---------  angle_vect: 
constant:= pi - 0.25;  cos_angle_vect: constant Real:= Cos(angle_vect);  
sin_angle_vect: constant Real:= Sin(angle_vect);
  arrow_length: constant:= 15;
  -- Tips of an arrow pointing to (a,b), in direction of (u,v)  -- Code from 
TeXCAD  procedure Arrow_tip(     a,b, u,v:     Integer;    c,d, e,f: out 
Integer -- (c,d) (e,f) are the tips points  )   is    un,vn,luv, 
iv_luv,absc,ordo: Real;    f_shrink: constant:= 1.0/4.0;  begin    luv:= 
Sqrt(Real(u*u+v*v));    if Almost_zero(luv * f_shrink) then      c:= a;      
d:= b;      e:= a;      f:= b;    else      iv_luv:= 1.0 / luv;      un:= 
iv_luv * Real(u);      vn:= iv_luv * Real(v);      absc:= cos_angle_vect * 
Real(arrow_length);      ordo:= sin_angle_vect * Real(arrow_length);      c:= 
Integer(Real(a) + un*absc + vn*ordo);      d:= Integer(Real(b) - un*ordo + 
vn*absc);      e:= Integer(Real(a) + un*absc - vn*ordo);      f:= 
Integer(Real(b) + un*ordo + vn*absc);    end if;  end 
Arrow_tip;-----8<--------------8<--------------8<--------------8<---------
Then:
-----8<--------------8<--------------8<--------------8<---------      
Arrow_tip(a,b, a-a1, b-b1, c,d,e,f);      new_arrow.content.Create_XML_Element 
(new_arrow.area, SVG_Namespace, "path");      new_arrow.content.Attribute ("d", 
       'M' & Integer'Image(a1) & Integer'Image(b1) &  --  Move To        'L' & 
Integer'Image(a) & Integer'Image(b) &    --  Line To        'M' & 
Integer'Image(a) & Integer'Image(b) &    --  Move To        'L' & 
Integer'Image(c) & Integer'Image(d) &    --  Line To        'L' & 
Integer'Image(e) & Integer'Image(f) &    --  Line To        'Z'                 
                           --  Close Path      );      
new_arrow.content.Attribute ("stroke", "#331111");      
new_arrow.content.Attribute ("stroke-width", "1.5");      
new_arrow.content.Attribute ("style", "fill: 
#001100;");-----8<--------------8<--------------8<--------------8<---------     
                                  
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Gnoga-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gnoga-list

Reply via email to