人际关系画布
人际关系模块是云族记的核心,用一张可缩放、可平移的 Canvas 画布呈现整个家族关系网。这一页导览画布上的各项能力——它们对应应用里右下角的工具栏、长按节点弹出的菜单,以及各类弹窗。
两种数据视图
画布右上角可在两种视图间切换,同一份数据、两种看法:
| 视图 | 显示内容 | 适用场景 |
|---|---|---|
| 完整模式(默认) | 本家血亲 + 配偶分身 + 外亲子女,男女子嗣、婚姻连线全部呈现 | 日常查看真实的家族关系网 |
| 父系族谱模式 | 仅本家男性血亲,隐藏配偶、外亲和女性成员 | 想要一份传统意义上的"族谱",只看父系一脉传承 |
族谱模式由服务端单独返回数据(而不是在前端简单隐藏),因此匿名净化、权限裁剪在族谱模式下同样生效;如果某家族对外只开放"近亲可见",外族旁观者在族谱模式下会被直接拒绝,而不是看到裁剪后的残缺谱系。
两种布局方向
画布支持一键切换排列方向,切换时会清空离屏缓存、按新方向重新布局,并自动把视角移回"我"的位置:
- 纵向布局(默认):始祖在最上方,后代一层层向下展开,符合"族谱树"的直觉
- 横向布局:始祖在最左侧,后代向右展开,夫妻在同一列上下叠放——适合代际很深、纵向滚动太长的家族
关系任意匹配
工具栏的「关系匹配」打开一个浮动面板,可以任选画布上的两个人,即时算出他们之间的关系:
- 面板左右各放一个人,在画布上点节点即可填入,想换谁就点谁
- 如果某人在当前家族有多个分身(身份),可以在头像上左右轮播切换,按不同分身来匹配
- 中间同时显示两个方向的称呼:左称右(如"堂哥")和右称左(如"堂弟")
- 画布上会高亮两人之间的关系路径,一眼看清这条关系是怎么走的
- 一键重置,可以继续匹配下一对
它底层调用的就是称呼计算引擎,所以无论关系里隔了几代、几段婚姻,结果都和节点上显示的称呼保持一致。
工具栏能力
右下角展开的工具栏集中了画布的辅助功能:
| 工具 | 作用 |
|---|---|
| 族谱模式切换 | 在完整模式 / 父系族谱模式间切换(激活时图标变绿) |
| 布局方向切换 | 纵向 / 横向布局一键互换 |
| 搜索 | 按姓名搜索成员,命中后定位到对应节点 |
| 关系匹配 | 打开上面介绍的任意两人关系匹配面板 |
| 定位 | 一键回到当前登录者("我")在这棵树上的位置,并带涟漪提示 |
| 节点样式 | 切换节点卡片的尺寸 / 展示样式,在"信息多"与"看得全"之间取舍 |
| 缩放滑块 | 拖动连续缩放画布;也支持双指捏合 |
| 网格设置 | 开关辅助可视化元素(见下) |
| 导出图片 | 把整张族谱导出为图片,大家族支持分页打包导出 |
| 数据导入导出 | CSV / GEDCOM 的导入与全族导出 |
| 使用说明(序言) | 画布操作与图例说明 |
网格设置里除了背景网格、间距、坐标原点、外围边框(偏调试用途)外,最实用的是近亲识别矩形:默认开启,会以当前观察者的视角,框出与自己有近亲关系的范围(约四层),在配偶家、外亲家视角下也能看清"哪些人算近亲"。
画布交互
- 双指缩放:以两指触点中心为焦点放大缩小
- 单指平移:拖动浏览比屏幕大得多的族谱
- 点击节点:聚焦并查看该成员
- 长按节点:弹出该节点的操作菜单(见下)
- 离屏渲染缓存:已绘制区域被缓存,平移回看时不重复计算,保证较大家族也流畅
- 世界坐标与屏幕坐标实时换算,缩放平移后点击命中依然准确
长按节点能做什么
长按任意节点弹出菜单,菜单项会根据你的角色和这个节点的状态(本家 / 配偶 / 外亲、是否已认证、是不是你本人)智能显隐,主要包括:
- 添加上级 / 祖先 / 子嗣 / 配偶:从该节点出发扩展家族
- 编辑资料 / 查看资料:维护或浏览生卒、排行、生平、头像等
- 认领身份:把自己认领到对应的未认证节点
- 更换绑定:已认证本人可更换绑定的节点
- 分身管理 / 查看全部分身:管理自己在各家族的匿名与主分身,或查看某人的所有身份
- 查看外家:从已认证配偶分身跳转到其本家家族
- 删除成员:仅本族管理员对未认证的本家血亲可用,且删除可恢复
待认领等待区
还没确定父母、暂时挂不到树上的成员,会放在画布一侧的等待区。整理族谱时,可以直接把等待区里的成员拖拽到正确的父母节点下完成上树,避免一开始就纠结完整结构、边录边理。
相关弹窗一览
画布的每类操作都有对应的弹窗组件,各司其职:
- 添加类:添加上级、添加祖先、添加子嗣、添加配偶
- 资料类:编辑资料、查看资料
- 身份类:真人认领、分身(关系)管理
- 家族类:家族访问权限面板(设置开放档位与特批)、家族导航卡片(在本家 / 配偶家 / 外亲家之间跳转)
- 等待区:待认领成员面板
