Exemple #1
0
    // obj的所有父节点中是否允许射线选中obj
    // bindParentList是当前激活的已绑定的仅父节点区域穿透的列表
    // passedParentList是bindParentList中射线已经穿透的父节点
    protected bool isParentPassed(IMouseEventCollect obj, List <IMouseEventCollect> bindParentList, List <IMouseEventCollect> passedParentList)
    {
        int parentCount = bindParentList.Count;

        for (int i = 0; i < parentCount; ++i)
        {
            // 有父节点,并且父节点未成功穿透时,则认为当前窗口未相交
            if (obj.isChildOf(bindParentList[i]) && !passedParentList.Contains(bindParentList[i]))
            {
                return(false);
            }
        }
        return(true);
    }