1# SOME DESCRIPTIVE TITLE. 2# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. 3# 4#, fuzzy 5msgid "" 6msgstr "" 7"Project-Id-Version: PACKAGE VERSION\n" 8"Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9"POT-Creation-Date: 2021-11-08 06:12+0000\n" 10"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 11"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 12"Language-Team: LANGUAGE <kde-i18n-doc@kde.org>\n" 13"Language: \n" 14"MIME-Version: 1.0\n" 15"Content-Type: text/plain; charset=UTF-8\n" 16"Content-Transfer-Encoding: 8bit\n" 17 18#. Tag: para 19#: reference_overlay.xml:5 20#, no-c-format 21msgid "" 22"These functions compute results arising from the overlay of two geometries. " 23"These are also known as point-set theoretic boolean operations. Some related " 24"functions are also provided." 25msgstr "" 26 27#. Tag: title 28#: reference_overlay.xml:12 29#, no-c-format 30msgid "Overlay Functions" 31msgstr "" 32 33#. Tag: refname 34#: reference_overlay.xml:16 35#, no-c-format 36msgid "ST_ClipByBox2D" 37msgstr "" 38 39#. Tag: refpurpose 40#: reference_overlay.xml:17 41#, no-c-format 42msgid "Computes the portion of a geometry falling within a rectangle." 43msgstr "" 44 45#. Tag: funcprototype 46#: reference_overlay.xml:22 47#, no-c-format 48msgid "" 49"<funcdef>geometry <function>ST_ClipByBox2D</function></funcdef> " 50"<paramdef><type>geometry</type> <parameter>geom</parameter></paramdef> " 51"<paramdef><type>box2d</type> <parameter>box</parameter></paramdef>" 52msgstr "" 53 54#. Tag: title 55#: reference_overlay.xml:31 reference_overlay.xml:80 reference_overlay.xml:192 56#: reference_overlay.xml:272 reference_overlay.xml:326 57#: reference_overlay.xml:384 reference_overlay.xml:512 58#: reference_overlay.xml:597 reference_overlay.xml:689 59#: reference_overlay.xml:777 60#, no-c-format 61msgid "Description" 62msgstr "" 63 64#. Tag: para 65#: reference_overlay.xml:33 66#, no-c-format 67msgid "" 68"Clips a geometry by a 2D box in a fast and tolerant but possibly invalid " 69"way. Topologically invalid input geometries do not result in exceptions " 70"being thrown. The output geometry is not guaranteed to be valid (in " 71"particular, self-intersections for a polygon may be introduced)." 72msgstr "" 73 74#. Tag: para 75#: reference_overlay.xml:40 reference_overlay.xml:338 reference_overlay.xml:522 76#: reference_overlay.xml:817 77#, no-c-format 78msgid "Performed by the GEOS module." 79msgstr "" 80 81#. Tag: para 82#: reference_overlay.xml:42 reference_overlay.xml:523 83#, no-c-format 84msgid "Availability: 2.2.0" 85msgstr "" 86 87#. Tag: title 88#: reference_overlay.xml:47 reference_overlay.xml:106 reference_overlay.xml:229 89#: reference_overlay.xml:293 reference_overlay.xml:347 90#: reference_overlay.xml:410 reference_overlay.xml:529 91#: reference_overlay.xml:623 reference_overlay.xml:838 92#, no-c-format 93msgid "Examples" 94msgstr "" 95 96#. Tag: programlisting 97#: reference_overlay.xml:48 98#, no-c-format 99msgid "" 100"-- Rely on implicit cast from geometry to box2d for the second parameter\n" 101"SELECT ST_ClipByBox2D(geom, ST_MakeEnvelope(0,0,10,10)) FROM mytab;" 102msgstr "" 103 104#. Tag: title 105#: reference_overlay.xml:51 reference_overlay.xml:147 reference_overlay.xml:248 106#: reference_overlay.xml:300 reference_overlay.xml:359 107#: reference_overlay.xml:481 reference_overlay.xml:566 108#: reference_overlay.xml:664 reference_overlay.xml:729 109#: reference_overlay.xml:849 110#, no-c-format 111msgid "See Also" 112msgstr "" 113 114#. Tag: para 115#: reference_overlay.xml:52 116#, no-c-format 117msgid ", <xref linkend=\"ST_MakeBox2D\"/>, <xref linkend=\"ST_MakeEnvelope\"/>" 118msgstr "" 119 120#. Tag: refname 121#: reference_overlay.xml:62 122#, no-c-format 123msgid "ST_Difference" 124msgstr "" 125 126#. Tag: refpurpose 127#: reference_overlay.xml:64 128#, no-c-format 129msgid "" 130"Computes a geometry representing the part of geometry A that does not " 131"intersect geometry B." 132msgstr "" 133 134#. Tag: funcprototype 135#: reference_overlay.xml:70 136#, no-c-format 137msgid "" 138"<funcdef>geometry <function>ST_Difference</function></funcdef> " 139"<paramdef><type>geometry </type> <parameter>geomA</parameter></paramdef> " 140"<paramdef><type>geometry </type> <parameter>geomB</parameter></paramdef> " 141"<paramdef choice=\"opt\"><type>float8 </type> <parameter>gridSize = -1</" 142"parameter></paramdef>" 143msgstr "" 144 145#. Tag: para 146#: reference_overlay.xml:82 147#, no-c-format 148msgid "" 149"Returns a geometry representing the part of geometry A that does not " 150"intersect geometry B. This is equivalent to <code>A - ST_Intersection(A,B)</" 151"code>. If A is completely contained in B then an empty atomic geometry of " 152"appropriate type is returned." 153msgstr "" 154 155#. Tag: para 156#: reference_overlay.xml:87 157#, no-c-format 158msgid "" 159"This is the only overlay function where input order matters. " 160"ST_Difference(A, B) always returns a portion of A." 161msgstr "" 162 163#. Tag: para 164#: reference_overlay.xml:90 reference_overlay.xml:201 reference_overlay.xml:605 165#: reference_overlay.xml:713 166#, no-c-format 167msgid "" 168"If the optional <code>gridSize</code> argument is provided, the inputs are " 169"snapped to a grid of the given size, and the result vertices are computed on " 170"that same grid. (Requires GEOS-3.9.0 or higher)" 171msgstr "" 172 173#. Tag: para 174#: reference_overlay.xml:96 reference_overlay.xml:217 reference_overlay.xml:611 175#, no-c-format 176msgid "Performed by the GEOS module" 177msgstr "" 178 179#. Tag: para 180#: reference_overlay.xml:97 reference_overlay.xml:219 reference_overlay.xml:613 181#: reference_overlay.xml:721 reference_overlay.xml:825 182#, no-c-format 183msgid "Enhanced: 3.1.0 accept a gridSize parameter - requires GEOS >= 3.9.0" 184msgstr "" 185 186#. Tag: para 187#: reference_overlay.xml:99 reference_overlay.xml:223 reference_overlay.xml:615 188#: reference_overlay.xml:829 189#, no-c-format 190msgid "&sfs_compliant; s2.1.1.3" 191msgstr "" 192 193#. Tag: para 194#: reference_overlay.xml:100 195#, no-c-format 196msgid "&sqlmm_compliant; SQL-MM 3: 5.1.20" 197msgstr "" 198 199#. Tag: para 200#: reference_overlay.xml:101 reference_overlay.xml:225 201#: reference_overlay.xml:287 reference_overlay.xml:617 202#: reference_overlay.xml:719 reference_overlay.xml:833 203#, no-c-format 204msgid "" 205"&Z_support; However, the result is computed using XY only. The result Z " 206"values are copied, averaged or interpolated." 207msgstr "" 208 209#. Tag: para 210#: reference_overlay.xml:118 211#, no-c-format 212msgid "The input linestrings" 213msgstr "" 214 215#. Tag: para 216#: reference_overlay.xml:130 217#, no-c-format 218msgid "The difference of the two linestrings" 219msgstr "" 220 221#. Tag: para 222#: reference_overlay.xml:139 223#, no-c-format 224msgid "The difference of 2D linestrings." 225msgstr "" 226 227#. Tag: programlisting 228#: reference_overlay.xml:140 229#, no-c-format 230msgid "" 231"SELECT ST_AsText(\n" 232" ST_Difference(\n" 233" 'LINESTRING(50 100, 50 200)'::geometry,\n" 234" 'LINESTRING(50 50, 50 150)'::geometry\n" 235" )\n" 236" );\n" 237"\n" 238"st_astext\n" 239"---------\n" 240"LINESTRING(50 150,50 200)" 241msgstr "" 242 243#. Tag: para 244#: reference_overlay.xml:142 245#, no-c-format 246msgid "The difference of 3D points." 247msgstr "" 248 249#. Tag: programlisting 250#: reference_overlay.xml:143 251#, no-c-format 252msgid "" 253"SELECT ST_AsEWKT( ST_Difference(\n" 254" 'MULTIPOINT(-118.58 38.38 5,-118.60 38.329 6,-118.614 " 255"38.281 7)' :: geometry,\n" 256" 'POINT(-118.614 38.281 5)' :: geometry\n" 257" ) );\n" 258"\n" 259"st_asewkt\n" 260"---------\n" 261"MULTIPOINT(-118.6 38.329 6,-118.58 38.38 5)" 262msgstr "" 263 264#. Tag: para 265#: reference_overlay.xml:149 reference_overlay.xml:666 266#, no-c-format 267msgid ", <xref linkend=\"ST_Intersection\"/>, <xref linkend=\"ST_Union\"/>" 268msgstr "" 269 270#. Tag: refname 271#: reference_overlay.xml:155 272#, no-c-format 273msgid "ST_Intersection" 274msgstr "" 275 276#. Tag: refpurpose 277#: reference_overlay.xml:157 278#, no-c-format 279msgid "" 280"Computes a geometry representing the shared portion of geometries A and B." 281msgstr "" 282 283#. Tag: funcsynopsis 284#: reference_overlay.xml:162 285#, no-c-format 286msgid "" 287"<funcprototype> <funcdef>geometry <function>ST_Intersection</function></" 288"funcdef> <paramdef> <type>geometry</type> <parameter>geomA</parameter> </" 289"paramdef> <paramdef> <type>geometry</type> <parameter>geomB</parameter> </" 290"paramdef> <paramdef choice=\"opt\"> <type>float8</type> <parameter>gridSize " 291"= -1</parameter> </paramdef> </funcprototype> <funcprototype> " 292"<funcdef>geography <function>ST_Intersection</function></funcdef> <paramdef> " 293"<type>geography</type> <parameter>geogA</parameter> </paramdef> <paramdef> " 294"<type>geography</type> <parameter>geogB</parameter> </paramdef> </" 295"funcprototype>" 296msgstr "" 297 298#. Tag: para 299#: reference_overlay.xml:193 300#, no-c-format 301msgid "" 302"Returns a geometry representing the point-set intersection of two " 303"geometries. In other words, that portion of geometry A and geometry B that " 304"is shared between the two geometries." 305msgstr "" 306 307#. Tag: para 308#: reference_overlay.xml:198 309#, no-c-format 310msgid "" 311"If the geometries have no points in common (i.e. are disjoint) then an empty " 312"atomic geometry of appropriate type is returned." 313msgstr "" 314 315#. Tag: para 316#: reference_overlay.xml:207 317#, no-c-format 318msgid "" 319"ST_Intersection in conjunction with <xref linkend=\"ST_Intersects\"/> is " 320"useful for clipping geometries such as in bounding box, buffer, or region " 321"queries where you only require the portion of a geometry that is inside a " 322"country or region of interest." 323msgstr "" 324 325#. Tag: para 326#: reference_overlay.xml:210 327#, no-c-format 328msgid "" 329"Geography: For geography this is really a thin wrapper around the geometry " 330"implementation. It first determines the best SRID that fits the bounding box " 331"of the 2 geography objects (if geography objects are within one half zone " 332"UTM but not same UTM will pick one of those) (favoring UTM or Lambert " 333"Azimuthal Equal Area (LAEA) north/south pole, and falling back on mercator " 334"in worst case scenario) and then intersection in that best fit planar " 335"spatial ref and retransforms back to WGS84 geography." 336msgstr "" 337 338#. Tag: para 339#: reference_overlay.xml:213 340#, no-c-format 341msgid "This function will drop the M coordinate values if present." 342msgstr "" 343 344#. Tag: para 345#: reference_overlay.xml:215 346#, no-c-format 347msgid "" 348"If working with 3D geometries, you may want to use SFGCAL based <xref " 349"linkend=\"ST_3DIntersection\"/> which does a proper 3D intersection for 3D " 350"geometries. Although this function works with Z-coordinate, it does an " 351"averaging of Z-Coordinate." 352msgstr "" 353 354#. Tag: para 355#: reference_overlay.xml:220 reference_overlay.xml:826 356#, no-c-format 357msgid "Changed: 3.0.0 does not depend on SFCGAL." 358msgstr "" 359 360#. Tag: para 361#: reference_overlay.xml:221 362#, no-c-format 363msgid "Availability: 1.5 support for geography data type was introduced." 364msgstr "" 365 366#. Tag: para 367#: reference_overlay.xml:224 368#, no-c-format 369msgid "&sqlmm_compliant; SQL-MM 3: 5.1.18" 370msgstr "" 371 372#. Tag: programlisting 373#: reference_overlay.xml:230 374#, no-c-format 375msgid "" 376"SELECT ST_AsText(ST_Intersection('POINT(0 0)'::geometry, 'LINESTRING ( 2 0, " 377"0 2 )'::geometry));\n" 378" st_astext\n" 379"---------------\n" 380"GEOMETRYCOLLECTION EMPTY\n" 381"\n" 382"SELECT ST_AsText(ST_Intersection('POINT(0 0)'::geometry, 'LINESTRING ( 0 0, " 383"0 2 )'::geometry));\n" 384" st_astext\n" 385"---------------\n" 386"POINT(0 0)" 387msgstr "" 388 389#. Tag: para 390#: reference_overlay.xml:231 391#, no-c-format 392msgid "" 393"Clip all lines (trails) by country. Here we assume country geom are POLYGON " 394"or MULTIPOLYGONS. NOTE: we are only keeping intersections that result in a " 395"LINESTRING or MULTILINESTRING because we don't care about trails that just " 396"share a point. The dump is needed to expand a geometry collection into " 397"individual single MULT* parts. The below is fairly generic and will work for " 398"polys, etc. by just changing the where clause." 399msgstr "" 400 401#. Tag: programlisting 402#: reference_overlay.xml:236 403#, no-c-format 404msgid "" 405"select clipped.gid, clipped.f_name, clipped_geom\n" 406"from (\n" 407" select trails.gid, trails.f_name,\n" 408" (ST_Dump(ST_Intersection(country.geom, trails.geom))).geom " 409"clipped_geom\n" 410" from country\n" 411" inner join trails on ST_Intersects(country.geom, trails.geom)\n" 412" ) as clipped\n" 413"where ST_Dimension(clipped.clipped_geom) = 1;" 414msgstr "" 415 416#. Tag: para 417#: reference_overlay.xml:237 418#, no-c-format 419msgid "" 420"For polys e.g. polygon landmarks, you can also use the sometimes faster hack " 421"that buffering anything by 0.0 except a polygon results in an empty geometry " 422"collection. (So a geometry collection containing polys, lines and points " 423"buffered by 0.0 would only leave the polygons and dissolve the collection " 424"shell.)" 425msgstr "" 426 427#. Tag: programlisting 428#: reference_overlay.xml:239 429#, no-c-format 430msgid "" 431"select poly.gid,\n" 432" ST_Multi(\n" 433" ST_Buffer(\n" 434" ST_Intersection(country.geom, poly.geom),\n" 435" 0.0\n" 436" )\n" 437" ) clipped_geom\n" 438"from country\n" 439" inner join poly on ST_Intersects(country.geom, poly.geom)\n" 440"where not ST_IsEmpty(ST_Buffer(ST_Intersection(country.geom, poly.geom), " 441"0.0));" 442msgstr "" 443 444#. Tag: title 445#: reference_overlay.xml:243 446#, no-c-format 447msgid "Examples: 2.5Dish" 448msgstr "" 449 450#. Tag: para 451#: reference_overlay.xml:244 452#, no-c-format 453msgid "" 454"Note this is not a true intersection, compare to the same example using " 455"<xref linkend=\"ST_3DIntersection\"/>." 456msgstr "" 457 458#. Tag: programlisting 459#: reference_overlay.xml:245 460#, no-c-format 461msgid "" 462"select ST_AsText(ST_Intersection(linestring, polygon)) As wkt\n" 463"from ST_GeomFromText('LINESTRING Z (2 2 6,1.5 1.5 7,1 1 8,0.5 0.5 8,0 0 " 464"10)') AS linestring\n" 465" CROSS JOIN ST_GeomFromText('POLYGON((0 0 8, 0 1 8, 1 1 8, 1 0 8, 0 0 8))') " 466"AS polygon;\n" 467"\n" 468" st_astext\n" 469"---------------------------------------\n" 470" LINESTRING Z (1 1 8,0.5 0.5 8,0 0 10)" 471msgstr "" 472 473#. Tag: para 474#: reference_overlay.xml:249 475#, no-c-format 476msgid "" 477", <xref linkend=\"ST_Difference\"/>, <xref linkend=\"ST_Union\"/>, <xref " 478"linkend=\"ST_Dimension\"/>, <xref linkend=\"ST_Dump\"/>, <xref linkend=" 479"\"ST_Force2D\"/>, <xref linkend=\"ST_SymDifference\"/>, <xref linkend=" 480"\"ST_Intersects\"/>, <xref linkend=\"ST_Multi\"/>" 481msgstr "" 482 483#. Tag: refname 484#: reference_overlay.xml:256 485#, no-c-format 486msgid "ST_MemUnion" 487msgstr "" 488 489#. Tag: refpurpose 490#: reference_overlay.xml:258 491#, no-c-format 492msgid "" 493"Aggregate function which unions geometries in a memory-efficent but slower " 494"way" 495msgstr "" 496 497#. Tag: funcprototype 498#: reference_overlay.xml:263 499#, no-c-format 500msgid "" 501"<funcdef>geometry <function>ST_MemUnion</function></funcdef> " 502"<paramdef><type>geometry set</type> <parameter>geomfield</parameter></" 503"paramdef>" 504msgstr "" 505 506#. Tag: para 507#: reference_overlay.xml:274 508#, no-c-format 509msgid "" 510"An aggregate function that unions the input geometries, merging them to " 511"produce a result geometry with no overlaps. The output may be a single " 512"geometry, a MultiGeometry, or a Geometry Collection." 513msgstr "" 514 515#. Tag: para 516#: reference_overlay.xml:280 517#, no-c-format 518msgid "" 519"Produces the same result as <xref linkend=\"ST_Union\"/>, but uses less " 520"memory and more processor time. This aggregate function works by unioning " 521"the geometries incrementally, as opposed to the ST_Union aggregate which " 522"first accumulates an array and then unions the contents using a fast " 523"algorithm." 524msgstr "" 525 526#. Tag: programlisting 527#: reference_overlay.xml:295 528#, no-c-format 529msgid "" 530"SELECT id,\n" 531" ST_MemUnion(geom) as singlegeom\n" 532"FROM sometable f\n" 533"GROUP BY id;" 534msgstr "" 535 536#. Tag: refname 537#: reference_overlay.xml:308 538#, no-c-format 539msgid "ST_Node" 540msgstr "" 541 542#. Tag: refpurpose 543#: reference_overlay.xml:310 544#, no-c-format 545msgid "Nodes a collection of lines." 546msgstr "" 547 548#. Tag: funcprototype 549#: reference_overlay.xml:317 550#, no-c-format 551msgid "" 552"<funcdef>geometry <function>ST_Node</function></funcdef> " 553"<paramdef><type>geometry </type> <parameter>geom</parameter></paramdef>" 554msgstr "" 555 556#. Tag: para 557#: reference_overlay.xml:328 558#, no-c-format 559msgid "" 560"Returns a (Multi)LineString representing the fully noded version of a " 561"collection of linestrings. The noding preserves all of the input nodes, and " 562"introduces the least possible number of new nodes. The resulting linework is " 563"dissolved (duplicate lines are removed)." 564msgstr "" 565 566#. Tag: para 567#: reference_overlay.xml:335 568#, no-c-format 569msgid "" 570"This is a good way to create fully-noded linework suitable for use as input " 571"to <xref linkend=\"ST_Polygonize\"/>." 572msgstr "" 573 574#. Tag: para 575#: reference_overlay.xml:337 576#, no-c-format 577msgid "&Z_support;" 578msgstr "" 579 580#. Tag: para 581#: reference_overlay.xml:339 reference_overlay.xml:722 582#, no-c-format 583msgid "Availability: 2.0.0" 584msgstr "" 585 586#. Tag: para 587#: reference_overlay.xml:341 588#, no-c-format 589msgid "" 590"Changed: 2.4.0 this function uses GEOSNode internally instead of " 591"GEOSUnaryUnion. This may cause the resulting linestrings to have a different " 592"order and direction compared to PostGIS < 2.4." 593msgstr "" 594 595#. Tag: para 596#: reference_overlay.xml:348 597#, no-c-format 598msgid "Noding a 3D LineString which self-intersects" 599msgstr "" 600 601#. Tag: programlisting 602#: reference_overlay.xml:349 603#, no-c-format 604msgid "" 605"SELECT ST_AsText(\n" 606" ST_Node('LINESTRINGZ(0 0 0, 10 10 10, 0 10 5, 10 0 3)'::geometry)\n" 607" ) As output;\n" 608"output\n" 609"-----------\n" 610"MULTILINESTRING Z ((0 0 0,5 5 4.5),(5 5 4.5,10 10 10,0 10 5,5 5 4.5),(5 5 " 611"4.5,10 0 3))" 612msgstr "" 613 614#. Tag: para 615#: reference_overlay.xml:351 616#, no-c-format 617msgid "" 618"Noding two LineStrings which share common linework. Note that the result " 619"linework is dissolved." 620msgstr "" 621 622#. Tag: programlisting 623#: reference_overlay.xml:353 624#, no-c-format 625msgid "" 626"SELECT ST_AsText(\n" 627" ST_Node('MULTILINESTRING ((2 5, 2 1, 7 1), (6 1, 4 1, 2 3, 2 5))'::" 628"geometry)\n" 629" ) As output;\n" 630"output\n" 631"-----------\n" 632"MULTILINESTRING((2 5,2 3),(2 3,2 1,4 1),(4 1,2 3),(4 1,6 1),(6 1,7 1))" 633msgstr "" 634 635#. Tag: refname 636#: reference_overlay.xml:369 637#, no-c-format 638msgid "ST_Split" 639msgstr "" 640 641#. Tag: refpurpose 642#: reference_overlay.xml:370 643#, no-c-format 644msgid "" 645"Returns a collection of geometries created by splitting a geometry by " 646"another geometry." 647msgstr "" 648 649#. Tag: funcprototype 650#: reference_overlay.xml:375 651#, no-c-format 652msgid "" 653"<funcdef>geometry <function>ST_Split</function></funcdef> " 654"<paramdef><type>geometry</type> <parameter>input</parameter></paramdef> " 655"<paramdef><type>geometry</type> <parameter>blade</parameter></paramdef>" 656msgstr "" 657 658#. Tag: para 659#: reference_overlay.xml:385 660#, no-c-format 661msgid "" 662"The function supports splitting a LineString by a (Multi)Point, " 663"(Multi)LineString or (Multi)Polygon boundary, or a (Multi)Polygon by a " 664"LineString. The result geometry is always a collection." 665msgstr "" 666 667#. Tag: para 668#: reference_overlay.xml:391 669#, no-c-format 670msgid "" 671"This function is in a sense the opposite of <xref linkend=\"ST_Union\"/>. " 672"Applying ST_Union to the returned collection should theoretically yield the " 673"original geometry (although due to numerical rounding this may not be " 674"exactly the case)." 675msgstr "" 676 677#. Tag: para 678#: reference_overlay.xml:397 679#, no-c-format 680msgid "Availability: 2.0.0 requires GEOS" 681msgstr "" 682 683#. Tag: para 684#: reference_overlay.xml:398 685#, no-c-format 686msgid "" 687"Enhanced: 2.2.0 support for splitting a line by a multiline, a multipoint or " 688"(multi)polygon boundary was introduced." 689msgstr "" 690 691#. Tag: para 692#: reference_overlay.xml:399 693#, no-c-format 694msgid "" 695"Enhanced: 2.5.0 support for splitting a polygon by a multiline was " 696"introduced." 697msgstr "" 698 699#. Tag: para 700#: reference_overlay.xml:401 701#, no-c-format 702msgid "" 703"To improve the robustness of ST_Split it may be convenient to <xref linkend=" 704"\"ST_Snap\"/> the input to the blade in advance using a very low tolerance. " 705"Otherwise the internally used coordinate grid may cause tolerance problems, " 706"where coordinates of input and blade do not fall onto each other and the " 707"input is not being split correctly (see <ulink url=\"http://trac.osgeo.org/" 708"postgis/ticket/2192\">#2192</ulink>)." 709msgstr "" 710 711#. Tag: para 712#: reference_overlay.xml:403 713#, no-c-format 714msgid "" 715"When a (Multi)Polygon is passed as as the blade, its linear components (the " 716"boundary) are used for cutting the input." 717msgstr "" 718 719#. Tag: para 720#: reference_overlay.xml:411 721#, no-c-format 722msgid "Polygon Cut by Line" 723msgstr "" 724 725#. Tag: para 726#: reference_overlay.xml:423 reference_overlay.xml:457 727#, no-c-format 728msgid "Before Split" 729msgstr "" 730 731#. Tag: para 732#: reference_overlay.xml:435 reference_overlay.xml:469 733#, no-c-format 734msgid "After split" 735msgstr "" 736 737#. Tag: programlisting 738#: reference_overlay.xml:444 739#, no-c-format 740msgid "" 741"-- this creates a geometry collection consisting of the 2 halves of the " 742"polygon\n" 743"-- this is similar to the example we demonstrated in ST_BuildArea\n" 744"SELECT ST_Split(circle, line)\n" 745"FROM (SELECT\n" 746" ST_MakeLine(ST_Point(10, 10),ST_Point(190, 190)) As line,\n" 747" ST_Buffer(ST_GeomFromText('POINT(100 90)'), 50) As circle) As foo;\n" 748"\n" 749"-- result --\n" 750" GEOMETRYCOLLECTION(POLYGON((150 90,149.039264020162 " 751"80.2454838991936,146.193976625564 70.8658283817455,..), POLYGON(..)))\n" 752"\n" 753"-- To convert to individual polygons, you can use ST_Dump or ST_GeometryN\n" 754"SELECT ST_AsText((ST_Dump(ST_Split(circle, line))).geom) As wkt\n" 755"FROM (SELECT\n" 756" ST_MakeLine(ST_Point(10, 10),ST_Point(190, 190)) As line,\n" 757" ST_Buffer(ST_GeomFromText('POINT(100 90)'), 50) As circle) As foo;\n" 758"\n" 759"-- result --\n" 760"wkt\n" 761"---------------\n" 762"POLYGON((150 90,149.039264020162 80.2454838991936,..))\n" 763"POLYGON((60.1371179574584 60.1371179574584,58.4265193848728 " 764"62.2214883490198,53.8060233744357 ..))" 765msgstr "" 766 767#. Tag: para 768#: reference_overlay.xml:445 769#, no-c-format 770msgid "Multilinestring Cut by point" 771msgstr "" 772 773#. Tag: programlisting 774#: reference_overlay.xml:478 775#, no-c-format 776msgid "" 777"SELECT ST_AsText(ST_Split(mline, pt)) As wktcut\n" 778" FROM (SELECT\n" 779" ST_GeomFromText('MULTILINESTRING((10 10, 190 190), (15 15, 30 30, 100 " 780"90))') As mline,\n" 781" ST_Point(30,30) As pt) As foo;\n" 782"\n" 783"wktcut\n" 784"------\n" 785"GEOMETRYCOLLECTION(\n" 786" LINESTRING(10 10,30 30),\n" 787" LINESTRING(30 30,190 190),\n" 788" LINESTRING(15 15,30 30),\n" 789" LINESTRING(30 30,100 90)\n" 790")" 791msgstr "" 792 793#. Tag: para 794#: reference_overlay.xml:482 795#, no-c-format 796msgid "" 797", <xref linkend=\"ST_BuildArea\"/>, <xref linkend=\"ST_CollectionExtract\"/" 798">, <xref linkend=\"ST_Dump\"/>, <xref linkend=\"ST_GeometryN\"/>, <xref " 799"linkend=\"ST_Subdivide\"/>, <xref linkend=\"ST_Union\"/>" 800msgstr "" 801 802#. Tag: refname 803#: reference_overlay.xml:496 804#, no-c-format 805msgid "ST_Subdivide" 806msgstr "" 807 808#. Tag: refpurpose 809#: reference_overlay.xml:497 810#, no-c-format 811msgid "Computes a rectilinear subdivision of a geometry." 812msgstr "" 813 814#. Tag: funcprototype 815#: reference_overlay.xml:502 816#, no-c-format 817msgid "" 818"<funcdef>setof geometry <function>ST_Subdivide</function></funcdef> " 819"<paramdef><type>geometry</type> <parameter>geom</parameter></paramdef> " 820"<paramdef><type>integer</type> <parameter>max_vertices=256</parameter></" 821"paramdef> <paramdef choice=\"opt\"><type>float8</type> <parameter>gridSize = " 822"-1</parameter></paramdef>" 823msgstr "" 824 825#. Tag: para 826#: reference_overlay.xml:514 827#, no-c-format 828msgid "" 829"Divides geometry into parts using rectilinear lines, until each part can be " 830"represented using no more than <code>max_vertices</code>. Point-in-polygon " 831"and other spatial operations are normally faster for indexed subdivided " 832"dataset: \"miss\" cases are faster to check as boxes for all parts typically " 833"cover smaller area than original geometry box, \"hit\" cases are faster " 834"because recheck operates on less points. <code>max_vertices</code> must be 5 " 835"or more, as 5 points are needed to represent a closed box. <code>gridSize</" 836"code> can be specified to have clipping work in fixed-precision space " 837"(requires GEOS-3.9.0+)." 838msgstr "" 839 840#. Tag: para 841#: reference_overlay.xml:524 842#, no-c-format 843msgid "" 844"Enhanced: 2.5.0 reuses existing points on polygon split, vertex count is " 845"lowered from 8 to 5." 846msgstr "" 847 848#. Tag: para 849#: reference_overlay.xml:525 850#, no-c-format 851msgid "" 852"Enhanced: 3.1.0 accept a gridSize parameter, requires GEOS >= 3.9.0 to " 853"use this new feature." 854msgstr "" 855 856#. Tag: programlisting 857#: reference_overlay.xml:530 858#, no-c-format 859msgid "" 860"-- Subdivide complex geometries in table, in place\n" 861"with complex_areas_to_subdivide as (\n" 862" delete from polygons_table\n" 863" where ST_NPoints(geom) > 255\n" 864" returning id, column1, column2, column3, geom\n" 865")\n" 866"insert into polygons_table (fid, column1, column2, column3, geom)\n" 867" select\n" 868" fid, column1, column2, column3,\n" 869" ST_Subdivide(geom, 255) as geom\n" 870" from complex_areas_to_subdivide;" 871msgstr "" 872 873#. Tag: programlisting 874#: reference_overlay.xml:532 875#, no-c-format 876msgid "" 877"-- Create a new subdivided table suitable for joining to the original\n" 878"CREATE TABLE subdivided_geoms AS\n" 879"SELECT pkey, ST_Subdivide(geom) AS geom\n" 880"FROM original_geoms;" 881msgstr "" 882 883#. Tag: para 884#: reference_overlay.xml:543 885#, no-c-format 886msgid "Subdivide max 10 vertices" 887msgstr "" 888 889#. Tag: programlisting 890#: reference_overlay.xml:546 891#, no-c-format 892msgid "" 893"SELECT row_number() OVER() As rn, ST_AsText(geom) As wkt\n" 894"FROM ( SELECT ST_SubDivide('POLYGON((132 10,119 23,85 35,68 29,66 28,49 " 895"42,32 56,22 64,32 110,40 119,36 150,\n" 896"57 158,75 171,92 182,114 184,132 186,146 178,176 184,179 162,184 141,190 " 897"122,\n" 898"190 100,185 79,186 56,186 52,178 34,168 18,147 13,132 10))'::geometry,10)) " 899"As f(geom);" 900msgstr "" 901 902#. Tag: screen 903#: reference_overlay.xml:547 904#, no-c-format 905msgid "" 906"rn │ wkt\n" 907"────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────\n" 908" 1 │ POLYGON((119 23,85 35,68 29,66 28,32 56,22 64,29.8260869565217 100,119 " 909"100,119 23))\n" 910" 2 │ POLYGON((132 10,119 23,119 56,186 56,186 52,178 34,168 18,147 13,132 " 911"10))\n" 912" 3 │ POLYGON((119 56,119 100,190 100,185 79,186 56,119 56))\n" 913" 4 │ POLYGON((29.8260869565217 100,32 110,40 119,36 150,57 158,75 171,92 " 914"182,114 184,114 100,29.8260869565217 100))\n" 915" 5 │ POLYGON((114 184,132 186,146 178,176 184,179 162,184 141,190 122,190 " 916"100,114 100,114 184))" 917msgstr "" 918 919#. Tag: para 920#: reference_overlay.xml:556 921#, no-c-format 922msgid "" 923"Useful in conjunction with ST_Segmentize(geography) to create additional " 924"vertices that can then be used for splitting." 925msgstr "" 926 927#. Tag: programlisting 928#: reference_overlay.xml:559 929#, no-c-format 930msgid "" 931"SELECT ST_AsText(ST_Subdivide(ST_Segmentize('LINESTRING(0 0, 85 85)'::" 932"geography,1200000)::geometry,8));" 933msgstr "" 934 935#. Tag: screen 936#: reference_overlay.xml:560 937#, no-c-format 938msgid "" 939"LINESTRING(0 0,0.487578359029357 5.57659056746196,0.984542144675897 " 940"11.1527721155093,1.50101059639722 16.7281035483571,1.94532113630331 21.25)\n" 941"LINESTRING(1.94532113630331 21.25,2.04869538062779 " 942"22.3020741387339,2.64204641967673 27.8740533545155,3.29994062412787 " 943"33.443216802941,4.04836719489742 39.0084282520239,4.59890468420694 42.5)\n" 944"LINESTRING(4.59890468420694 42.5,4.92498503922732 " 945"44.5680389206321,5.98737409390639 50.1195229244701,7.3290919767674 " 946"55.6587646879025,8.79638749938413 60.1969505994924)\n" 947"LINESTRING(8.79638749938413 60.1969505994924,9.11375579533779 " 948"61.1785363177625,11.6558166691368 66.6648504160202,15.642041247655 " 949"72.0867690601745,22.8716627200212 77.3609628116894,24.6991785131552 " 950"77.8939011989848)\n" 951"LINESTRING(24.6991785131552 77.8939011989848,39.4046096622744 " 952"82.1822848017636,44.7994523421035 82.5156766227011)\n" 953"LINESTRING(44.7994523421035 82.5156766227011,85 85)" 954msgstr "" 955 956#. Tag: para 957#: reference_overlay.xml:567 958#, no-c-format 959msgid "" 960", <xref linkend=\"ST_ClipByBox2D\"/>, <xref linkend=\"ST_Segmentize\"/>, " 961"<xref linkend=\"ST_Split\"/>, <xref linkend=\"ST_NPoints\"/>" 962msgstr "" 963 964#. Tag: refname 965#: reference_overlay.xml:579 966#, no-c-format 967msgid "ST_SymDifference" 968msgstr "" 969 970#. Tag: refpurpose 971#: reference_overlay.xml:581 972#, no-c-format 973msgid "" 974"Computes a geometry representing the portions of geometries A and B that do " 975"not intersect." 976msgstr "" 977 978#. Tag: funcprototype 979#: reference_overlay.xml:587 980#, no-c-format 981msgid "" 982"<funcdef>geometry <function>ST_SymDifference</function></funcdef> " 983"<paramdef><type>geometry </type> <parameter>geomA</parameter></paramdef> " 984"<paramdef><type>geometry </type> <parameter>geomB</parameter></paramdef> " 985"<paramdef choice=\"opt\"><type>float8 </type> <parameter>gridSize = -1</" 986"parameter></paramdef>" 987msgstr "" 988 989#. Tag: para 990#: reference_overlay.xml:599 991#, no-c-format 992msgid "" 993"Returns a geometry representing the portions of geonetries A and B that do " 994"not intersect. This is equivalent to <code>ST_Union(A,B) - ST_Intersection(A," 995"B)</code>. It is called a symmetric difference because " 996"<code>ST_SymDifference(A,B) = ST_SymDifference(B,A)</code>." 997msgstr "" 998 999#. Tag: para 1000#: reference_overlay.xml:616 1001#, no-c-format 1002msgid "&sqlmm_compliant; SQL-MM 3: 5.1.21" 1003msgstr "" 1004 1005#. Tag: para 1006#: reference_overlay.xml:636 1007#, no-c-format 1008msgid "The original linestrings shown together" 1009msgstr "" 1010 1011#. Tag: para 1012#: reference_overlay.xml:648 1013#, no-c-format 1014msgid "The symmetric difference of the two linestrings" 1015msgstr "" 1016 1017#. Tag: programlisting 1018#: reference_overlay.xml:657 1019#, no-c-format 1020msgid "" 1021"--Safe for 2d - symmetric difference of 2 linestrings\n" 1022"SELECT ST_AsText(\n" 1023" ST_SymDifference(\n" 1024" ST_GeomFromText('LINESTRING(50 100, 50 200)'),\n" 1025" ST_GeomFromText('LINESTRING(50 50, 50 150)')\n" 1026" )\n" 1027");\n" 1028"\n" 1029"st_astext\n" 1030"---------\n" 1031"MULTILINESTRING((50 150,50 200),(50 50,50 100))" 1032msgstr "" 1033 1034#. Tag: programlisting 1035#: reference_overlay.xml:659 1036#, no-c-format 1037msgid "" 1038"--When used in 3d doesn't quite do the right thing\n" 1039"SELECT ST_AsEWKT(ST_SymDifference(ST_GeomFromEWKT('LINESTRING(1 2 1, 1 4 " 1040"2)'),\n" 1041" ST_GeomFromEWKT('LINESTRING(1 1 3, 1 3 4)')))\n" 1042"\n" 1043"st_astext\n" 1044"------------\n" 1045"MULTILINESTRING((1 3 2.75,1 4 2),(1 1 3,1 2 2.25))" 1046msgstr "" 1047 1048#. Tag: refname 1049#: reference_overlay.xml:672 1050#, no-c-format 1051msgid "ST_UnaryUnion" 1052msgstr "" 1053 1054#. Tag: refpurpose 1055#: reference_overlay.xml:674 1056#, no-c-format 1057msgid "Computes the union of the components of a single geometry." 1058msgstr "" 1059 1060#. Tag: funcprototype 1061#: reference_overlay.xml:679 1062#, no-c-format 1063msgid "" 1064"<funcdef>geometry <function>ST_UnaryUnion</function></funcdef> " 1065"<paramdef><type>geometry </type> <parameter>geom</parameter></paramdef> " 1066"<paramdef choice=\"opt\"><type>float8 </type> <parameter>gridSize = -1</" 1067"parameter></paramdef>" 1068msgstr "" 1069 1070#. Tag: para 1071#: reference_overlay.xml:691 1072#, no-c-format 1073msgid "" 1074"A single-input variant of <xref linkend=\"ST_Union\"/>. The input may be a " 1075"single geometry, a MultiGeometry, or a GeometryCollection. The union is " 1076"applied to the individual components of the input. This allow using this " 1077"function to fix MultiPolygons which are invalid due to overlapping " 1078"components. (However, the input components must each be valid. An invalid " 1079"input component such as a bow-tie polygon may cause an error.)" 1080msgstr "" 1081 1082#. Tag: para 1083#: reference_overlay.xml:701 1084#, no-c-format 1085msgid "" 1086"Another use of this function is to node and dissolve a collection of " 1087"linestrings. (This can also be done with <xref linkend=\"ST_Node\"/>.)" 1088msgstr "" 1089 1090#. Tag: para 1091#: reference_overlay.xml:706 1092#, no-c-format 1093msgid "" 1094"It is possible to mix ST_UnaryUnion with <xref linkend=\"ST_Collect\"/> to " 1095"fine-tune how many geometries are be unioned at once. This allows trading " 1096"off between memory usage and compute time, striking a balance between " 1097"ST_Union and <xref linkend=\"ST_MemUnion\"/>." 1098msgstr "" 1099 1100#. Tag: para 1101#: reference_overlay.xml:731 1102#, no-c-format 1103msgid "" 1104", <xref linkend=\"ST_MemUnion\"/>, <xref linkend=\"ST_Collect\"/>, <xref " 1105"linkend=\"ST_Node\"/>" 1106msgstr "" 1107 1108#. Tag: refname 1109#: reference_overlay.xml:742 1110#, no-c-format 1111msgid "ST_Union" 1112msgstr "" 1113 1114#. Tag: refpurpose 1115#: reference_overlay.xml:743 1116#, no-c-format 1117msgid "" 1118"Computes a geometry representing the point-set union of the input geometries." 1119msgstr "" 1120 1121#. Tag: funcsynopsis 1122#: reference_overlay.xml:748 1123#, no-c-format 1124msgid "" 1125"<funcprototype> <funcdef>geometry <function>ST_Union</function></funcdef> " 1126"<paramdef><type>geometry</type> <parameter>g1</parameter></paramdef> " 1127"<paramdef><type>geometry</type> <parameter>g2</parameter></paramdef> </" 1128"funcprototype> <funcprototype> <funcdef>geometry <function>ST_Union</" 1129"function></funcdef> <paramdef><type>geometry</type> <parameter>g1</" 1130"parameter></paramdef> <paramdef><type>geometry</type> <parameter>g2</" 1131"parameter></paramdef> <paramdef><type>float8</type> <parameter>gridSize</" 1132"parameter></paramdef> </funcprototype> <funcprototype> <funcdef>geometry " 1133"<function>ST_Union</function></funcdef> <paramdef><type>geometry[]</type> " 1134"<parameter>g1_array</parameter></paramdef> </funcprototype> <funcprototype> " 1135"<funcdef>geometry <function>ST_Union</function></funcdef> " 1136"<paramdef><type>geometry set</type> <parameter>g1field</parameter></" 1137"paramdef> </funcprototype> <funcprototype> <funcdef>geometry " 1138"<function>ST_Union</function></funcdef> <paramdef><type>geometry set</type> " 1139"<parameter>g1field</parameter></paramdef> <paramdef><type>float8</type> " 1140"<parameter>gridSize</parameter></paramdef> </funcprototype>" 1141msgstr "" 1142 1143#. Tag: para 1144#: reference_overlay.xml:778 1145#, no-c-format 1146msgid "" 1147"Unions the input geometries, merging geometry to produce a result geometry " 1148"with no overlaps. The output may be an atomic geometry, a MultiGeometry, or " 1149"a Geometry Collection. Comes in several variants:" 1150msgstr "" 1151 1152#. Tag: para 1153#: reference_overlay.xml:783 1154#, no-c-format 1155msgid "" 1156"<emphasis role=\"bold\">Two-input variant:</emphasis> returns a geometry " 1157"that is the union of two input geometries. If either input is NULL, then " 1158"NULL is returned." 1159msgstr "" 1160 1161#. Tag: para 1162#: reference_overlay.xml:788 1163#, no-c-format 1164msgid "" 1165"<emphasis role=\"bold\">Array variant:</emphasis> returns a geometry that is " 1166"the union of an array of geometries." 1167msgstr "" 1168 1169#. Tag: para 1170#: reference_overlay.xml:792 1171#, no-c-format 1172msgid "" 1173"<emphasis role=\"bold\">Aggregate variant:</emphasis> returns a geometry " 1174"that is the union of a rowset of geometries. The ST_Union() function is an " 1175"\"aggregate\" function in the terminology of PostgreSQL. That means that it " 1176"operates on rows of data, in the same way the SUM() and AVG() functions do " 1177"and like most aggregates, it also ignores NULL geometries." 1178msgstr "" 1179 1180#. Tag: para 1181#: reference_overlay.xml:799 1182#, no-c-format 1183msgid "" 1184"See <xref linkend=\"ST_UnaryUnion\"/> for a non-aggregate, single-input " 1185"variant." 1186msgstr "" 1187 1188#. Tag: para 1189#: reference_overlay.xml:801 1190#, no-c-format 1191msgid "" 1192"The ST_Union array and set variants use the fast Cascaded Union algorithm " 1193"described in <ulink url=\"http://blog.cleverelephant.ca/2009/01/must-faster-" 1194"unions-in-postgis-14.html\">http://blog.cleverelephant.ca/2009/01/must-" 1195"faster-unions-in-postgis-14.html</ulink>" 1196msgstr "" 1197 1198#. Tag: para 1199#: reference_overlay.xml:805 1200#, no-c-format 1201msgid "" 1202"A <code>gridSize</code> can be specified to work in fixed-precision space. " 1203"The inputs are snapped to a grid of the given size, and the result vertices " 1204"are computed on that same grid. (Requires GEOS-3.9.0 or higher)" 1205msgstr "" 1206 1207#. Tag: para 1208#: reference_overlay.xml:811 1209#, no-c-format 1210msgid "" 1211"may sometimes be used in place of ST_Union, if the result is not required to " 1212"be non-overlapping. ST_Collect is usually faster than ST_Union because it " 1213"performs no processing on the collected geometries." 1214msgstr "" 1215 1216#. Tag: para 1217#: reference_overlay.xml:818 1218#, no-c-format 1219msgid "" 1220"ST_Union creates MultiLineString and does not sew LineStrings into a single " 1221"LineString. Use <xref linkend=\"ST_LineMerge\"/> to sew LineStrings." 1222msgstr "" 1223 1224#. Tag: para 1225#: reference_overlay.xml:821 1226#, no-c-format 1227msgid "" 1228"NOTE: this function was formerly called GeomUnion(), which was renamed from " 1229"\"Union\" because UNION is an SQL reserved word." 1230msgstr "" 1231 1232#. Tag: para 1233#: reference_overlay.xml:827 1234#, no-c-format 1235msgid "" 1236"Availability: 1.4.0 - ST_Union was enhanced. ST_Union(geomarray) was " 1237"introduced and also faster aggregate collection in PostgreSQL." 1238msgstr "" 1239 1240#. Tag: para 1241#: reference_overlay.xml:830 1242#, no-c-format 1243msgid "Aggregate version is not explicitly defined in OGC SPEC." 1244msgstr "" 1245 1246#. Tag: para 1247#: reference_overlay.xml:831 1248#, no-c-format 1249msgid "" 1250"&sqlmm_compliant; SQL-MM 3: 5.1.19 the z-index (elevation) when polygons are " 1251"involved." 1252msgstr "" 1253 1254#. Tag: para 1255#: reference_overlay.xml:839 1256#, no-c-format 1257msgid "Aggregate example" 1258msgstr "" 1259 1260#. Tag: programlisting 1261#: reference_overlay.xml:840 1262#, no-c-format 1263msgid "" 1264"SELECT id,\n" 1265" ST_Union(geom) as singlegeom\n" 1266"FROM sometable f\n" 1267"GROUP BY id;" 1268msgstr "" 1269 1270#. Tag: para 1271#: reference_overlay.xml:841 1272#, no-c-format 1273msgid "Non-Aggregate example" 1274msgstr "" 1275 1276#. Tag: programlisting 1277#: reference_overlay.xml:842 1278#, no-c-format 1279msgid "" 1280"select ST_AsText(ST_Union('POINT(1 2)' :: geometry, 'POINT(-2 3)' :: " 1281"geometry))\n" 1282"\n" 1283"st_astext\n" 1284"----------\n" 1285"MULTIPOINT(-2 3,1 2)\n" 1286"\n" 1287"select ST_AsText(ST_Union('POINT(1 2)' :: geometry, 'POINT(1 2)' :: " 1288"geometry))\n" 1289"\n" 1290"st_astext\n" 1291"----------\n" 1292"POINT(1 2)" 1293msgstr "" 1294 1295#. Tag: para 1296#: reference_overlay.xml:843 1297#, no-c-format 1298msgid "3D example - sort of supports 3D (and with mixed dimensions!)" 1299msgstr "" 1300 1301#. Tag: programlisting 1302#: reference_overlay.xml:844 1303#, no-c-format 1304msgid "" 1305"select ST_AsEWKT(ST_Union(geom))\n" 1306"from (\n" 1307" select 'POLYGON((-7 4.2,-7.1 4.2,-7.1 4.3, -7 4.2))'::geometry " 1308"geom\n" 1309" union all\n" 1310" select 'POINT(5 5 5)'::geometry geom\n" 1311" union all\n" 1312" select 'POINT(-2 3 1)'::geometry geom\n" 1313" union all\n" 1314" select 'LINESTRING(5 5 5, 10 10 10)'::geometry geom\n" 1315" ) as foo;\n" 1316"\n" 1317"st_asewkt\n" 1318"---------\n" 1319"GEOMETRYCOLLECTION(POINT(-2 3 1),LINESTRING(5 5 5,10 10 10),POLYGON((-7 4.2 " 1320"5,-7.1 4.2 5,-7.1 4.3 5,-7 4.2 5)));" 1321msgstr "" 1322 1323#. Tag: para 1324#: reference_overlay.xml:845 1325#, no-c-format 1326msgid "3d example not mixing dimensions" 1327msgstr "" 1328 1329#. Tag: programlisting 1330#: reference_overlay.xml:846 1331#, no-c-format 1332msgid "" 1333"select ST_AsEWKT(ST_Union(geom))\n" 1334"from (\n" 1335" select 'POLYGON((-7 4.2 2,-7.1 4.2 3,-7.1 4.3 2, -7 4.2 2))'::" 1336"geometry geom\n" 1337" union all\n" 1338" select 'POINT(5 5 5)'::geometry geom\n" 1339" union all\n" 1340" select 'POINT(-2 3 1)'::geometry geom\n" 1341" union all\n" 1342" select 'LINESTRING(5 5 5, 10 10 10)'::geometry geom\n" 1343" ) as foo;\n" 1344"\n" 1345"st_asewkt\n" 1346"---------\n" 1347"GEOMETRYCOLLECTION(POINT(-2 3 1),LINESTRING(5 5 5,10 10 10),POLYGON((-7 4.2 " 1348"2,-7.1 4.2 3,-7.1 4.3 2,-7 4.2 2)))\n" 1349"\n" 1350"--Examples using new Array construct\n" 1351"SELECT ST_Union(ARRAY(SELECT geom FROM sometable));\n" 1352"\n" 1353"SELECT ST_AsText(ST_Union(ARRAY[ST_GeomFromText('LINESTRING(1 2, 3 4)'),\n" 1354" ST_GeomFromText('LINESTRING(3 4, 4 5)')])) As wktunion;\n" 1355"\n" 1356"--wktunion---\n" 1357"MULTILINESTRING((3 4,4 5),(1 2,3 4))" 1358msgstr "" 1359 1360#. Tag: para 1361#: reference_overlay.xml:850 1362#, no-c-format 1363msgid "" 1364", <xref linkend=\"ST_UnaryUnion\"/>, <xref linkend=\"ST_MemUnion\"/>, <xref " 1365"linkend=\"ST_Intersection\"/>, <xref linkend=\"ST_Difference\"/>, <xref " 1366"linkend=\"ST_SymDifference\"/>" 1367msgstr "" 1368