首页> 中国专利> 基于随机算子发生器的槽状交错层理花纹自动填充方法

基于随机算子发生器的槽状交错层理花纹自动填充方法

摘要

本发明提供了基于随机算子发生器的槽状交错层理花纹自动填充方法,根据待填充区域边界及自定义中心轴,确定三个绘制中心点;利用随机函数生成器得到每一次填充过程中的中心点坐标和绘制半径,将参数及随机度等传入随机算子发生器,求取与待填充边界相交的弧段;将新的填充区添加到已填充区列表并更新;依次以中左右的顺序进行循环绘制,得到铺满整个填充区域的槽状交错层理图案。本发明利用随机函数及算子映射理论,并结合具有随机特征的槽状交错层理的特点,通过用户界面进行各参数及随机度的控制,具有很好的灵活性和可控性,可自动绘制和填充任意区域边界的槽状交错层理图案,符合国家及行业标准规范要求,可应用于数字地质图件自动编绘。

著录项

  • 公开/公告号CN105574908A

    专利类型发明专利

  • 公开/公告日2016-05-11

    原文格式PDF

  • 申请/专利权人 中国地质大学(武汉);

    申请/专利号CN201510937015.5

  • 申请日2015-12-15

  • 分类号G06T11/40;

  • 代理机构武汉华旭知识产权事务所;

  • 代理人刘荣

  • 地址 430074 湖北省武汉市洪山区鲁磨路388号

  • 入库时间 2023-12-18 15:12:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-11-09

    授权

    授权

  • 2016-06-08

    实质审查的生效 IPC(主分类):G06T11/40 申请日:20151215

    实质审查的生效

  • 2016-05-11

    公开

    公开

说明书

技术领域

本发明涉及一种基于随机算子发生器的槽状交错层理花纹自动填充方法,属于数字 地质制图领域。

背景技术

在数字地质制图的过程中,带有随机特性的面状花纹符号的自动绘制及填充一直是 一个难点问题。这类随机型区域面状花纹符号的填充面临边界随机变化和图案本身具有 随机性等特点,其花纹符号的绘制及填充不但受到自身图案特征的限制,同时还必须符 合国家及行业标准的约束和控制。

交错层理通常也称为斜层理。它是由一系列斜交于层系界面的纹层组成,斜层系可 以彼此重叠、交错、切割的方式组合。其特点是细层理大致规则地与层间的分隔面(主 层理)呈斜交的关系,上部与主层理截交,下部与主层理相切。斜层系互相平行或彼切 割构成不同形态的交错层理。交错层理根据层系与上下界面的形状和性质通常可以分为 板状交错层理,楔状交错层理,槽状交错层理等。槽状交错层理是交错层理中最为复杂 的一种类型,其特点是单个层系厚度变化快,各层系底界下凹,具明显的槽状侵蚀底界。 层系中的细层亦可大致平行层系底面,也可能与之相交,而且各层系倾斜方向多变,具 有明显的随机特性。

随机函数及分形理论在地图制图中取得了一些应用,尤其对于具有随机特性图形的 表达具有明显的优势。法国数学家蒙德尔罗布采用瑞典数学家柯克发现的“柯克曲线” 作为思考海岸线问题的数学模型,通过深入研究并引进了分数维概念,1977年正式将具 有分数维的图形称为“分形”,并建立了以这类图形为对象的数学分支——分形几何。 现实空间和地图上有许多类似海岸线那样的不规则曲线,随机函数及分形几何为这类曲 线的度量提供了数学工具。算子理论是对传统函数定义的扩展,它将函数对数集到数集 的映射关系推广到空间到空间的映射,它除了使得经典分析的概念和方法更加系统外, 又能使问题的认识得到深化和拓广,从而能应用于更广泛的对象。因此,算子理论对地 理及地质空间数据集的映射关系可得到更加系统全面的表达。但是,对于具有随机特性 的面状花纹的生成绘制及区域填充,这些理论及方法还没有得到很好的应用。

地质花纹图案的绘制及填充必须符合相关国家标准的限制,这无疑给此类地质图件 的机助编绘带来了更大的困难。目前,国内外主要的地质及地理制图软件包括AutoCAD、 ArcGIS及MapGIS等,这些软件都可较好支持大量规则符号的生成、绘制及自动填充。 但对于具有随机特性的面状花纹图案的自动生成及填充,迄今为止大多采用手工绘制, 工序复杂且其随机性不易表达。槽状交错层理就是具有随机特性的面状花纹图案中的一 种,这类随机型面状图案的绘制及填充面临图案本身随机变化和填充区域边界复杂多变 的双重困难,其绘制及填充算法受到自身特点、国家及行业标准的多重约束控制。

鉴于上述分析的具有随机特性的槽状交错层理的特征,以及现有随机函数、分形几 何及算子理论的研究现状,有必要提出一种专门针对具有随机特性的槽状交错层理的花 纹图案自动绘制及填充方法。

发明内容

为了解决现有技术的不足,本发明提供了一种基于随机算子发生器的槽状交错层理 花纹自动填充方法,利用随机函数及算子映射理论,并结合具有随机特征的槽状交错层 理的特点,通过用户界面进行各参数及随机度的控制,具有很好的灵活性和可控性,可 以自动绘制和填充任意边界区域的槽状交错层理,符合国家标准及行业标准的规范和要 求,可很好地应用于数字地质图件的自动编绘。

本发明为解决其技术问题所采用的技术方案是:提供了一种基于随机算子发生器的 槽状交错层理花纹自动填充方法,包括以下步骤:

(1)输入待填充区F,将与地层层理主体弯曲方向相一致的直线设为中心轴线;

(2)确定待填充区F的边界矩形,在中心轴正方向一侧射线上选取一点pM作为 中间中心点,其坐标为(xM,yM),在过pM且垂直于中心轴线的直线上,分别选取中心 轴线左侧的点pL和中心轴线右侧的点pR作为左中心点和右中心点,坐标分别为(xL,yL) 和(xR,yR);分别以pL、pR和pM为圆心做待填充区F的外接圆,确定3个外接圆的半 径分别为RL、RR和RM

(3)设置参数,所述参数包括半径变化步长d,pL、pR和pM分别对应的循环绘 制次数NL、NM和NR,以及位置随机度pR和步长随机度sR;初始化左绘制是否结束 的标识变量flagL=1、中绘制是否结束的标识变量flagM=1、右绘制是否结束的标识变 量flagR=1,初始化待分割区Fc=F,初始化有效绘制次数t=0;

(4)以中间中心点pM为绘制中心,初始化i=0,执行步骤(4-1)至步骤(4-9) 进行绘制:

(4-1)根据中间中心点pM,利用随机数生成器Random(μ,σ)计算得到第i次的绘 制中心坐标p'M(x'M,y'M)和绘制半径RM,其中,

pM:xM=Random(xM,pR)yM=Random(yM,pR)

dc=Random(d,sR)RM=RM-dc

(4-2)以p'M为圆心,做半径为RM的圆弧段,求取与待分割区Fc的交点个数nM

(4-3)如果nM==0,则令flagM=0;

(4-4)判断flagM==0是否成立,不成立则转下一步,如果成立则转步骤(4-8);

(4-5)以圆弧段为分界将待分割区Fc划分为F和F两部分,将F添加到已分割 区对象列表listF中,即listF[t]=F

(4-6)以圆弧段为分界将待填充区F划分为F'和F'两部分,并与列表listF中所 有对象做相交计算,擦除每个区对象弧段内侧部分,并更新列表listF;

(4-7)更新待分割区Fc,令Fc=F';

(4-8)令i=i+1,t=t+1;

(4-9)判断i<NM是否成立,如果成立则转步骤(4-1)继续绘制,否则转下一步;

(5)以左侧中心点pL为绘制中心,初始化j=0,执行步骤(5-1)至步骤(5-9) 进行绘制:

(5-1)根据左侧中心点pL,利用随机数生成器Random(μ,σ)计算得到第j次的绘 制中心坐标p'L(x'L,y'L)和绘制半径RL,其中,

pL:xL=Random(xL,pR)yL=Random(yL,pR)

dc=Random(d,sR)RL=RL-dc

(5-2)以p'L为圆心,做半径为RL的圆弧段,求取与待分割区Fc的交点个数nL

(5-3)如果nL==0,则令flagL=0;

(5-4)判断flagL==0是否成立,不成立则转下一步,如果成立则转步骤(5-8);

(5-5)以圆弧段为分界将待分割区Fc划分为F和F两部分,将F添加到已分割 区对象列表listF中,即listF[t]=F

(5-6)以圆弧段为分界将待填充区F划分为F'和F'两部分,并与列表listF中所 有对象做相交计算,擦除每个区对象弧段内侧部分,并更新列表listF;

(5-7)更新待分割区Fc,令Fc=F';

(5-8)令j=j+1,t=t+1;

(5-9)判断j<NL是否成立,如果成立则转步骤(5-1)继续绘制,否则转下一步;

(6)以中间中心点pM为绘制中心,初始化k=0,执行步骤(6-1)至步骤(6-9) 进行绘制:

(6-1)根据中间中心点pR,利用随机数生成器Random(μ,σ)计算得到第k次的绘 制中心坐标p'R(x'R,y'R)和绘制半径RR,其中,

pR:xR=Random(xR,pR)yR=Random(yR,pR)

dc=Random(d,sR)RR=RR-dc

(6-2)以p'R为圆心,做半径为RR的圆弧段,求取与待分割区Fc的交点个数nR

(6-3)如果nR==0,则令flagR=0;

(6-4)判断flagR==0是否成立,不成立则转下一步,如果成立则转步骤(6-8);

(6-5)以圆弧段为分界将待分割区Fc划分为F和F两部分,将F添加到已分割 区对象列表listF中,即listF[t]=F

(6-6)以圆弧段为分界将待填充区F划分为F'和F'两部分,并与列表listF中所 有对象做相交计算,擦除每个区对象弧段内侧部分,并更新列表listF;

(6-7)更新待分割区Fc,令Fc=F';

(6-8)令k=k+1,t=t+1;

(6-9)判断k<NR是否成立,如果成立则转步骤(6-1)继续绘制,否则转下一步;

(7)判断待填充区F是否填充完成,如果表达式flagL==1||flagM==1||flagR==1 成立,则表示填充未完成,转步骤(4)继续填充,否则转下一步;

(8)绘制最终填充结果,构建列表listF中所有区对象,并进行可视化表达,得到 铺满整个待填充区域F的槽状交错层理图案。

所述的随机数生成器Random(μ,σ)为标准C++编译环境提供的标准函数 std::normal_distribution<>Random(μ,σ),函数的输入为μ和σ,函数的输出为符合高斯 分布的以μ为均值、σ为方差的随机数。

步骤(1)所述的中心轴线的方向从地层层理弯曲的背侧指向内侧。

步骤(2)所述的半径RL、RM、RR满足以三个中心点为圆心的弧段与待填充区F 远离中心点一侧刚好有交点存在。

所述步骤(3)所述的位置随机度pR和步长随机度sR由随机数生成器Random(μ,σ) 求得,其基本值和随机度持续更新。

本发明基于其技术方案所具有的有益效果在于:

(1)本发明利用随机函数及算子映射理论,设计并实现了具有随机特征的槽状交 错层理花纹自动填充方法,将随机函数及算子理论应用在了数字地质制图中槽状交错层 理的自动填充及绘制中,填充结果符合国家及及行业标准的表达要求;

(2)本发明通过界面控制和随机函数的应用,既保证了得到的槽状交错层理满足 其随机特性,又具有良好的可控性,而且每一次参数调整或界面响应都会触发随机函数 生成器,使得填充效果更加多变和丰富,每一次的填充形态保持整体相似但绝不重复;

(3)本发明的填充结果为槽状交错层理分割的独立的区对象,得到了槽状交错层 理的框架,为进一步岩性花纹的填充提供了基本层理特征及框架;

(4)本发明提供的方法可扩展到其它相似形态的随机型图案自动绘制及填充中, 支持自动填充并生成高质量的地理和地质类具有随机特征的面状图案。

附图说明

图1是本发明中槽状交错层理花纹自动填充的流程图。

图2是本发明中通过填充区域边界确定中心点坐标的示意图。

图3是本发明中第t次填充的过程示意图:(a)第i次分割前初始状态;(b)用第t 次新绘制的弧段将待分割区Fc划分为F和F两部分,并将F添加到已分割区对象列表 listF中;(c)用该弧段将整个填充区F划分为F'和F',并擦除列表listF中每个区对象 分布于弧段内侧的部分;(d)更新列表listF,并令Fc=F'。

图4是本发明中界面控制参数说明及对应生成结果图:(a)为控制对话框示意图, 分别控制左、中、右中心点的基本坐标pL、pM、pR,对应的绘制次数NL、NM、NR, 基本半径变化步长d,坐标位置随机度pR和步长变化随机度sR;(b)为对应于对话框 参数输入下的任意区域边界的槽状交错层理填充结果。

图5是本发明中本方法的生成效果及应用实例,(a)为折线边界、向斜填充效果, (b)为曲线边界、背斜填充效果,(c)为灰岩槽状交错层理效果,(d)为砂岩槽状交 错层理效果,(e)为砾岩槽状交错层理效果,(f)为泥岩槽状交错层理效果。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

本发明提供了一种基于随机算子发生器的槽状交错层理花纹自动填充方法,首先根 据待填充区域边界及自定义中心轴,自动计算确定三个绘制中心点;然后利用随机函数 生成器得到每一次填充过程中的中心点坐标和绘制半径,将获取的各参数及随机度等传 入随机算子发生器,通过从点到空间弧段的映射,求取与待填充边界相交的弧段;接着 根据区的拓扑运算,将本次绘制得到的新的填充区添加到已填充区列表,并且更新当前 待填充区及历史填充列表;对三个中心点,依次以中、左、右的顺序进行循环绘制,最 后便可以得到铺满整个填充区域的槽状交错层理。参照图1,本方法具体包括以下步骤:

(1)输入待填充区F,将与地层层理主体弯曲方向相一致的直线设为中心轴线(如 图2所示);

(2)确定待填充区F的边界矩形,在中心轴正方向一侧射线上选取一点pM作为 中间中心点,其坐标为(xM,yM),在过pM且垂直于中心轴线的直线上,分别选取中心 轴线左侧的点pL和中心轴线右侧的点pR作为左中心点和右中心点,坐标分别为(xL,yL) 和(xR,yR);分别以pL、pR和pM为圆心做待填充区F的外接圆,确定3个外接圆的半 径分别为RL、RR和RM(如图2所示);

(3)设置参数,所述参数包括半径变化步长d,pL、pR和pM分别对应的循环绘 制次数NL、NM和NR,以及位置随机度pR和步长随机度sR;界面参数设计如图4(a) 所示;初始化左绘制是否结束的标识变量flagL=1、中绘制是否结束的标识变量 flagM=1、右绘制是否结束的标识变量flagR=1,初始化待分割区Fc=F,初始化有效 绘制次数t=0;

(4)参照图3(a),以中间中心点pM为绘制中心,初始化i=0,执行步骤(4-1) 至步骤(4-9)进行绘制,结合图1中随机算子发生器部分及图3填充过程示意图作如 下详细说明:

(4-1)根据中间中心点pM,利用随机数生成器Random(μ,σ)计算得到第i次的绘 制中心坐标p'M(x'M,y'M)和绘制半径RM,其中,

pM:xM=Random(xM,pR)yM=Random(yM,pR)

dc=Random(d,sR)RM=RM-dc

(4-2)以p'M为圆心,做半径为RM的圆弧段,求取与待分割区Fc的交点个数nM

(4-3)如果nM==0,则令flagM=0;

(4-4)判断flagM==0是否成立,不成立则转下一步,如果成立则转步骤(4-8);

(4-5)以圆弧段为分界将待分割区Fc划分为F和F两部分,将F添加到已分割 区对象列表listF中,即listF[t]=F(如图3(b)所示);

(4-6)以圆弧段为分界将待填充区F划分为F'和F'两部分,并与列表listF中所 有对象做相交计算,擦除每个区对象弧段内侧部分,并更新列表listF;(如图3(c)所 示);

(4-7)更新待分割区Fc,令Fc=F'(如图3(d)所示);

(4-8)令i=i+1,t=t+1;

(4-9)判断i<NM是否成立,如果成立则转步骤(4-1)继续绘制,否则转下一步;

(5)与步骤(4)类似,以左侧中心点pL为绘制中心,初始化j=0,执行步骤(5-1) 至步骤(5-9)进行绘制:

(5-1)根据左侧中心点pL,利用随机数生成器Random(μ,σ)计算得到第j次的绘 制中心坐标p'L(x'L,y'L)和绘制半径RL,其中,

pL:xL=Random(xL,pR)yL=Random(yL,pR)

dc=Random(d,sR)RL=RL-dc

(5-2)以p'L为圆心,做半径为RL的圆弧段,求取与待分割区Fc的交点个数nL

(5-3)如果nL==0,则令flagL=0;

(5-4)判断flagL==0是否成立,不成立则转下一步,如果成立则转步骤(5-8);

(5-5)以圆弧段为分界将待分割区Fc划分为F和F两部分,将F添加到已分割 区对象列表listF中,即listF[t]=F

(5-6)以圆弧段为分界将待填充区F划分为F'和F'两部分,并与列表listF中所 有对象做相交计算,擦除每个区对象弧段内侧部分,并更新列表listF;

(5-7)更新待分割区Fc,令Fc=F';

(5-8)令j=j+1,t=t+1;

(5-9)判断j<NL是否成立,如果成立则转步骤(5-1)继续绘制,否则转下一步;

(6)与步骤(4)类似,以中间中心点pM为绘制中心,初始化k=0,执行步骤(6-1) 至步骤(6-9)进行绘制:

(6-1)根据中间中心点pR,利用随机数生成器Random(μ,σ)计算得到第k次的绘 制中心坐标p'R(x'R,y'R)和绘制半径RR,其中,

pR:xR=Random(xR,pR)yR=Random(yR,pR)

dc=Random(d,sR)RR=RR-dc

(6-2)以p'R为圆心,做半径为RR的圆弧段,求取与待分割区Fc的交点个数nR

(6-3)如果nR==0,则令flagR=0;

(6-4)判断flagR==0是否成立,不成立则转下一步,如果成立则转步骤(6-8);

(6-5)以圆弧段为分界将待分割区Fc划分为F和F两部分,将F添加到已分割 区对象列表listF中,即listF[t]=F

(6-6)以圆弧段为分界将待填充区F划分为F'和F'两部分,并与列表listF中所 有对象做相交计算,擦除每个区对象弧段内侧部分,并更新列表listF;

(6-7)更新待分割区Fc,令Fc=F';

(6-8)令k=k+1,t=t+1;

(6-9)判断k<NR是否成立,如果成立则转步骤(6-1)继续绘制,否则转下一步;

(7)判断待填充区F是否填充完成,如果表达式flagL==1||flagM==1||flagR==1 成立,则表示填充未完成,转步骤(4)继续填充,否则转下一步;

(8)绘制最终填充结果,构建列表listF中所有区对象,并进行可视化表达,得到 铺满整个待填充区域F的槽状交错层理图案。如图4(b)所示是对应于图4(a)参数 设置的任意区域边界的槽状交错层理填充效果。通过对中心轴线方向和其他参数设置的 改变,可以得到如图5(a)和(b)所示的效果图。

所述的随机数生成器Random(μ,σ)为标准C++编译环境提供的标准函数 std::normal_distribution<>Random(μ,σ),函数的输入为μ和σ,函数的输出为符合高斯 分布的以μ为均值、σ为方差的随机数。

步骤(1)所述的中心轴线的方向从地层层理弯曲的背侧指向内侧。

步骤(2)所述的半径RL、RM、RR满足以三个中心点为圆心的弧段与待填充区F 远离中心点一侧刚好有交点存在。

所述步骤(3)所述的位置随机度pR和步长随机度sR由随机数生成器Random(μ,σ) 求得,其基本值和随机度持续更新且可控。

利用本发明所述方法,自动填充任意边界的具有随机特征的槽状交错层理花纹图 案,通过界面参数的控制和随机函数的应用,既保证了得到的槽状交错层理图案满足其 随机特性,又具有良好的可控性。而且每一个槽状交错层理为独立的区对象,得到了最 基本、最重要的槽状交错层理结构,为进一步岩性花纹的填充提供了基本层理特征及框 架。在此结构框架上可进行更进一步的岩性花纹的填充,如图5(c)、(d)、(e)、(f)所 示,其中其它规则性符号为现有技术生成的图案。

以上实施例仅供说明本发明之用,而非对本发明的限制,有关技术领域的技术人员, 在不脱离本发明的精神和范围的情况下,还可以作出各种变换或变型,因此所有等同的 技术方案,都落入本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号