草庐IT

graphics2d

全部标签

c# - 使用 LINQ 将 2D 网格转换为 'diamond' - 这可能吗?

前几天我需要一种算法将二维网格变成菱形(通过有效旋转45度),这样我就可以将对角线序列作为平面可枚举来处理,如下所示:1231456=>42789753869我的算法如下:publicstaticIEnumerable>RotateGrid(IEnumerable>grid){intbound=grid.Count()-1;intupperLimit=0;intlowerLimit=0;Collection>rotated=newCollection>();for(inti=0;irow=newCollection();for(intj=upperLimit,k=lowerLimit;

c# - Box2D body 速度上限?

我有一个质量为10的物体,程序的每个循环我都使用简单方法对其施加100的力;Vector2force=newVector2(0,1)*100;bod.ApplyForce(force,bod.GetWorldCenter());它工作得很好,加速等等,但一旦速度达到10(我假设是100/10),它就不会再快了。我无论如何都不是物理学家,但我确实记得body应该不断加速,就像在重力作用下一样。这个速度限制是Box2D做事方式的结果,还是我真的搞砸了?另外,我该怎么做才能修复它。注意:如果我使用ApplyLinearImpulse而不是ApplyForce,我会得到相同的有限速度更新:我很

c# - 在 Unity 2D 中拖动对象

我一直在寻找适用于Unity2D的对象拖动脚本。我在网上找到了一个很好的方法,但它似乎只适用于Unity3D。这对我不利,因为我正在制作2D游戏并且它不会以这种方式与“墙壁”发生碰撞。我曾尝试将其重写为2D,但使用Vectors时遇到了错误。如果你能帮我把它改写成二维的,我会很高兴。这是在3D中运行的代码:usingUnityEngine;usingSystem.Collections;[RequireComponent(typeof(BoxCollider))]publicclassDrag:MonoBehaviour{privateVector3screenPoint;privat

c# - System.Drawing.Graphics.DrawString - "Parameter is not valid"异常

有时,Microsoft的异常消息毫无帮助,令人恼火。我创建了一个漂亮的小MVC方法来呈现文本。方法体如下。当它到达“DrawString”方法时,我得到一个异常抛出说“参数无效”。请注意,据我所知,字体构造正确(我只是使用10pt的Arial),矩形大小为正且看起来有效,画笔为白色SolidBrush,格式标志不影响输出;也就是说,如果我从调用中排除格式标志,我仍然会收到错误消息。DrawString调用就在底部附近。publicActionResultRenderText(stringfontFamily,floatpointSize,stringforeColor,stringb

c# - 什么是适用于 2D 点结构的 `GetHashCode()` 算法(避免冲突)

考虑以下代码:structVec2:IEquatable{doubleX,Y;publicboolEquals(Vec2other){returnX.Equals(other.X)&&Y.Equals(other.Y);}publicoverrideboolEquals(objectobj){if(objisVec2){returnEquals((Vec2)obj);}returnfalse;}//thiswillreturnthesamevaluewhenX,YareswappedpublicoverrideintGetHashCode(){returnX.GetHashCode()

c# - CLR 无法从 COM 上下文 0x3b2d70 转换到 COM 上下文

在调试应用程序时出现以下错误。TheCLRhasbeenunabletotransitionfromCOMcontext0x3b2d70toCOMcontext0x3b2ee0for60seconds.Thethreadthatownsthedestinationcontext/apartmentismostlikelyeitherdoinganonpumpingwaitorprocessingaverylongrunningoperationwithoutpumpingWindowsmessages.Thissituationgenerallyhasanegativeperforma

P2-Net:用于2D像素与3D点匹配的局部特征的联合描述符和检测器(ICCV 2021)

1)论文:P2-Net:Jointdescriptionanddetectionoflocalfeaturesforpixelandpointmatching2)论文地址:https://openaccess.thecvf.com/content/ICCV2021/papers/Wang_P2-Net_Joint_Description_and_Detection_of_Local_Features_for_Pixel_ICCV_2021_paper.pdf3)代码地址:https://github.com/BingCS/P2-Net4)论文来源:ICCV20215)论文作者:BingWang

c# - C# 中的 2D 游戏编程教程

我想学习如何使用C#编写2D游戏。面向初学者、为C#编写并且最好使用GDI+(或同样简单的东西)的最佳教程是什么?我依靠这个社区的经验引导我走向最佳。 最佳答案 书籍Beginning.NETGameProgrammingBeginningC#GameProgramming链接Coding4Fun是一个很棒的.NET资源,其中包含许多用户创建的游戏。他们还有一个book和一个2-DgameprimerTutorialListingatC#cornerC#GameTutorialforBeginners(video)Linktomor

c# - 使用 Graphics.DrawImage() 绘制带透明度/Alpha channel 的图像

我正在复制图像。(我的实际代码是调整图像大小,但这与我的问题无关。)我的代码看起来像这样。Imagesrc=...using(Imagedest=newBitmap(width,height)){Graphicsgraph=Graphics.FromImage(dest);graph.InterpolationMode=InterpolationMode.HighQualityBicubic;graph.DrawImage(src,0,0,width,height);dest.Save(filename,saveFormat);}除非src是从具有透明胶片(例如GIF)或alphach

c# - 从 2D 到 3D 的运动

谁能给我一些意见或建议我需要找出照片中的物体从一个位置移动到另一个位置的程度(实际上我需要计算相机在两张图像之间移动了多少,但是因为物体将保持静止并且只是在其上旋转Y轴我认为移动图像会更容易)。与此示例几乎相同,但没有那么复杂。所以我拍摄了rubiks立方体的第一张照片,并按照此处的示例在立方体上选择了4个点该图像是Texture2D,蓝色圆圈表示用户选择的立方体正面的4个点。这4个点存储在列表中,下一个图像被加载,看起来像这样再次,用户必须选择与之前相同的面(白色面)的4个点。然后将这4个点存储到一个新的列表中。所以现在我有两个列表,我需要计算“整个正面”从图像1移动(旋转/缩放/平