Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


ST_CURVETOLINE

📄字数 10.6K
👁️阅读量 加载中...

功能描述

将包含曲线的几何体转换为线性几何体。

语法格式

sql
GEOMETRY ST_CURVETOLINE(GEOMETRY curveGeom, DOUBLE tolerance=32, INTEGER tolerance_type=0, INTEGER flags=0);

参数说明

  • curveGeom:目标 GEOMETRY 对象;
  • tolerance:公差。可选,默认值:32。
  • tolerance_type:对参数 tolerance 解释。可选,默认值:0。可以采用以下值:
    • 0:公差是四分之一圆的最大边数。
    • 1:公差是从曲线到直线的最大差值。 单位是输入几何的单位。
    • 2:公差是由半径形成的角度的最大值(以弧度为单位)。
  • flags:位字段。可选,默认值:0。
    • 1:对称(与方向无关)输出。
    • 2:保留角度,避免在产生对称输出时减少角度(线段长度), 对称标志关闭时无效。

函数返回类型

GEOMETRY 类型

使用说明

  1. 将 CIRCULAR STRING 转换为常规 LINESTRING,或将 CURVEPOLYGON 转换为 POLYGON,或将 MULTISURFACE 转换为 MULTIPOLYGON。
  2. 使用给定的公差和选项(每个象限(一个圆的四个部分)32 个线段,默认情况下没有选项)将每个弯曲几何图形或线段转换为线性近似值。
  3. 此方法实现了 SQL 1.1 的 OGC 简单功能规范。
  4. 该方法实现了SQL/MM规范。 SQL-MM 3: 7.1.7
  5. 该函数支持 3d 并且不会丢失 z-index。
  6. 此方法支持圆形字符串和曲线。

示例

将 CIRCULAR STRING 转换为常规 LINESTRING:

sql

SQL> SELECT TO_CHAR(ST_AsText(ST_CURVETOLINE(ST_GEOMFROMTEXT('CIRCULARSTRING(220268 150415,220227 150505,220227 150406)'))));

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          EXPR1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| LINESTRING(220268 150415,220269.95064912012 150416.53936422797,220271.82341557532 150418.17258804003,220273.61378770717 150419.89573685703,220275.31745235244 150421.70465946247,220276.93030523375 150423.59499800342,220278.4484608472 150425.5621984887,220279.868261823 150427.60152176008,220281.18628773623 150429.70805490916,220282.39936334698 150431.87672311306,220283.50456624987 150434.10230186017,220284.49923391434 150436.37942953626,220285.38097009883 150438.7026203414,220286.14765062364 150441.06627750542,220286.7974284882 150443.46470677113,220287.3287383208 150445.89213011245,220287.74030014945 150448.34269965385,220288.0311224857 150450.8105117587,220288.20050471305 150453.28962125146,220288.24803877485 150455.77405574024,220288.17361015742 150458.25783000473,220287.9773981658 150460.7349604152,220287.6598754919 150463.19947934747,220287.22180707558 150465.6454495596,220286.6642482621 150468.06697849513,220285.9885422594 150470.45823247873,220285.19631690253 150472.81345077007,220284.28948073168 150475.12695944207,220283.27021839464 150477.39318504962,220282.14098538368 150479.60666805677,220280.90450211999 150481.7620759891,220279.56374740007 150483.85421628007,220278.1219512195 150485.8780487805,220276.58258699154 150487.8286979006,220274.94936317948 150489.7014643558,220273.22621436248 150491.49183648766,220271.41729175704 150493.19550113293,220269.5269532161 150494.80835401424,220267.5597527308 150496.3265096277,220265.52042945943 150497.74631060348,220263.41389631035 150499.06433651672,220261.24522810645 150500.27741212747,220259.01964935934 150501.38261503036,220256.74252168325 150502.37728269483,220254.4193308781 150503.25901887933,220252.0556737141 150504.02569940413,220249.65724444838 150504.6754772687,220247.22982110706 150505.20678710128,220244.77925156566 150505.61834892994,220242.3114394608 150505.9091712662,220239.83232996805 150506.07855349354,220237.34789547927 150506.12608755534,220234.86412121478 150506.0516589379,220232.3869908043 150505.85544694628,220229.92247187204 150505.5379242724,220227.4765016599 150505.09985585607,220225.05497272438 150504.5422970426,220222.66371874078 150503.8665910399,220220.30850044944 150503.07436568302,220217.99499177744 150502.16752951217,220215.7287661699 150501.14826717513,220213.51528316273 150500.01903416417,220211.3598752304 150498.78255090048,220209.26773493944 150497.44179618056,220207.24390243902 150496,220205.2932533189 150494.46063577203,220203.4204868637 150492.82741195997,220201.63011473184 150491.10426314297,220199.92645008658 150489.29534053753,220198.31359720527 150487.40500199658,220196.79544159182 150485.4378015113,220195.37564061602 150483.39847823992,220194.0576147028 150481.29194509084,220192.84453909204 150479.12327688694,220191.73933618914 150476.89769813983,220190.74466852468 150474.62057046374,220189.86293234018 150472.2973796586,220189.09625181538 150469.93372249458,220188.4464739508 150467.53529322887,220187.91516411823 150465.10786988755,220187.50360228957 150462.65730034615,220187.21277995332 150460.1894882413,220187.04339772597 150457.71037874854,220186.99586366417 150455.22594425976,220187.0702922816 150452.74216999527,220187.26650427323 150450.2650395848,220187.58402694712 150447.80052065253,220188.02209536344 150445.3545504404,220188.57965417692 150442.93302150487,220189.2553601796 150440.54176752127,220190.0475855365 150438.18654922993,220190.95442170734 150435.87304055793,220191.97368404438 150433.60681495038,220193.10291705534 150431.39333194323,220194.33940031903 150429.2379240109,220195.68015503895 150427.14578371993,220197.1219512195 150425.1219512195,220198.66131544748 150423.1713020994,220200.29453925954 150421.2985356442,220202.01768807654 150419.50816351234,220203.82661068198 150417.80449886707,220205.71694922293 150416.19164598576,220207.68414970822 150414.6734903723,220209.7234729796 150413.25368939652,220211.83000612867 150411.93566348328,220213.99867433257 150410.72258787253,220216.22425307968 150409.61738496964,220218.50138075577 150408.62271730517,220220.82457156092 150407.74098112067,220223.18822872493 150406.97430059587,220225.58665799064 150406.3245227313,220227 150406) |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

3D CIRCULARSTRING:

sql

SQL> SELECT TO_CHAR(ST_ASEWKT(ST_CURVETOLINE(ST_GEOMFROMEWKT('CIRCULARSTRING(220268 150415 1,220227 150505 2,220227 150406 3)'))));

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  EXPR1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| LINESTRING(220268 150415 1,220269.95064912012 150416.53936422797 1.018117285667296,220271.82341557532 150418.17258804003 1.036234571334591,220273.61378770717 150419.89573685703 1.054351857001887,220275.31745235244 150421.70465946247 1.072469142669182,220276.93030523375 150423.59499800342 1.090586428336478,220278.4484608472 150425.5621984887 1.108703714003773,220279.868261823 150427.60152176008 1.126820999671069,220281.18628773623 150429.70805490916 1.144938285338364,220282.39936334698 150431.87672311306 1.16305557100566,220283.50456624987 150434.10230186017 1.181172856672956,220284.49923391434 150436.37942953626 1.199290142340251,220285.38097009883 150438.7026203414 1.217407428007547,220286.14765062364 150441.06627750542 1.235524713674842,220286.7974284882 150443.46470677113 1.253641999342138,220287.3287383208 150445.89213011245 1.271759285009433,220287.74030014945 150448.34269965385 1.289876570676729,220288.0311224857 150450.8105117587 1.307993856344024,220288.20050471305 150453.28962125146 1.32611114201132,220288.24803877485 150455.77405574024 1.344228427678616,220288.17361015742 150458.25783000473 1.362345713345911,220287.9773981658 150460.7349604152 1.380462999013207,220287.6598754919 150463.19947934747 1.398580284680502,220287.22180707558 150465.6454495596 1.416697570347798,220286.6642482621 150468.06697849513 1.434814856015093,220285.9885422594 150470.45823247873 1.452932141682389,220285.19631690253 150472.81345077007 1.471049427349685,220284.28948073168 150475.12695944207 1.48916671301698,220283.27021839464 150477.39318504962 1.507283998684276,220282.14098538368 150479.60666805677 1.525401284351571,220280.90450211999 150481.7620759891 1.543518570018867,220279.56374740007 150483.85421628007 1.561635855686162,220278.1219512195 150485.8780487805 1.579753141353458,220276.58258699154 150487.8286979006 1.597870427020753,220274.94936317948 150489.7014643558 1.615987712688049,220273.22621436248 150491.49183648766 1.634104998355344,220271.41729175704 150493.19550113293 1.65222228402264,220269.5269532161 150494.80835401424 1.670339569689936,220267.5597527308 150496.3265096277 1.688456855357231,220265.52042945943 150497.74631060348 1.706574141024527,220263.41389631035 150499.06433651672 1.724691426691822,220261.24522810645 150500.27741212747 1.742808712359118,220259.01964935934 150501.38261503036 1.760925998026413,220256.74252168325 150502.37728269483 1.779043283693709,220254.4193308781 150503.25901887933 1.797160569361004,220252.0556737141 150504.02569940413 1.8152778550283,220249.65724444838 150504.6754772687 1.833395140695596,220247.22982110706 150505.20678710128 1.851512426362891,220244.77925156566 150505.61834892994 1.869629712030187,220242.3114394608 150505.9091712662 1.887746997697482,220239.83232996805 150506.07855349354 1.905864283364778,220237.34789547927 150506.12608755534 1.923981569032073,220234.86412121478 150506.0516589379 1.942098854699369,220232.3869908043 150505.85544694628 1.960216140366664,220229.92247187204 150505.5379242724 1.97833342603396,220227.4765016599 150505.09985585607 1.996450711701256,220225.05497272438 150504.5422970426 2.014517570141913,220222.66371874078 150503.8665910399 2.032572142695848,220220.30850044944 150503.07436568302 2.050626715249784,220217.99499177744 150502.16752951217 2.068681287803719,220215.7287661699 150501.14826717513 2.086735860357654,220213.51528316273 150500.01903416417 2.104790432911589,220211.3598752304 150498.78255090048 2.122845005465524,220209.26773493944 150497.44179618056 2.14089957801946,220207.24390243902 150496 2.158954150573395,220205.2932533189 150494.46063577203 2.17700872312733,220203.4204868637 150492.82741195997 2.195063295681265,220201.63011473184 150491.10426314297 2.2131178682352,220199.92645008658 150489.29534053753 2.231172440789135,220198.31359720527 150487.40500199658 2.24922701334307,220196.79544159182 150485.4378015113 2.267281585897006,220195.37564061602 150483.39847823992 2.285336158450941,220194.0576147028 150481.29194509084 2.303390731004876,220192.84453909204 150479.12327688694 2.321445303558811,220191.73933618914 150476.89769813983 2.339499876112746,220190.74466852468 150474.62057046374 2.357554448666682,220189.86293234018 150472.2973796586 2.375609021220617,220189.09625181538 150469.93372249458 2.393663593774552,220188.4464739508 150467.53529322887 2.411718166328487,220187.91516411823 150465.10786988755 2.429772738882422,220187.50360228957 150462.65730034615 2.447827311436357,220187.21277995332 150460.1894882413 2.465881883990292,220187.04339772597 150457.71037874854 2.483936456544227,220186.99586366417 150455.22594425976 2.501991029098163,220187.0702922816 150452.74216999527 2.520045601652098,220187.26650427323 150450.2650395848 2.538100174206033,220187.58402694712 150447.80052065253 2.556154746759968,220188.02209536344 150445.3545504404 2.574209319313903,220188.57965417692 150442.93302150487 2.592263891867839,220189.2553601796 150440.54176752127 2.610318464421773,220190.0475855365 150438.18654922993 2.628373036975709,220190.95442170734 150435.87304055793 2.646427609529644,220191.97368404438 150433.60681495038 2.664482182083579,220193.10291705534 150431.39333194323 2.682536754637514,220194.33940031903 150429.2379240109 2.700591327191449,220195.68015503895 150427.14578371993 2.718645899745384,220197.1219512195 150425.1219512195 2.73670047229932,220198.66131544748 150423.1713020994 2.754755044853255,220200.29453925954 150421.2985356442 2.77280961740719,220202.01768807654 150419.50816351234 2.790864189961125,220203.82661068198 150417.80449886707 2.80891876251506,220205.71694922293 150416.19164598576 2.826973335068996,220207.68414970822 150414.6734903723 2.845027907622931,220209.7234729796 150413.25368939652 2.863082480176866,220211.83000612867 150411.93566348328 2.881137052730801,220213.99867433257 150410.72258787253 2.899191625284736,220216.22425307968 150409.61738496964 2.917246197838671,220218.50138075577 150408.62271730517 2.935300770392606,220220.82457156092 150407.74098112067 2.953355342946542,220223.18822872493 150406.97430059587 2.971409915500477,220225.58665799064 150406.3245227313 2.989464488054412,220227 150406 3) |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

只用2段来近似四分之一圆:

sql

SQL> SELECT TO_CHAR(ST_ASTEXT(ST_CURVETOLINE(ST_GEOMFROMTEXT('CIRCULARSTRING(220268 150415,220227 150505,220227 150406)'),2)));

+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                                                            EXPR1                                                                                                                            |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| LINESTRING(220268 150415,220287.74030014945 150448.34269965385,220278.1219512195 150485.8780487805,220244.77925156566 150505.61834892994,220207.24390243902 150496,220187.50360228957 150462.65730034615,220197.1219512195 150425.1219512195,220227 150406) |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

确保近似距离不超过20个单位,对称输出:

sql

SQL> SELECT TO_CHAR(ST_ASTEXT(ST_CURVETOLINE('CIRCULARSTRING(0 0,100 -100,200 0)'::geometry,20, 1,1)));
+-------------------------------------------------------------------------------------------------+
|                                              EXPR1                                              |
+-------------------------------------------------------------------------------------------------+
| LINESTRING(0 0,49.99999999999996 -86.60254037844383,149.99999999999994 -86.6025403784439,200 0) |
+-------------------------------------------------------------------------------------------------+