CN115018697A - 一种地球表面多边形布尔运算的算法及计算机系统 - Google Patents
一种地球表面多边形布尔运算的算法及计算机系统 Download PDFInfo
- Publication number
- CN115018697A CN115018697A CN202210941048.7A CN202210941048A CN115018697A CN 115018697 A CN115018697 A CN 115018697A CN 202210941048 A CN202210941048 A CN 202210941048A CN 115018697 A CN115018697 A CN 115018697A
- Authority
- CN
- China
- Prior art keywords
- polygon
- projection
- plane
- ellipsoid
- earth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000000034 method Methods 0.000 abstract description 6
- 238000013461 design Methods 0.000 abstract description 5
- 241000274965 Cyrestis thyodamas Species 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G06T3/067—
-
- G06T3/08—
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/005—Map projections or methods associated specifically therewith
Abstract
本发明公开了一种地球表面多边形布尔运算的算法及计算机系统,其中算法包括以下步骤:S1,建立直角坐标系;S2,用椭球的球极投影将地球表面多边形投影为平面多边形,得到平面多边形的顶点坐标;S3,将所述平面多边形的顶点坐标作为输入,进行所述平面多边形的布尔运算;S4,S3中得到的运算结果,通过椭球球极投影反算公式,反算回地球表面。本发明提供了一种新的基于椭球球极投影的求地球表面多边形布尔运算的方法,与常用地图投影不同的是,椭球的球极投影更加简单明了,计算量明显减少,便于程序的实现,且无需考虑投影分带,同时通过算法设计,能够做到全球投影。
Description
技术领域
本发明涉及地球表面多边形布尔运算领域,特别涉及一种地球表面多边形布尔运算的算法及计算机系统。
背景技术
多边形的布尔运算是指多个多边形作为集合求交、并、差、对称差的运算,这是工程中具有广泛应用的基本运算。对于平面多边形,其布尔运算的算法是众所周知的,许多开源的算法库都能提供平面多边形的布尔运算。对于地球表面的多边形,通常的做法是将地球表面的多边形通过地图投影的方式投影到平面地图上,然后利用平面多边形算法求得结果,再将结果反算回地球表面。常用的地图投影方式有高斯-克吕格投影、通用横轴墨卡托投影、兰伯特投影等,这些投影公式都非常复杂,计算量较大,且顾及了投影前后长度比,从而要考虑投影分带,而且投影点往往是奇点,无法做到全球投影。地图投影本身是出于更为一般的考虑,特别是涉及地球表面长度、面积等与度量有关的问题时,地图投影是很好的选择。仅就多边形的布尔运算而言,因其无需考虑度量,采用地图投影来计算就显得过于复杂了。
发明内容
为了解决现有问题,本发明提供了一种地球表面多边形布尔运算的算法及计算机系统,具体方案如下:
一种地球表面多边形布尔运算的算法,具体包括以下步骤:
S1,建立直角坐标系;
S2,用椭球的球极投影将地球表面多边形投影为平面多边形,得到平面多边形的顶点坐标;
S3,将所述平面多边形的顶点坐标作为输入,进行所述平面多边形的布尔运算;
S4,S3中得到的运算结果,通过椭球球极投影反算公式,反算回地球表面。
优选的,S1以赤道平面为x-y平面,z轴指向椭球北极,建立直角坐标系,记a为椭球长半轴,b为椭球短半轴。
优选的,S2中得到平面多边形的顶点坐标的具体步骤包括:
S2.1,判断地球表面上的各个多边形的顶点polygon1、polygon2、……、polygonN(N≥2)是否包含北极点,若不包含进入S2.2,若包含进入S2.2’;
S2.2,采用北极点投影公式计算,得到投影平面上多边形的顶点坐标,并设置标记flag=1;
S2.2’,采用南极点投影公式计算,得到投影平面上多边形的顶点坐标,并设置标记flag=0。
优选的,S2.2中所述北极点投影公式,以北极点N(0,0,b)为投影点,此时除北极点外,椭球上的所有点与x-y平面上的点一一对应,则椭球上的一点P(x,y,z),在x-y平面上的投影点Q(u,v)的坐标满足北极点投影公式:。
优选的,S2.2’中所述南极点投影公式,以南极点S(0,0,-b)为投影点,此时除南极点外,椭球上的所有点与x-y平面上的点一一对应,则椭球上的一点P(x,y,z),在x-y平面上的投影点Q(u,v)的坐标满足南极点投影公式:。
优选的,S3中进行平面多边形的布尔运算具体包括:将S2中得到的平面多边形顶点坐标,作为平面多边形布尔运算算法的输入,经过布尔运算后求得多边形顶点列表polygon,若polygon为空,则输出空列表result,否则,进入S4。
优选的,S4中,若flag=0,则根据南极点投影的反算公式,将所述多边形顶点列表polygon中各点坐标反算回地球表面,得到result并输出,否则,根据北极点投影的反算公式,将polygon中各点坐标反算回地球表面,得到result并输出。
本发明揭示了一种计算机系统,一种计算机系统,包括处理器、存储介质,存储介质上存有计算机程序,处理器从存储介质上读取并运行计算机程序以执行上述的地球表面多边形布尔运算的算法。
本发明的有益效果在于:
本发明提供了一种新的基于椭球球极投影的求地球表面多边形布尔运算的方法,与常用地图投影不同的是,椭球的球极投影更加简单明了,计算量明显减少,便于程序的实现,且无需考虑投影分带,同时通过算法设计,能够做到全球投影。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明的方法流程图;
图2为本发明的椭球北极点投影图;
图3为本发明的椭球南极点投影图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
一种地球表面多边形布尔运算的算法,具体包括以下步骤:
S1,建立直角坐标系;
具体地,以赤道平面为x-y平面,z轴指向椭球北极,建立直角坐标系,记a为椭球长半轴,b为椭球短半轴。
S2,用椭球的球极投影将地球表面多边形投影为平面多边形,得到平面多边形的顶点坐标;
具体地,得到平面多边形的顶点坐标的具体步骤包括:
S2.1,判断地球表面上的各个多边形的顶点polygon1、polygon2、……、polygonN(N≥2)是否包含北极点,若不包含进入S2.2,若包含进入S2.2’;
S2.2,采用北极点投影公式计算,得到投影平面上多边形的顶点坐标,并设置标记flag=1;
其中,所述北极点投影公式,以北极点N(0,0,b)为投影点,此时除北极点外,椭球上的所有点与x-y平面上的点一一对应,如图2,则椭球上的一点P(x,y,z),在x-y平面上的投影点Q(u,v)的坐标满足北极点投影公式:。
S2.2’,采用南极点投影公式计算,得到投影平面上多边形的顶点坐标,并设置标记flag=0。
其中,所述南极点投影公式,以南极点S(0,0,-b)为投影点,此时除南极点外,椭球上的所有点与x-y平面上的点一一对应,如图3,则椭球上的一点P(x,y,z),在x-y平面上的投影点Q(u,v)的坐标满足南极点投影公式:。
S3,将所述平面多边形的顶点坐标作为输入,进行所述平面多边形的布尔运算。
具体地,进行平面多边形的布尔运算具体包括:将S2中得到的平面多边形顶点坐标,作为平面多边形布尔运算算法的输入,经过布尔运算后求得多边形顶点列表polygon,若polygon为空,则输出空列表result,否则,进入S4。
S4,S3中得到的运算结果,通过椭球球极投影反算公式,反算回地球表面。
具体地,若flag=0,则根据南极点投影的反算公式,将所述多边形顶点列表polygon中各点坐标反算回地球表面,得到result并输出,否则,根据北极点投影的反算公式,将polygon中各点坐标反算回地球表面,得到result并输出。
其中,以南极点S(0,0,-b)为投影点,此时除南极点外,椭球面上所有点与x-y平面上的点一一对应,如图3,则椭球面点P(x,y,z)在x-y平面上的投影点为Q(u,v),所述南极点投影的反算公式为。
本发明提供了一种新的基于椭球球极投影的求地球表面多边形布尔运算的方法,与常用地图投影不同的是,椭球的球极投影更加简单明了,计算量明显减少,便于程序的实现,且无需考虑投影分带,同时通过算法设计,能够做到全球投影。
本发明揭示了一种计算机系统,一种计算机系统,包括处理器、存储介质,存储介质上存有计算机程序,处理器从存储介质上读取并运行计算机程序以执行上述的地球表面多边形布尔运算的算法。
本领域技术人员将进一步领会,结合本文中所公开的实施例来描述的各种解说性逻辑板块、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。
结合本文所公开的实施例描述的各种解说性逻辑板块、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。在替换方案中,处理器和存储介质可作为分立组件驻留在用户终端中。
在一个或多个示例性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现为计算机程序产品,则各功能可以作为一条或更多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,其包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的合意程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟 (disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。上述的组合也应被包括在计算机可读介质的范围内。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种地球表面多边形布尔运算的算法,其特征在于,具体包括以下步骤:
S1,建立直角坐标系;
S2,用椭球的球极投影将地球表面多边形投影为平面多边形,得到平面多边形的顶点坐标;
S3,将所述平面多边形的顶点坐标作为输入,进行所述平面多边形的布尔运算;
S4,S3中得到的运算结果,通过椭球球极投影反算公式,反算回地球表面。
2.根据权利要求1所述的地球表面多边形布尔运算的算法,其特征在于:S1以赤道平面为x-y平面,z轴指向椭球北极,建立直角坐标系,记a为椭球长半轴,b为椭球短半轴。
3.根据权利要求2所述的地球表面多边形布尔运算的算法,其特征在于,S2中得到平面多边形的顶点坐标的具体步骤包括:
S2.1,判断地球表面上的各个多边形的顶点polygon1、polygon2、……、polygonN(N≥2)是否包含北极点,若不包含进入S2.2,若包含进入S2.2’;
S2.2,采用北极点投影公式计算,得到投影平面上多边形的顶点坐标,并设置标记flag=1;
S2.2’,采用南极点投影公式计算,得到投影平面上多边形的顶点坐标,并设置标记flag=0。
6.根据权利要求3所述的地球表面多边形布尔运算的算法,其特征在于:S3中进行平面多边形的布尔运算具体包括:将S2中得到的平面多边形顶点坐标,作为平面多边形布尔运算算法的输入,经过布尔运算后求得多边形顶点列表polygon,若polygon为空,则输出空列表result,否则,进入S4。
7.根据权利要求6所述的地球表面多边形布尔运算的算法,其特征在于:S4中,若flag=0,则根据南极点投影的反算公式,将所述多边形顶点列表polygon中各点坐标反算回地球表面,得到result并输出,否则,根据北极点投影的反算公式,将polygon中各点坐标反算回地球表面,得到result并输出。
10.一种计算机系统,其特征在于:一种计算机系统,包括处理器、存储介质,存储介质上存有计算机程序,处理器从存储介质上读取并运行计算机程序以执行如权利要求1-9任一所述的地球表面多边形布尔运算的算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210941048.7A CN115018697B (zh) | 2022-08-08 | 2022-08-08 | 一种地球表面多边形布尔运算的算法及计算机系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210941048.7A CN115018697B (zh) | 2022-08-08 | 2022-08-08 | 一种地球表面多边形布尔运算的算法及计算机系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115018697A true CN115018697A (zh) | 2022-09-06 |
CN115018697B CN115018697B (zh) | 2022-11-22 |
Family
ID=83065229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210941048.7A Active CN115018697B (zh) | 2022-08-08 | 2022-08-08 | 一种地球表面多边形布尔运算的算法及计算机系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115018697B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001060A1 (en) * | 2002-07-01 | 2004-01-01 | Silicon Graphics, Inc. | Accurate boolean operations for subdivision surfaces and relaxed fitting |
JP2011232798A (ja) * | 2010-04-23 | 2011-11-17 | Mitsubishi Electric Corp | 図形処理装置 |
US20160232262A1 (en) * | 2015-04-30 | 2016-08-11 | Within Technologies Ltd. | Junction meshing for lattice structures |
CN106898028A (zh) * | 2017-01-18 | 2017-06-27 | 深圳市百能信息技术有限公司 | 一种弧段多边形二维布尔运算方法 |
CN111024093A (zh) * | 2019-12-23 | 2020-04-17 | 南京航空航天大学 | 基于太阳光入射角的球极投影法确定太阳矢量的方法 |
CN112419500A (zh) * | 2020-12-09 | 2021-02-26 | 上海申元岩土工程有限公司 | 三维地质模型建模方法 |
-
2022
- 2022-08-08 CN CN202210941048.7A patent/CN115018697B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001060A1 (en) * | 2002-07-01 | 2004-01-01 | Silicon Graphics, Inc. | Accurate boolean operations for subdivision surfaces and relaxed fitting |
JP2011232798A (ja) * | 2010-04-23 | 2011-11-17 | Mitsubishi Electric Corp | 図形処理装置 |
US20160232262A1 (en) * | 2015-04-30 | 2016-08-11 | Within Technologies Ltd. | Junction meshing for lattice structures |
CN106898028A (zh) * | 2017-01-18 | 2017-06-27 | 深圳市百能信息技术有限公司 | 一种弧段多边形二维布尔运算方法 |
CN111024093A (zh) * | 2019-12-23 | 2020-04-17 | 南京航空航天大学 | 基于太阳光入射角的球极投影法确定太阳矢量的方法 |
CN112419500A (zh) * | 2020-12-09 | 2021-02-26 | 上海申元岩土工程有限公司 | 三维地质模型建模方法 |
Non-Patent Citations (3)
Title |
---|
HU HAI, ET AL.: "Voronoi Diagram Generation on the Ellipsoidal Earth", 《COMPUTERS & GEOSCIENCES》 * |
汪荣峰: "基于多边形布尔运算的卫星区域覆盖分析算法", 《装备学院学报》 * |
胡海等: "地球格网化剖分及其度量问题", 《测绘学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115018697B (zh) | 2022-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8659599B2 (en) | System and method for generating a manifold surface for a 3D model of an object using 3D curves of the object | |
US20220157018A1 (en) | Tessellation method using vertex tessellation factors | |
CN108122277B (zh) | 一种建模方法及装置 | |
US20080198158A1 (en) | 3D map display system, 3D map display method and display program | |
EP1760663A2 (en) | Transfer of attributes between geometric surfaces of arbitary topologies with distortion reduction and discontinuity preservation | |
AU2010227081B1 (en) | Techniques for drawing geodetic polygons | |
CN111063032B (zh) | 模型渲染方法、系统及电子装置 | |
EP3420537B1 (en) | Single pass bounding volume hierarchy rasterization | |
TW201142741A (en) | Edge processing techniques | |
CN109544658B (zh) | 地图的渲染方法和装置、存储介质、电子装置 | |
WO2024088002A1 (zh) | 顶点环境光遮蔽值的确定方法、应用方法、装置及设备 | |
US8040357B1 (en) | Quotient remainder coverage system and method | |
CN115018697B (zh) | 一种地球表面多边形布尔运算的算法及计算机系统 | |
Cecil et al. | Simplex free adaptive tree fast sweeping and evolution methods for solving level set equations in arbitrary dimension | |
US7136063B2 (en) | Triangle management in triangular meshes based on a tri-edge structure | |
CN112419430B (zh) | 动画播放方法、装置及计算机设备 | |
CN115830273B (zh) | 一种三维场景渲染前轻量化网格的优化方法及装置 | |
CN111127590B (zh) | 一种二阶贝塞尔曲线绘制方法及装置 | |
CN114979592B (zh) | 图像曲面几何校正方法、装置、电子设备及存储介质 | |
CN113888718A (zh) | 基于横截面模版的路线建模方法和装置 | |
CN114693885A (zh) | 三维虚拟对象生成方法、装置、设备、介质和程序产品 | |
US7595797B2 (en) | Transforming a polygonized object into an implicit-function representation | |
CN111369676B (zh) | 地图图像处理方法、装置和车载设备 | |
TWI601090B (zh) | 用於隨機柵格化之彈性散焦模糊的技術 | |
JP2004102834A (ja) | 三角形メッシュのデータ構造、三角形メッシュデータ圧縮方法および伸張方法、プログラム、記録媒体およびシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 35th Floor, Building A1, Phase I, Zhongan Chuanggu Science and Technology Park, No. 900, Wangjiang West Road, High-tech Zone, Hefei City, Anhui Province, 230000 Patentee after: Zhongke Xingtu Measurement and Control Technology Co.,Ltd. Address before: 35th Floor, Building A1, Phase I, Zhongan Chuanggu Science and Technology Park, No. 900, Wangjiang West Road, High-tech Zone, Hefei City, Anhui Province, 230000 Patentee before: Zhongke Xingtu measurement and control technology (Hefei) Co.,Ltd. |