graphics - 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 并在 Adobe Acrobat Reader 中打开(或将其插入到 Latex 文档中)。
有什么建议么?谢谢!
解决方案
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]}]
推荐阅读
- javascript - 电子在浏览器中打开每个链接而不是电子本身
- android - Android Jetpack 安全性 - 示例代码无法编译“找不到适合 FileReader(EncryptedFile) 的构造函数”
- python - Python中的KeyError,即使密钥存在
- c++ - c++中结构体减少缓存内存的方法
- javascript - 如何将带有对象的数组推入数组
- php - Laravel 7 中的资源如何只显示创作者的某些领域?
- python - 如何检查列表项是否位于另一个列表中的元组之间?
- php - PHP - AJAX - 字段组数组 POST 值总是显示未定义的索引
- javascript - Bootstrap 4 Card Deck Fixed Card Width (当少于每行指定数量的卡片时)
- java - 无法使用休眠在同一 JSP 页面上同时保存一对多关系实体