Tag: 2d

n点与最佳拟合曲线的近似

我有一个n点(2D)列表:P1(x0,y0),P2(x1,y1),P3(x2,y2)…点满足每个点都有唯一坐标的条件,以及每个点的坐标xi ,yi> 0和xi,yi是整数。 任务是编写一个算法来近似这些点 到曲线y = | Acos (Bx) | y = | Acos (Bx) | 最合适(接近或等于100%) 因此系数A和B尽可能简单。 我想用C#编写一个程序,但对我来说最大的问题是找到合适的算法。 有没有人可以帮我这个?

如何判断一条线是否与C#中的多边形相交?

我有一个非常类似的问题: 如何知道一条线是否与C#中的平面相交? 我正在寻找一种方法(在C#中),它告诉一条线是否与任意多边形相交。 我认为Chris Marasti-Georg的算法非常有用,但缺少最重要的方法,即线对线交叉。 有没有人知道线路交叉方法来完成Chris Marasti-Georg的代码还是有类似的东西? 在C#中是否有内置代码? 此方法适用于使用禁区function增强的Bing Maps算法。 生成的路径不得通过禁区(任意多边形)。

使用WPF绘制数千个数据点的最佳方式?

我写了一个显示财务数据的图表。 当我使用PathGeometry以及PathFigure和LineSegment绘制不到10.000个点作为连接线时,性能很好。 但是现在我需要同时显示多达100.000点(没有滚动)并且已经非常慢,只有50.000点。 我在考虑StreamGeometry ,但我不确定,因为它与PathGeometry基本相同,它将信息作为字节流进行处理。 有没有人有想法让这更高效,或者有人甚至做过类似的事情? 编辑:这些数据点一旦绘制就不会改变,所以如果有潜在的优化,请告诉我(线段现在被冻结)。 编辑:我试过StreamGeometry。 由于某些原因,创建图形的时间更长,但这不是问题。 绘制所有点后在图表上绘制仍然与前一个方法一样慢。 我认为WPF处理的数据点太多了。 编辑:我已经进行了一些实验,我注意到通过将先前为double的坐标转换为int来改善性能,以防止WPF抗锯齿子像素线。 编辑:感谢所有建议减少线段数的回复。 对于阶梯线,我将它们降低到最多两倍的水平分辨率,对于简单的线条,最多将它们降低到水平分辨率,现在性能非常好。

在具有多个碰撞器的GameObject上找到与碰撞有关的两个碰撞器

总结以下内容:我想从OnTriggerEnter2D事件中找到碰撞中涉及的两个碰撞器。 我怎样才能做到这一点? 我有两个游戏对象。 两者都有对撞机和扳机。 在对象A上,它被触发器包围。 在对象B上,触发器仅包围某个部分。 当对象A的触发器触及对象B的任何对撞机(触发与否)时:我希望对象B失去健康。 反之亦然。 然而,当对象A的触发器接触对象B的对撞机(而不是触发器)时,两个对象都会失去健康。 我在控制台中得到了这个 Object A hit Object B Object B hit Object A 我得出结论,对象A的触发器在对象B上调用Ontrigger2d事件。 我认为解决这个问题的最佳方法是找到哪个碰撞器’找到’碰撞,并依赖于此:忽略碰撞.. 如何找到碰撞中发现的触发器? [也发布在Unity论坛上] 编辑:代码 private void OnTriggerEnter2D(Collider2D collision) { Consumeable con = collision.GetComponentInParent(); if (con != null && con.gameObject != gameObject) { Debug.Log(gameObject.name + ” hit ” + con.gameObject.name); con.Damage(1); } }

如何在C#中绘制简单的图形?

我只想在C#中绘制简单的2D对象,如圆形,直线,方形等。 我怎么做? 回到Turbo C ++时代,我记得初始化一些图形库是为了做同样的事情。 我需要在.NET中做类似的事情吗? 3D对象有什么不同吗? 像DirectX这样的东西会让这更容易吗? 任何指向教程或示例的链接都非常感谢。

来自文本文件的2d数组c#

我有一个看起来像这样的文本文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 […]

淡入/淡出GameObject

我对编码很新,我仍然在努力发展思维逻辑,以帮助我创建我想要的游戏解决方案。 目前,我正在Unity尝试创建一个2D GameObject,这是一个隐藏秘密门的墙。 当玩家GameObject触发它时,我希望GameObject淡出(大约90%),露出后面的空间和隐藏的门。 到目前为止,我已经设法弄清楚如何在触发器上呈现“秘密墙”GO无效,所以它消失了,但这并不会产生我想要的视觉效果。 正如我所说的那样,我仍在努力开发编码器的思维方式,所以虽然我已经做了很多研究来解决这个问题,但很多结果我都不太清楚。 这是我的代码: using System.Collections; using System.Collections.Generic; using UnityEngine; public class SecretDoor1 : MonoBehaviour { void OnTriggerEnter2D (Collider2D SecretDoorTrig) { if (SecretDoorTrig.gameObject.tag == “Player”) { GetComponent ().enabled = false; } else { GetComponent ().enabled = true; } } void OnTriggerExit2D (Collider2D SecretDoorTrig) { if (SecretDoorTrig.gameObject.tag == “Player”) { GetComponent ().enabled = […]