首页 > 解决方案 > FilledCurve 中不需要的线(Wolfram Mathematica)

问题描述

我正在尝试使用函数 FilledCurve 用 Wolfram Mathematica (v. 10.0) 制作一个自定义箭头。结果在 Wolfram 输出上看起来不错。当我将图片另存为 pdf 时,箭头的左边框上出现了一些不需要的垂直线。它在我插入图片的乳胶文档中也可见。代码是

px = 0.7; py = 0.14; mpx = -0.2;
pts = {{-px, py}, {mpx, 0}, {-px, -py}};
ah = Graphics[{FilledCurve[{BSplineCurve[pts], Line[{{-px, -py}, {0, 0}, {-px, py}}]}]}]

要查看问题,您需要将输出保存为 pdf 并在 Adob​​e Acrobat Reader 中打开(或将其插入到 Latex 文档中)。

有什么建议么?谢谢!

标签: graphicswolfram-mathematica

解决方案


WM里好像有一些包。我只是通过从线条“手动”创建所需的曲线来解决问题。最终代码(有一些小的改进)如下:

px = 0.7; py = 0.14; mpx = -0.3;
pts = {{-px, py}, {mpx, 0}, {-px, -py}};
curpts = Table[f[t], {t, 0, 1, 0.02}];
f = BSplineFunction[pts];
linpts = {{-px, -py}, {0, 0}, {-px, py}};
allpts = Join[curpts, {linpts[[-2]], linpts[[-1]]}];
ah = Graphics[{FilledCurve[Line[allpts]], Line[linpts]}]

结果:


推荐阅读