问题标签 [line-drawing]

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

objective-c - iOS中的线条绘制

无论用户如何绘制它,如何在 iOS 中绘制一条直线。

我希望这条线是用户拖动手指的像素数的长度。

但它需要是垂直的还是水平的,这取决于用户是从屏幕的左到右还是从屏幕的上到下滑动手指。

线条不应倾斜或任何其他形状。它需要是直的。

我浏览过文章说“Open GL”是唯一的方法。

我自己尝试过编码,但是当我将方向从垂直更改为水平或反之亦然时,我会在水平线的结束位置和垂直线的开始位置之间出现一些额外的线条或间隙:

在头文件中:

在实现文件中:

如果没有 Open GL,我有什么办法可以做到吗?

0 投票
0 回答
477 浏览

c# - 在 Windows 窗体项目中动态绘制 winline

所以这是一个井字游戏,其中按钮网格的大小通过在 App.config 中设置而改变。这是我的CheckXWinner功能,如果 X 获胜,它会突出显示获胜的行组合并将按钮变为红色。我想添加一个动态线条图,该线条图将从获胜模式的开始绘制到结束(通过获胜组合的线)。在 MSDN 上,它说要添加 Microsoft.VisualBasic.PowerPacks.VS 的引用,using Microsoft.VisualBasic.PowerPacks;然后以下是他们绘制线条的代码示例:

这是我的CheckXWinner函数代码:

如何获取对我的表格的引用以获取线条图的代码?之后,我将把这些点称为循环中的获胜线,以将获胜线变为红色。谢谢!

0 投票
2 回答
1003 浏览

ios - 画线+该线与自身的交点,并检测该画线内的CCSprites

我正在使用以下代码画线,效果非常好,

http://www.merowing.info/2012/04/drawing-smooth-lines-with-cocos2d-ios-inspired-by-paper/

现在我想......

1> 检测线是否与自身相交。2) 检测 CCSprite 是否在该闭合线内。

在搜索时,我遇到了 LineIntersection 的许多逻辑,但没有一个是准确的。我给了其中一个检测交叉点的方法,但是当没有线的交叉点时它也会检测到它。

  1. 第一种方法

    /li>

这就是我调用此方法的方式,我已将我的点存储在来自 pangesture 识别器方法的 arrLinePoints 中

即使在以下情况下,这也给了我真实的

在此处输入图像描述

我还通过将视图添加到 CCDirector 的视图中尝试了使用不同方法的相同功能

UIBezierPath 相交

但这带来了性能问题,我的 fps 降低到几乎 3 到 6。而且那个交叉点问题仍然存在。

相交的完美情况是

在此处输入图像描述

请尽快提供帮助!感谢大家的支持。

0 投票
1 回答
1080 浏览

android - 使用 ontouchevent 绘制橡皮筋线

好的,我正在尝试制作一个利用 linedrawview 的程序。当用户启动一个触摸事件(动作 DOWN)时,它会获取当前的 x 和 y 并将它们存储在变量中。然后,当用户四处拖动手指时,会绘制一条线并以橡皮筋的方式进行动画处理。最后,当用户放手(动作 UP)时,该线被创建。我在这方面遇到了很多麻烦,希望得到一些帮助。到目前为止,我的 LineDrawView.java 代码:

0 投票
3 回答
2556 浏览

c - DDA 算法不是为所有坐标值绘制直线

我的 DDA(数字差分分析仪)算法实现代码在绘制斜率小于 45 o的线时效果很好,但在斜率大于 45 o时失败。

对于角度 > 45 o,它的行为就像一条折线


代码

这是DDA算法的缺点还是我的代码有任何错误,请帮助我找出导致我的程序效率低下的原因。
谢谢

0 投票
2 回答
1535 浏览

c - DDA算法不为某些坐标绘制线?

我的代码适用于 slope=1 但不适用于其他斜坡。它为除 1 以外的斜坡绘制水平线或垂直线。此代码有什么问题。任何帮助将不胜感激。

0 投票
1 回答
54 浏览

graph - 如何从线条图中识别人脸?

线条图类似于图形,但其顶点具有 x,y 位置。没有交叉边缘。例如,像这样的线条图是具有 13 个顶点的线条图,其编号为 0-12。一张脸是一个没有“内部”路径的循环。示例中的面孔将是

循环(0,1,3,5,4,2,0)不是一张脸,因为里面有一条路径,名为(2,3). 循环(0,1,3,5,8,12,11,10,9,6,0)也不是一张脸,因为里面有一条路径 (0,2,4,7,11)。我可以使用什么算法来识别示例中的人脸?

0 投票
0 回答
1549 浏览

java - Java FX 拖拽线

今天我需要你对 JavaFX 2 的帮助。我有一个练习是使用鼠标绘制线条,然后通过按下 CTRL 和 leftMouse 按下并拖动使它们可拖动,并使用 ctrl+clicked rightMouse 删除它们。我了解一种算法,但不知道如何在 JAVA FX 上发布它。我写了绘图代码,但我不知道其他功能。我知道对于删除,我需要知道我要删除的行的索引,我正在获取指针附近的线的坐标,然后删除这条线。要拖动,我需要知道 selectedLine(如删除),但在拖动过程中会更改线条的开始和结束坐标。当然,要知道我选择了我想要的线,我应该改变所选线的颜色。
我的代码:

请帮我用 javafx 做,我用 awt/swing 做的,但现在我不能用它。

0 投票
3 回答
85 浏览

canvas - 基于一组连续/半连续点的点/线检测

我正在尝试根据用户在画布上绘制的内容编写一些点/线检测软件(我一直在通过 web 和 html 5 画布进行这一切)。当用户执行 MouseDown 事件时,我们创建一个数组来保存他/她绘图的所有点。之后的每个 MouseMove 事件都会将一个点 (x, y) 推送到数组上。MouseUp 事件表示用户绘图的结束。我想要对这些点做的是确定用户明显改变方向的位置。举个例子:

上述方法产生了以下有序的点集:

[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 4), (7, 3), (8, 2)]

因此,基于这些点,我可以告诉用户在点 (5, 5) 向前明显改变了方向。程序的结果会给我三个点 [(1, 1), (5, 5), (8, 2)] 因为我将使用序列的第一个点,尝试找到一个明显的方向变化并得到该点,并使用序列中的最后一个点。

由于点的数量以及它们完全在一条直线上,因此上面的示例非常简化。当用户实际在画布上绘图时,线条不会完全笔直。出于我的目的,您可以假设用户正在绘制直线而不是明显弯曲的线。

那么根据上述信息,您建议我使用哪些算法、方法等?

编辑:错字

0 投票
1 回答
402 浏览

android - 在Android自定义视图中任意行末尾绘制箭头的算法

我一直在尝试提出一种算法来使用路径在自定义视图中绘制箭头,但我还没有弄清楚如何获取箭头提示的坐标。线的起点和终点坐标是任意的,箭头相对于线的角度和箭头的长度是固定的。

我想我必须以某种方式使用三角函数,但我不确定如何。