【发布时间】:2023-03-17 17:48:01
【问题描述】:
我正在使用 C++ 编程语言开发一个应用程序来绘制数学函数,用户编写函数、域和范围。我将 Win32 API 与 Direct2D 一起使用,但我不知道如何让程序绘制用户选择的函数。例如,用户输入函数“f (x) = x + 1”,程序应该绘制一条线。是否有任何算法可以实现来分析输入的函数,从而能够绘制它?
【问题讨论】:
-
这能回答你的问题吗? parsing math expression in c++
-
据我所知,只有 Richedit/Msftedit 包含执行此操作的代码(即:除非您使用 msftedit 在您的 D2D 上下文 docs.microsoft.com/en-us/windows/win32/api/textserv/… 上渲染,否则您无法使用自己的表面执行此操作)但文档非常非常低:docs.microsoft.com/en-us/windows/win32/api/tom/…
-
是什么阻止您只评估函数?就像
for (x:range) SetPixel(hdc, x, f(x), color);一样简单。 -
@MSalters 大概是因为它类似于
std::string function("f(x) = x + 1");