public bool HitTest(Container container, ref Vector2 localPoint) { localPoint = container.GetHitTestLocalPoint(); int x = Mathf.FloorToInt((localPoint.x / scaleX - offsetX) * _data.scale); int y = Mathf.FloorToInt((localPoint.y / scaleY - offsetY) * _data.scale); if (x < 0 || y < 0 || x >= _data.pixelWidth) { return(false); } int pos = y * _data.pixelWidth + x; int pos2 = pos / 8; int pos3 = pos % 8; if (pos2 >= 0 && pos2 < _data.pixelsLength) { return(((_data.pixels[_data.pixelsOffset + pos2] >> pos3) & 0x1) > 0); } else { return(false); } }
public int HitTest(Container container, ref Vector2 localPoint) { localPoint = container.GetHitTestLocalPoint(); if (rect.Contains(localPoint)) { return(1); } else { return(2); } }
/// <summary> /// /// </summary> /// <param name="container"></param> /// <param name="localPoint"></param> /// <returns></returns> public virtual bool HitTest(Container container, ref Vector2 localPoint) { Camera camera = container.GetRenderCamera(); RaycastHit hit; if (!HitTestContext.GetRaycastHitFromCache(camera, out hit)) return false; if (hit.collider != collider) return false; localPoint = container.GetHitTestLocalPoint(); return true; }
static public int GetHitTestLocalPoint(IntPtr l) { try { FairyGUI.Container self = (FairyGUI.Container)checkSelf(l); var ret = self.GetHitTestLocalPoint(); pushValue(l, true); pushValue(l, ret); return(2); } catch (Exception e) { return(error(l, e)); } }
static int GetHitTestLocalPoint(IntPtr L) { try { ToLua.CheckArgsCount(L, 1); FairyGUI.Container obj = (FairyGUI.Container)ToLua.CheckObject <FairyGUI.Container>(L, 1); UnityEngine.Vector2 o = obj.GetHitTestLocalPoint(); ToLua.Push(L, o); return(1); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
/// <summary> /// /// </summary> /// <param name="container"></param> /// <param name="localPoint"></param> /// <returns></returns> virtual public bool HitTest(Container container, ref Vector2 localPoint) { Camera camera = container.GetRenderCamera(); RaycastHit hit; if (!HitTestContext.GetRaycastHitFromCache(camera, out hit)) { return(false); } if (hit.collider != collider) { return(false); } localPoint = container.GetHitTestLocalPoint(); return(true); }
public bool HitTest(Container container, ref Vector2 localPoint) { localPoint = container.GetHitTestLocalPoint(); int x = Mathf.FloorToInt((localPoint.x / scaleX - offsetX) * _data.scale); int y = Mathf.FloorToInt((localPoint.y / scaleY - offsetY) * _data.scale); if (x < 0 || y < 0 || x >= _data.pixelWidth) return false; int pos = y * _data.pixelWidth + x; int pos2 = pos / 8; int pos3 = pos % 8; if (pos2 >= 0 && pos2 < _data.pixels.Length) return ((_data.pixels[pos2] >> pos3) & 0x1) > 0; else return false; }
public bool HitTest(Container container, ref Vector2 localPoint) { localPoint = container.GetHitTestLocalPoint(); return rect.Contains(localPoint); }
public bool HitTest(Container container, ref Vector2 localPoint) { localPoint = container.GetHitTestLocalPoint(); return(rect.Contains(localPoint)); }