思考“手绘家谱”的算法

1.每个节点分别延伸其 配偶 子女,将新延伸出的节点加入“待延伸”队列。
最优子结构以及队列
2.不断从队列中取出节点进行“步骤1”的操作。 每次延伸出的节点类型可以选择,比如到头了就可以不再延伸父母节点。
2.1.当全部成员延伸完毕时,可以考虑合并一些无歧义的母子关系联系。比如一个家庭是一夫一妻,那么擦除其下所有子女与母亲的连线,只保留与父亲的连线(子随父姓)。
化简前后的对比

3.配偶:现任使用实线连接,前任使用虚线连接。
4.节点格式: 称呼|身份证姓名(普及曾用名),比我姥爷的节点姥爷|张银(马宝河)在村子里提张银没人知道,一说马宝河就清楚了;因为姥爷是过继给本村的马姓姑父为子,故而本村人只知道其马氏名讳,鲜知其祖宗源流。这就属于普及的曾用名。
4.1.从“我”对成员节点的“称呼”,可以得知该成员的性别,进而判断其之于子节点是父或母。
4.2.一般从姓氏上也能看出父母(子随父姓)。

5.称呼:以“我”为准。可以结合“称呼”、“三姑六婆”等APP进行计算。
称呼 三姑六婆

6.一般情况下,旁系血亲节点的配偶节点不再向上延伸父母节点(偶有特例,比如老婶开诊所,其母同住,我每次去打针,都会见面;这样的情况,就有必要延伸一级)。所以不必担心旁系血亲及其配偶双方父母同示一图带来的连线混乱。

7.“我”子女的媳婿之父母需要示之图上,“我”配偶的父母、兄弟也当示之图上。这些很重要的。
(现在说还有点儿早,毕竟还没女朋友~)

普及《婚姻法》
三代以内旁系血亲是指:伯、叔、姑、舅、姨、侄子 ( 女 ) 、外甥、外甥女、堂兄弟姐妹、姑舅表兄弟姐妹、姨表兄弟姐妹等。双胞胎、多胞胎也属于旁系血亲。我国婚姻法禁止直系血亲和三代以内旁系血亲通婚。

8.考虑未来可以为节点加上头像,那么黑白头像可作为已殁标记。

9.过继关系使用箭头表示。
过继关系

10.关于成图美观问题
曲线的美
目前看起来,曲线会比直线优美一些。可以尝试。

11.如有余力,考虑实现成一个手机APP,只需输入一些文字数据,便能自动生成一张家谱图。
项目地址:family-tree-generate
目前推荐使用免费的ProcessOn制作家谱图。其页面大小可无限扩展,线型、可选箭头、圆形(基础图形)等支持较佳,成图美观。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值