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