由电子设备执行的空间曲面求交的方法和电子设备技术

技术编号:27772425 阅读:13 留言:0更新日期:2021-03-23 12:54
本公开提供了一种由电子设备执行的空间曲面求交的方法和电子设备;该空间曲面求交的方法,包括:将两个空间曲面最终转化一个函数系统和与所述函数系统对应的参数空间;将参数空间划分为多个盒子;根据第一判别条件对所有所述盒子进行判定,将不满足所述第一判别条件的盒子滤除,以及对满足所述第一判别条件的盒子通过第二判别条件进行判定;对细分前满足所述第一判别条件且满足所述第二判别条件的盒子,以及细分后满足所述第一判别条件且满足所述第二判别条件的盒子的每个面,通过零维算法进行求解,并对求解后满足要求的盒子按照设定计算精度,追踪逼近盒子中的曲线,并按要求输出交线。

【技术实现步骤摘要】
由电子设备执行的空间曲面求交的方法和电子设备
本公开涉及计算机
,更具体地,涉及一种由电子设备执行的空间曲面求交的方法和电子设备。
技术介绍
在计算机辅助设计中两个几何体的表面求交问题中的隐式曲面之间的求交的已有方法中,目前比较常用的有符号计算方法和数值方法的网格法;符号方法(主要指三角列方法,Groebner基方法,结式方法等),主要是针对多项式系统求解,其可计算规模非常有限,大一点的函数系统在计算过程中的系数累加容易导致计算机内存溢出,计算机的处理器在求解的过程中,处理速度非常慢,甚至可能无法求得几何体的交线,对于处理比较小的函数系统,即便能够计算出,对计算机内存和硬件的要求也非常高,大大提高了硬件成本。数值方法的网格法,分割法和追踪法等方法在计算时间上比符号方法高效,但不能保证得到的交线是保拓扑的,并且存在多点或者丢点的情形,不能保证计算结果在理论上的可信度。
技术实现思路
有鉴于此,本公开提供了一种由电子设备执行的空间曲面求交的方法和电子设备。本公开的一个方面提供了一种由电子设备执行的空间曲面求交的方法,包括:将两个空间曲面分别转化为相应的空间曲面函数、并确定每个空间曲面函数分别对应的参数空间的变化范围;将两个空间曲面函数、以及每个空间曲面函数分别对应的参数空间的变化范围,转化为一个函数系统和与函数系统对应的参数空间;将与函数系统对应的参数空间划分为多个盒子;根据第一判别条件对所有盒子进行判定,将不满足第一判别条件的盒子滤除,以及对满足第一判别条件的盒子通过第二判别条件进行判定;将满足第一判别条件的盒子但不满足第二判别条件的盒子进行细分,对细分后的盒子循环通过第一判别条件以及第二判别条件进行判定,直至达到设定计算精度,停止细分,得到细分后满足第一判别条件且满足第二判别条件的盒子、以及满足第一判别条件但不满足第二判别条件且停止细分后盒子;对细分前满足第一判别条件且满足第二判别条件的盒子,以及细分后满足第一判别条件且满足第二判别条件的盒子的每个面,通过零维算法进行求解,得到一个面有一个解的盒子、以及每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子;对满足第一判别条件但不满足第二判别条件且停止细分后盒子、一个面有一个解的盒子、以及每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子,按照设定计算精度,追踪逼近盒子中的曲线,得到两个空间曲面的逼近交线;若为两个隐式曲面的求交问题,直接输出交线;若为两个参数曲面的求交问题,将四维空间中的交线转化为三维空间中的交线后输出交线。根据本公开的实施例,其中,通过零维算法进行求解,得到一个面有一个解的盒子、以及每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子包括:滤除细分前满足第一判别条件且满足第二判别条件、以及细分后满足第一判别条件且满足第二判别条件,且每个面都无解的盒子;对细分前满足第一判别条件且满足第二判别条件、以及细分后满足第一判别条件且满足第二判别条件,且每个面都没有确定性的解并且至少有一个面存在不确定性的解的盒子,进行细分,对细分后的盒子循环通过零维算法进行求解,直至达到设定计算精度,停止细分,得到细分后满足第一判别条件、且满足第二判别条件、且至少一个面有解的盒子,以及得到每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子;若细分后满足第一判别条件、且满足第二判别条件、且至少一个面有解的盒子的至少一个面有解,且一个面有一个解,将一个面有一个解的盒子保留;若细分后满足第一判别条件、且满足第二判别条件、且至少一个面有解的盒子的至少一个面有解,且一个面有两个解,通过将一个面有两个解的盒子进行二分,得到一个面有一个解的盒子。根据本公开的实施例,其中,通过零维算法进行求解包括:给定一个零维系统、以及零维系统对应的参数空间;将零维系统对应的参数空间划分为多个盒子;根据第一判别条件对所有盒子进行判定,将不满足第一判别条件的盒子排除,以及对满足第一判别条件的盒子通过第三判别条件进行判定;将满足第一判别条件但不满足第三判别条件的盒子进行细分,对细分后的盒子循环通过第三判别条件进行判定,直至达到设定计算精度,停止细分;得到细分后满足第一判别条件且满足第三判别条件的盒子;对满足第一判别条件且满足第三判别条件的盒子,通过存在性判定算法进行求解。根据本公开的实施例,其中,对满足第一判别条件的盒子通过第三判别条件进行判定包括:对满足第一判别条件的盒子,构造零维系统对应满足第一判别条件的盒子上的强单调系统;通过第四判别方法判定强单调系统是否构造成功;若强单调系统构造成功,则,满足第一判别条件的盒子满足第三判别条件;若强单调系统构造不成功,则,满足第一判别条件的盒子不满足第三判别条件。根据本公开的实施例,其中,通过第四判别方法判定强单调系统是否构造成功包括:对满足第一判别条件的盒子,计算零维系统的Jacobian矩阵在满足第一判别条件的盒子上的赋值矩阵;判定赋值矩阵是否是一个强单调矩阵;若赋值矩阵是一个强单调矩阵,则强单调系统构造成功;若赋值矩阵不是一个强单调矩阵,则强单调系统构造不成功。根据本公开的实施例,其中,判定赋值矩阵是否是一个强单调矩阵包括:若赋值矩阵的元素都是不含0的区间;且赋值矩阵的前i行元素构成的i*i阶子矩阵的行列式区间不含0(2<=i<=n);则赋值矩阵是一个强单调矩阵;若不满足:赋值矩阵的元素都是不含0的区间;或赋值矩阵的前i行元素构成的i*i阶子矩阵的行列式区间不含0(2<=i<=n);则赋值矩阵不是一个强单调矩阵。根据本公开的实施例,其中,根据第一判别条件对所有盒子进行判定包括:给定一个n元方系统F=(f1,...,fn),若所有的fi在盒子上赋值后的区间中含有0,则满足第一判别条件;给定一个n元方系统F=(f1,...,fn),若不是所有的fi在盒子上赋值后的区间中含有0,则不满足第一判别条件。根据本公开的实施例,其中,对满足第一判别条件的盒子通过第二判别条件进行判定包括:若满足第一判别条件的盒子,存在一个满秩的Jacobian矩阵,则,满足第一判别条件的盒子,满足第二判别条件;若满足第一判别条件的盒子,不存在一个满秩的Jacobian矩阵,则,满足第一判别条件的盒子,不满足第二判别条件。根据本公开的实施例,其中,对满足第一判别条件且满足第三判别条件的盒子,通过存在性判定算法进行求解包括:给定一个n维盒子B,以及给定B上的n元强单调方系统F=(f1,...,fn),满足所有的fi在B上赋值后的区间中含有0;计算B中的强单调系统中的前n-1个方程构成的空间曲线C,与B的2n个面的交点;若C与B的2n个面无交,输出无解;若C与B的2n个面有两个交点,计算两个交点在F第n个函数上的赋值;若赋值异号,输出有解;若赋值同号,输出无解。本公开的另一个方面提供了一种电子设备,包括:一个或多个处理器;存储器,本文档来自技高网...

【技术保护点】
1.一种由电子设备执行的空间曲面求交的方法,包括:/n将两个空间曲面分别转化为相应的空间曲面函数、并确定每个所述空间曲面函数分别对应的参数空间的变化范围;/n将所述两个空间曲面函数、以及每个所述空间曲面函数分别对应的参数空间的变化范围,转化为一个函数系统和与所述函数系统对应的参数空间;/n将与所述函数系统对应的参数空间划分为多个盒子;/n根据第一判别条件对所有所述盒子进行判定,将不满足所述第一判别条件的盒子滤除,以及对满足所述第一判别条件的盒子通过第二判别条件进行判定;/n将满足所述第一判别条件的盒子但不满足所述第二判别条件的盒子进行细分,对细分后的盒子循环通过所述第一判别条件以及所述第二判别条件进行判定,直至达到设定计算精度,停止细分,得到细分后满足所述第一判别条件且满足所述第二判别条件的盒子、以及满足所述第一判别条件但不满足所述第二判别条件且停止细分后盒子;/n对细分前满足所述第一判别条件且满足所述第二判别条件的盒子,以及细分后满足所述第一判别条件且满足所述第二判别条件的盒子的每个面,通过零维算法进行求解,得到一个面有一个解的盒子、以及每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子;/n对满足所述第一判别条件但不满足所述第二判别条件且停止细分后盒子、所述一个面有一个解的盒子、以及所述每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子,按照设定计算精度,追踪逼近盒子中的曲线,得到所述两个空间曲面的逼近交线;/n若为两个隐式曲面的求交问题,直接输出交线;若为两个参数曲面的求交问题,将四维空间中的交线转化为三维空间中的交线后输出交线。/n...

【技术特征摘要】
1.一种由电子设备执行的空间曲面求交的方法,包括:
将两个空间曲面分别转化为相应的空间曲面函数、并确定每个所述空间曲面函数分别对应的参数空间的变化范围;
将所述两个空间曲面函数、以及每个所述空间曲面函数分别对应的参数空间的变化范围,转化为一个函数系统和与所述函数系统对应的参数空间;
将与所述函数系统对应的参数空间划分为多个盒子;
根据第一判别条件对所有所述盒子进行判定,将不满足所述第一判别条件的盒子滤除,以及对满足所述第一判别条件的盒子通过第二判别条件进行判定;
将满足所述第一判别条件的盒子但不满足所述第二判别条件的盒子进行细分,对细分后的盒子循环通过所述第一判别条件以及所述第二判别条件进行判定,直至达到设定计算精度,停止细分,得到细分后满足所述第一判别条件且满足所述第二判别条件的盒子、以及满足所述第一判别条件但不满足所述第二判别条件且停止细分后盒子;
对细分前满足所述第一判别条件且满足所述第二判别条件的盒子,以及细分后满足所述第一判别条件且满足所述第二判别条件的盒子的每个面,通过零维算法进行求解,得到一个面有一个解的盒子、以及每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子;
对满足所述第一判别条件但不满足所述第二判别条件且停止细分后盒子、所述一个面有一个解的盒子、以及所述每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子,按照设定计算精度,追踪逼近盒子中的曲线,得到所述两个空间曲面的逼近交线;
若为两个隐式曲面的求交问题,直接输出交线;若为两个参数曲面的求交问题,将四维空间中的交线转化为三维空间中的交线后输出交线。


2.如权利要求1所述的空间曲面求交的方法,其中,所述通过零维算法进行求解,得到一个面有一个解的盒子、以及每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子包括:
滤除细分前满足所述第一判别条件且满足所述第二判别条件、以及细分后满足所述第一判别条件且满足所述第二判别条件,且每个面都无解的盒子;
对细分前满足所述第一判别条件且满足所述第二判别条件、以及细分后满足所述第一判别条件且满足所述第二判别条件,且每个面都没有确定性的解并且至少有一个面存在不确定性的解的盒子,进行细分,对所述细分后的盒子循环通过零维算法进行求解,直至达到设定计算精度,停止细分,得到细分后满足所述第一判别条件、且满足所述第二判别条件、且至少一个面有解的盒子,以及得到所述每个面都没有确定性的解且至少有一个面存在不确定性的解并停止细分的盒子;
若细分后满足所述第一判别条件、且满足所述第二判别条件、且至少一个面有解的盒子的至少一个面有解,且一个面有一个解,将所述一个面有一个解的盒子保留;若细分后满足所述第一判别条件、且满足所述第二判别条件、且至少一个面有解的盒子的至少一个面有解,且一个面有两个解,通过将所述一个面有两个解的盒子进行二分,得到所述一个面有一个解的盒子。


3.如权利要求2所述的空间曲面求交的方法,其中,所述通过零维算法进行求解包括:
给定一个零维系统、以及所述零维系统对应的参数空间;
将所述零维系统对应的参数空间划分为多个盒子;
根据第一判别条件对所有盒子进行判定,将不满足所述第一判别条件的盒子排除,以及对满足所述第一判别条件的盒子通过第三判别条件进行判定;
将满足所述第一判别条件但不满足所述第三判别条件的盒子进行细分,对细分后的盒子循环通过所述第三判别条件进行判定,直至达到设定计算精度,停止细分;得到细分后满足所述第一判别条件...

【专利技术属性】
技术研发人员:程进三文钧屹
申请(专利权)人:中国科学院数学与系统科学研究院
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1