问题标签 [rasterize]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
910 浏览

java - Graphics 绘制到窗口背后的“秘密”是什么?

图形本身只是一些抽象类。调用g.drawImage(Image img, tx, null)或类似的东西实际上是如何绘制到窗口的?我看了一点,我知道也许在一个实例中发生了java.awt.Component什么?那正确吗?我不知道。

我的主要原因是我想将自己的Graphics上下文称为Graphics3D. 我的光栅化器将利用它,然后Graphics3D您可以从上下文中绘制和操作 3D 对象。即使我可以继承Graphics到我的Rasterizer,我也不知道该怎么做。

0 投票
0 回答
2464 浏览

opengl - 如何在半整数像素中心栅格化 OpenGL 三角形

OpenGL 像素/片段在概念上是以半整数像素为中心的 1x1 正方形。OpenGL 4.5 规范指出:

片段位于其左下角,位于整数网格坐标上。光栅化操作还涉及片段的中心,该中心从其左下角偏移 (1/2,1/2)(因此位于半整数坐标上)。

光栅化器通常假定像素中心位于整数网格上。由于我正在尝试实现正确的 OpenGL 三角形填充,因此我想知道以下过程是否合理。

让我们以剪裁坐标为(-1,-1),(+1,-1),(0,+1)的三角形为例,如下图左侧所示(假设正交投影,z=0 )。假设我们有一个(小的 5x5 帧缓冲区),我们将我们的三角形映射到通过glViewport(0,0,5,5)如右图所示产生具有顶点 (0,0)、(5,0)、(2.5,5) 的设备坐标中的三角形。

以半整数为中心的像素

如您所见,中心在三角形内的 13 个片段(图像中的阴影像素)应由光栅化器生成。请注意,片段中心位于半整数坐标上。要实现 OpenGL 规范,这就是结果所需要的。

扫描线多边形填充将确定扫描线与三角形相交的 x 跨度,但扫描线处于半整数 y 值,如下图所示:

三角形填充OpenGL

硬件/固件光栅器将假定像素中心位于整数网格上,因为这是执行填充的最有效方式。在下图中,我将三角形的设备坐标移动了 (-0.5, -0.5) 以将中心放置在整数网格上:

在此处输入图像描述

请注意,像素中心现在确实在整数网格上。这个光栅化器会简单地将 (0.5,0.5) 添加到每个片段中心,然后再传递给片段着色器。至少这是我的计划。

处理纹理坐标似乎很简单。想象一下我分配的纹理坐标 (0,0), (1,0), (0.5,1) 如下图所示。左边的图像使用半整数像素中心(OpenGL 方式),右边的图像使用整数像素中心(硬件方式)。无论哪种方式,纹理坐标(任何附加的片段属性)最终都具有相同的值——即,不需要做任何特别的事情。

在此处输入图像描述

那么我的方法似乎正确吗?

  • 将 (-0.5,-0.5) 添加到每个片段坐标,
  • 使用硬件高效填充,
  • 在生成片段中心时添加 (0.5, 0.5) ,并且
  • 不要为其他片段属性出汗(它们只是解决问题)。
0 投票
1 回答
70 浏览

algorithm - 获取光线通过的所有像素

我有一个二维空间和该空间中的一条射线。

带射线的网格

我需要按数字顺序获取红色矩形的坐标。

我的尝试:我有一个双射线的起点。
我有一个值偏航,它是以弧度为单位的方向。
我这样做是为了得到下一个红色方块的坐标。

然而:
网格

那是 yaw =3*pi/8请注意,这条线是在绘图程序中制作的,并且只是大致正确的。

0 投票
1 回答
128 浏览

actionscript-3 - 如何栅格化包含路径数据的图形?

我正在尝试将一些 SVG 数据栅格化为 PNG,但它不起作用。有人可以告诉我我做错了什么吗?

此代码似乎在 BitmapData 对象中没有任何数据。

但是这段代码确实:

如果我做:

两个矩形都在画布上绘制,但是

只显示顶级精灵。

0 投票
0 回答
602 浏览

phantomjs - Phantomjs rasterize(截屏)模拟移动设备

有没有什么方法可以捕获网页截图,使输出看起来像使用移动设备(如 iphone)时网站的外观?我尝试使用 iphone 用户代理,并使用完全相同的分辨率,但结果不一样。

我试图使用这个 html 来呈现一个简单的页面:

我知道这段代码没有响应。虽然我希望 phantomjs 以设备呈现它的方式呈现它。

谢谢

0 投票
1 回答
76 浏览

javascript - 以通用方式从 ARC 中提取顶点

我想从 ARC 中获取所有顶点。我有用于绘制弧线的所有数据(例如:起点、终点、起点角度、终点角度、半径),但我需要从弧线数据中生成所有顶点。

我已经尝试过一种或两种算法,但我未能从弧数据中获得确切的顶点。

我使用了 Bresenham 的算法,但我失败了。

现在我正在使用下面的代码,但它不起作用..

请帮我。谢谢你。

0 投票
0 回答
469 浏览

r - 使用 R 栅格化带孔的 shapefile?

我正在尝试使用 R 栅格化一些下载的 shapefile,其中包括带有孔的多边形,并且 R 无法识别这些孔。

这些孔似乎被指定为hole = T,所以我认为问题不是问题中解决的问题: rasterize ESRI shapefile with hole but FALSE hole slots

还有什么可能发生的?如何解决此问题?

我一直在使用该rasterize功能而没有对默认设置进行任何更改,并且我一直在使用的数据是从此处的 shapefile 重新投影的:ftp: //ftp.granit.sr.unh.edu/pub/GRANIT_Data/Vector_Data/ Environment_and_Conservation/d-wap/,例如hemhwdpine.shp.

0 投票
2 回答
111 浏览

r - 如何光栅化而不是在r中获取重复信息

我在使用 R 中的 raster 包对 data.frame 进行光栅化时遇到问题。

我的 data.frame 包含世界海洋的环境数据(温度等)及其坐标(网格 0.5*0.5),十进制经度从 -90 到 90,十进制纬度从 -180 到 180。所以基础包含 90*2* 2 x 180*2*2 = 360*720 = 259200 行,59 个冒号(57 个变量 + 2 个冒号的坐标)。

光栅化后,这就是我得到的plot(r): http: //postimg.org/image/rqocxcbi3/

所以,一个重复的图像,在错误的方向。

我的代码是:

谁能看到我在这里错过/搞砸了什么?

谢谢

编辑 : head(FILE_ENV)

LON LAT BAT BAT_CLASSE SLOPE SEDIMENT SST SST_SEAFLOOR SST_SUM SST_WIN SAL_SURF SAL_SEAFLOOR...

1 -179.75 89.75 2804 NA 0.14031838 NA NA NA NA NA NA NA

2 -179.25 89.75 2941 NA 0.12495525 NA NA NA NA NA NA NA

3 -178.75 89.75 3048 NA 0.07784129 NA NA NA NA NA NA NA

4 -178.25 89.75 3093 NA 0.03123910 NA NA NA NA NA NA NA

5 -177.75 89.75 3109 NA 0.01536359 NA NA NA NA NA NA NA

6 -177.25 89.75 3063 NA 0.15619729 NA NA NA NA NA NA NA

0 投票
1 回答
2108 浏览

r - 栅格化 R 中的空间多边形,给出具有 NA 值的栅格

我在将此空间多边形数据框转换为栅格时遇到问题。当我进行转换时,栅格将 NA 作为其值。如下所示:

这就是我栅格化它的方式:

我做错了什么?我需要一种方法来确保数据框中的值反映在栅格中,请。

0 投票
0 回答
63 浏览

javascript - PhantomJS (CentOS) 在 Acrobat Reader 上画圈不顺畅

在 CentOS 上使用 PhantomJS 时,我遇到了一个奇怪的问题。在我使用 rasterize.js 创建的每个 PDF 上,我都有圆圈,如果使用 Acrobat Reader 查看,这些圆圈将在 pdf 中像素化,但在 Google Chrome PDF 查看器上看起来不错。

我已经在页面本身上设置了 0.86 的 CSS 缩放比例,还尝试了 PhantomJS 的一个分支,它允许设置 dpi,它只调整网页元素的大小。我想,我真正需要的是为打印版本设置 dpi?或者调整大小,但我不知道是什么。

这是 Acrobat Reader 上的样子

增强现实

这是它在 Google Chrome PDF 查看器上的样子

在此处输入图像描述

但是在 PDF 中放大到特定的点,两者看起来很相似。它取决于什么。