问题标签 [drawing2d]

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 回答
81 浏览

java - Java:JPanel 上的像素完美绘图

我正在使用 OpenJDK 11:

openjdk 版本“11.0.1” 2018-10-16
OpenJDK Runtime Environment 18.9(build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9(build 11.0.1+13,混合模式)

试图让应用程序在 JPanel 中绘制一些东西,我注意到一些令人讨厌的不准确之处。

以下代码应该在另一个下方绘制一系列线条(交换颜色是为了演示正在发生的事情):

}

然而,不是让一条线在另一条线下方绘制,而是在一些线之间存在间隙: 画有间隙的线条

我想这可能是由虚拟坐标系和物理坐标系之间的转换引起的。

然而,当精确度真的很重要时,如何让它像素完美呢?

0 投票
2 回答
383 浏览

vb.net - 填充路径不填充整个图形路径?

试图让那个中心区域充满,不知道我做错了什么。

在此处输入图像描述

0 投票
1 回答
1362 浏览

c# - 如何在 C# 中旋转二维对象

基本上我有一个窗口形式,用户将能够绘制不同的形状(例如正方形,圆形和三角形),用户将能够在绘制后突出显示这些形状中的任何一个,然后通过移动或旋转来控制突出显示的形状,我不不知道如何旋转形状。任何人都可以提供帮助,这是我的代码(仅用于绘制正方形) PS:用户需要在表单上单击两次以在这两个点之间绘制形状,如下所示我也知道我应该使用 onPaint 方法,但这是任务要求

谢谢

}

我已经尝试过这种方法,但是缺少一些东西我不知道它是什么

0 投票
0 回答
62 浏览

vb.net - 使用 Flatten 函数画圆

我目前正在使用输入中的 X 点实现圆形可视化。

我不知道这是否是最好的方法(不要犹豫告诉我任何其他可能性),但要意识到这一点,我正在用这些不同的点创建一个路径,然后我使用“Flatten”功能来平滑曲线:

如您所见,我在末尾添加点“0”以关闭曲线,这是我的结果:

在此处输入图像描述

如您所见,结果很好,除了最后一点和第一点之间的连接。

我怎样才能平滑这种连接?或者还有其他解决方案可以实现这种可视化吗?

编辑 :

使用DrawClosedCurve方法后,结果看起来更好了,但是在最后一个连接上还是有问题,可以看到(With the last connection point):

在此处输入图像描述

并且没有最后一个连接点:

在此处输入图像描述

0 投票
1 回答
372 浏览

python - Python 中 Trimesh 模块的 .to_planar() 函数将 Path2D 保存为 .PNG 或 .JPEG

我的主要目标是获取 STL 文件的图纸视图。我尝试了将 STL 文件转换为 SLDPRT 的 SolidWorks 方法,然后获取工程视图,但在这种情况下,工程视图包含很多噪音并且不准确。所以,我正在尝试 Trimesh 模块。到目前为止,与

并通过更改 Plane_normal 数组值,我得到了所需的横截面(这有点类似于三个视图),但我不知道如何将 Spyder 控制台中显示的图像保存为 JPEG 或 PNG。我需要绘图视图以进行进一步的图像分析。

任何有关此方法或任何其他获取图纸视图的方法的线索将不胜感激!谢谢!

0 投票
0 回答
708 浏览

angular - 如何使用角度 9 的鼠标在画布上绘制空矩形

我正在尝试实现在画布图像上绘制矩形的逻辑。所以基本上首先我在画布上绘制图像。我想提供使用鼠标在该画布图像上绘制矩形的功能。

在上面的代码中 - 我在画布图像上获取鼠标的起始位置以进行绘图

在上面的代码鼠标移动事件中,我通过从当前点减去起点来获取宽度和高度来绘制矩形。

在上面的代码中 - 通过使拖动为假来完成绘图。

绘制时输出:

在此处输入图像描述

我已经尝试清除矩形,但它正在清除我在画布上绘制的图像。

HTML 片段

以上代码说明:- 以上代码在 *ngFor 中。它迭代我们从服务器获取的图像数量。我在图像标签上的每个图像上调用 onLoad 函数。在加载函数内部,我们只是使用 onload 绘制图像。

0 投票
1 回答
118 浏览

c# - WPF 将不同的形状绑定到 ItemsControl 中的 DataTemplate

我想将不同的 System.Windows.Shapes.Shape 绑定到 ItemsControl 中的 DataTemplate。我基于具有位置和形状信息的数组在 Canvas 上绘制了以下 ItemsControl 形状:

如果我与 Ellipse(如示例)或 Rectangle 或 Polygon 之类的 Shape 绑定,它可以完美地工作,但我需要同时具有不同的形状,例如 Polygons 和 Ellipses。我尝试使用 ContentControl 将 DataTemplate 关联到 Shapes 类型的对象 PartShape:

VM 中的 PartShape 是这样的对象:

绑定没问题,没有错误,但它不起作用,它在画布上什么也没画。我该怎么办?

谢谢。

0 投票
1 回答
61 浏览

c - 如何画一条斜线

我试着用 c 在一个窗口中画一些线条和形状(没有一个库,用一两行为我做这件事)来学习一点。我已经可以绘制水平和垂直线和矩形。现在,我想画有角度的线。这是整个代码:

这只是斜线的一部分:

当我执行它时,它会画一条有角度的线,但不是重点。这条线在目标点右侧结束一点像素。我知道代码不是最漂亮的,还有一些需要改进的地方,但我想先集中精力。(对不起我的英语)

(编辑)现在我得到了这个工作正常的代码

0 投票
0 回答
20 浏览

drawing - 有没有办法用代码控制我的 XY 绘图仪?

我最近给自己买了一台 XY 绘图仪。就像机器人一样。我有 Inkscape,我对它的工作方式很满意,但我想尝试自己用代码直接控制它。有这个包吗?我熟悉chiplotle,但这只适用于python 2.5/2.6,我有python 3。目标是导入一堆字体,然后让绘图仪为每个字母随机绘制一个,所以你最终会得到一个真的古怪的句子,读起来就像电影中绑匪写的那些字母。排序。但随后随机化和编码。会喜欢一些提示!提前致谢。

0 投票
1 回答
64 浏览

javascript - 如何使用 Javascript 画布元素从头开始显示图像

我创建了一个画布元素,可以在其中绘制路径。在那里,我画出透明的路径,然后“从头开始”显示前景。它适用于移动设备和台式机。