问题标签 [hittest]
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.
javascript - 确定两个点是否在javascript中一条线的同一侧
假设我有两个点代表一条线 A,例如:
我还有另外两点 B 和 C,例如:
我如何确定 B 和 C 是否都在 A 线的同一侧?为了添加一点上下文,我正在尝试对六边形进行命中测试,其中 B 是六边形的中心点,C 是当前鼠标位置,A 是六边形的每一行。所有这些点本质上都是像素坐标,其中 0,0 是左上角。
我不需要这个速度很快,我只是想创建尽可能简单的六边形命中测试算法。我的理论是,如果我可以确定 C 与 B 位于六边形每条线的同一侧,则命中测试成功。我已经阅读了几种数学算法来做到这一点,但它们似乎总是在不同类型的坐标系中,我正在努力将它翻译成在 javascript 中可用的东西。
编辑:这是我的实际 Hexagon 函数,给出了下面的答案。这个问题的答案在更新函数中。
为了确定同边性,我将 B 和 C 的结果相乘,如果结果 > 0,那么它们要么都是正面的,要么都是负面的。我正在使用 setInterval 在循环上将六边形渲染并更新到画布中。
objective-c - 如何在给定 CGPoint 的情况下获取 UIView?
我正在尝试找到一种方法来获取特定UIView
给定的CGPoint
. 简而言之,我想做一个命中测试。
例如,我有一个UIView
具有许多尺寸小于 parent 的子视图UIView
。我想要做的是,当touchMoved
事件发生时,检查触摸的子视图周围的其他子视图。为此,能够将 a 转换CGPoint
为 subview会很好UIView
。
我是 Objective-C 的新手。有什么好的方法吗?任何建议都会非常有帮助。:)
image - Xcode CGRect与多个CGRect冲突?
我创建了一个游戏,其中我有一个由多个高度不同的图像组成的地板..(所以地板不是平的)而不是打开一百万个 if 语句:
if (CGRectIntersectsRect(ball1.frame, floor1.frame)) { }
if (CGRectIntersectsRect(ball1.frame, floor2.frame)) { }
if (CGRectIntersectsRect(ball1.frame, floor3.frame)) { }
if (CGRectIntersectsRect(ball1.frame, floor4.frame)) { }
//等等...
.
有没有办法可以使用 1 if 语句检查碰撞?所有的 UIImageView 地板都被命名为“地板 1、地板 2、地板 3、地板 4,依此类推”
谢谢!
旁注:如果我想使用 CGRectIntersect 代码并旋转图像,我正在检查交叉点,因为它似乎仍然只检查图像帧的碰撞,所以无论我旋转它与否,它都会在同一个地方发生碰撞。我也可以旋转框架来解决这个问题,还是我需要使用不同的代码,如果是的话,什么代码?
silverlight - 横向 VisualTreeHelper Hit 测试的问题
当用户在屏幕上滑动手指时,我使用 FindElementsInHostCoordinates 方法来查找元素。我注意到如果手机是纵向的,它会做出反应。例如 - 当我向上移动手指时,它会向下移动,当我向右移动手指时,它会向左移动。如果我在手机的下半部分,它也只会做一些事情。所以我认为如果找到我在横向中击中的坐标,但就像我在纵向中一样。有谁知道为什么会这样?
wpf - 列表视图上的文本块:如何忽略文本块中的点击并让列表视图处理它们
我有一个显示很多信息的列表视图,但是当它为空时,我想在它上面覆盖一个文本块,上面写着“没有要显示的信息”或“做 bla-bla-bla 来添加信息”。
列表视图设置为响应鼠标单击,但现在如果我单击文本块,这些事件将被路由到文本块。我怎样才能让这些事件转到列表视图呢?
ios - 在 iOS 中绘制线条时的命中检测
我想允许用户以这样一种方式绘制曲线,即没有一条线可以穿过另一条线,甚至是它自己。绘制曲线是没有问题的,我什至发现我可以通过向前和向后跟踪线的节点然后关闭路径来创建一个封闭的并且仍然很像线的路径。
不幸的是,iOS 只提供了一个点是否包含在封闭路径中的测试(containsPoint: 和 CGPathContainsPoint)。不幸的是,用户可以很容易地将手指移动得足够快,以至于触摸点落在现有路径的两侧,而实际上并没有被该路径包含,因此测试触摸点毫无意义。
我找不到路径方法的任何“交叉点”。
关于如何完成此任务的任何其他想法?
c# - 命中测试 WPF 3D 模型零件
我有一个大的ModelVisual3D
(例如汽车),它被分成许多较小的GeometryModel3D
物体(例如轮胎、座椅、车轮等)。
我想在ModelVisual3D
单击鼠标时进行测试并确定哪个GeometryModel3D
被击中。我可以测试我的汽车(ModelVisual3D
),但无法确定汽车的哪个部分(GeometryModel3D
对象)被点击。
有人知道在处理MouseLeftButtonDown
事件(或任何其他鼠标事件)时如何确定模型的确切部分吗?
cocoa-touch - 用于 backBarButton 项、UIBarButtonItem 的 Hittest
我正在尝试确定何时在导航应用程序的子层中按下 UIBackButton。会使用 HitTest 吗?我看过对 HitTest 的引用,但不确定它是什么以及如何编写代码。非常感谢任何帮助。谢谢!!
silverlight - 全面的 Silverlight 渲染资源?
是否有任何参考资料可以全面了解 Silverlight 如何在应用程序中呈现控件?我需要知道的事情:
控件 X 的边界矩形是什么?点 P 在控制 X 内吗?控件 X 对用户可见吗?如何手动复制 Silverlight 的命中测试?
渲染和命中测试行为似乎受到控件 X 及其所有容器直至可视树根的大量属性的控制。是否有任何全面的参考资料可以帮助我弄清楚所有这些是如何工作的?
flash - 如何在 AS3 中对两个动态添加的对象进行命中测试?
我有一个动态添加到舞台的对象网格,对象是红色类或蓝色类,我如何对这些类执行命中测试?我希望蓝色物体在碰到红色物体后消失。请帮助,如果您有视频或教程链接,将不胜感激。谢谢。