如题,我不打算使用plots之类的包
那么能否能直接调用某个函数绘制像素之类的东西呢?
如果我(作为蒟蒻)的理解正确的话,这个东西或许可以用“接口”实现?但是绘图又提供了什么接口呢?
p.s.我在本站讨论区/英文社区讨论区/文档中搜索相关关键词都没有找到qaq
如题,我不打算使用plots之类的包
那么能否能直接调用某个函数绘制像素之类的东西呢?
如果我(作为蒟蒻)的理解正确的话,这个东西或许可以用“接口”实现?但是绘图又提供了什么接口呢?
p.s.我在本站讨论区/英文社区讨论区/文档中搜索相关关键词都没有找到qaq
plots 是 general-purpose 绘图库前端,它主要提供常见易用的绘图模版。Makie,GR,pyplot 这些general-purpose 绘图库是对操作系统/显卡驱动提供的绘图接口(e.g. OpenGL,Vulkan,DX)的抽象。驱动是对硬件设备的抽象,按照某个标准,实现相应的API。
如果你的意思是调用一个函数直接点亮显示外设上的某个物理像素,那要看硬件厂商的驱动提不提供这个API。
如果你的意思是调用一系列的函数来点亮某个viewport中虚拟坐标系中的一个像素,那可以基于某个绘图API实现。
如果你的意思是调用某个函数绘制一个足够小的点,那可以查 general-purpose 绘图库的接口,看是否提供此功能。
首先,感谢帮助!
我说一下,这里“绘制像素”指的是在相对窗口的固定坐标点亮显示屏
这显然需要调用操作系统API,但是问题在于这么做不具有可移植性。
举个例子,在C++中调用windowsapi画图很容易
#include<windows.h>
#include<conio.h>
HWND hwnd;
HDC hdc;
int main(){
hwnd=GetConsoleWindow();
hdc=GetDC(hwnd);
for(int i=0;i<100;i++)for(int j=0;j<100;j++)SetPixel(hdc,i,j,0x0000FF);
getch();
return 0;
}
但是同样的代码,放到macos中不能用,亦或仅仅是windows更新了,所得的结果可能完全不同。
我所需要的是一个可直接调用的,可移植的函数,最好不需要下载别的东西(有亿点点占空间qaq)
顺便说一句,绘图库不也是用jl写的吗
ok
sokol还是太大了
我觉得OpenGL+GLFW不错,
有问题我再回来qaq