4
$\begingroup$

I want to plot arrow head only, because I want to plot a "surface" consist of all arrow head(draw a little ball or point instead of real arrow head,because a 'surface' with real arrow head is terrible...). So is there any way to hide arrow tail or make them transparent?

I've seen a method which use the vector style "Arrow3D", but I don't want the "Arrow3D" style... enter image description here that

$\endgroup$

2 Answers 2

1
$\begingroup$

If I understand you correctly, here is what I will do:

I will the take doc example:

g = {Graphics3D[Cylinder[{{0, 0, 0}, {1, 0, 0}}, 0.5]], 
   Graphics3D[Cone[{{-0.5, 0, 0}, {1.5, 0, 0}}, 0.5]]};
v = VectorPlot3D[{y, -x, z}, {x, -1, 1}, {y, -1, 1}, {z, -1, 1}, 
   VectorStyle -> {g}, VectorScale -> {Automatic, Scaled[0.3]}, 
   VectorPoints -> 4];

Now:

v /. {{x_, y_, Graphics3D[Cylinder[z__]]} :> {0, y, 
    Graphics3D[Cylinder[z]]}, Tube[k_, r_] :> Tube[k, 0]}

enter image description here

$\endgroup$
0
$\begingroup$

Some tail traces can still be seen, but barely.

h = Graphics3D[{Blue, Opacity[1], Sphere[{0, 0, 0}, .1]}];
q = VectorPlot3D[{y, -x, z}, {x, -1, 1}, {y, -1, 1}, {z, -1, 1}, 
                 PlotRange -> All, VectorPoints -> 2];
GraphicsRow[{q, 
             q /. Arrowheads[__] :> Arrowheads[{{.5, 1, {h, 0}}}] /. 
                       Arrow[a_] :> Sequence[Opacity[0], Thickness[0], Transparent, Arrow[a]]}]

Mathematica graphics

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.