C++在 Direct2D 设备中绘制圆弧

发布于 2024-12-29 15:50:04 字数 117 浏览 0 评论 0原文

我需要在 D2D 设备中绘制圆弧,是否有函数可以执行此操作?(例如 DrawLine 或 DrawEllipse) 否则,我看到有 ArcSegment 函数返回 D2D1_ARC_SEGMENT 结构,我该如何绘制它?

I need to draw an arc in a D2D device, is there a function that does this?(something like DrawLine or DrawEllipse)
Otherwise, i've seen that there is the ArcSegment function that returns a D2D1_ARC_SEGMENT structure, how can i draw that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

错々过的事 2025-01-05 15:50:04

填充路径几何图形 (ID2D1PathGeometry) 时可以使用 D2D1_ARC_SEGMENT。将所需的圆弧添加到路径后,您可以使用 ID2D1RenderTarget::Draw/FillGeometry() 绘制它。

The D2D1_ARC_SEGMENT can be used when populating a path geometry (ID2D1PathGeometry). Once you've added the arc you want to the path, you can draw it using ID2D1RenderTarget::Draw/FillGeometry().

明月松间行 2025-01-05 15:50:04

我对 Direct2D 不太熟悉,所以我不知道任何特定的函数可以让你做到这一点,但是它不会阻止你实现自己的函数来实现你想要的。

我建议研究样条曲线及其计算方式 wiki

似乎是一个不错的起点。然后,您可以使用公式和多次 DrawLine 调用来生成 Arc。

编辑:甚至这个可能会更好地为您服务。

Im not too familiar with Direct2D so I am unaware of any specific function that would allow you to do this, however it does not stop you from implementing your own function to achieve what you want.

I recommend looking into splines and how they are calculated wiki

seems like a good place to start. You could then generate your Arc with with the formula and several DrawLine calls.

Edit: or even this may serve you better.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文