Fork me on GitHub

ST_Buffer

Signatures

GEOMETRY ST_Buffer(GEOMETRY geom, DOUBLE bufferSize);
GEOMETRY ST_Buffer(GEOMETRY geom, DOUBLE bufferSize,
                   INT quad_segs);
GEOMETRY ST_Buffer(GEOMETRY geom, DOUBLE bufferSize,
                   VARCHAR bufferStyle);

Description

Computes a buffer around geom of size bufferSize (given in projection units).

The optional third parameter can either specify the number of segments used to approximate a quarter circle or a VARCHAR list of space-separated key=value pairs:

key=value Description Default value
quad_segs=# number of segments used to approximate a quarter circle 8
endcap=round|flat|square endcap style round
join=round|mitre|bevel join style round
mitre_limit=#.# mitre ratio limit (only affects mitered join style) 5

Synonyms:

Original name Synonym
flat butt
miter mitre
miter_limit mitre_limit
Implements the OpenGIS Simple Features Implementation Specification for SQL version 1.2.1.

Examples

SELECT ST_Buffer('POINT(3 2)', 2);
SELECT ST_Buffer('POINT(3 2)', 2, 'quad_segs=8 endcap=round
                     join=round mitre_limit=5');
-- Answer: POLYGON((5 2, 4.961570560806461 1.6098193559677436, 4.847759065022574 1.2346331352698203, 4.662939224605091 0.8888595339607956, 4.414213562373095 0.5857864376269051, 4.111140466039204 0.3370607753949095, 3.7653668647301797 0.1522409349774265, 3.390180644032257 0.0384294391935391, 3 0, 2.6098193559677436 0.0384294391935391, 2.2346331352698208 0.1522409349774265, 1.888859533960796 0.3370607753949093, 1.585786437626905 0.5857864376269049, 1.3370607753949093 0.8888595339607956, 1.1522409349774263 1.2346331352698212, 1.038429439193539 1.6098193559677445, 1 2.0000000000000013, 1.0384294391935396 2.3901806440322586, 1.1522409349774274 2.765366864730182, 1.337060775394911 3.111140466039207, 1.5857864376269073 3.4142135623730976, 1.8888595339607985 3.6629392246050925, 2.2346331352698243 3.847759065022575, 2.609819355967748 3.9615705608064617, 3.000000000000005 4, 3.3901806440322617 3.96157056080646, 3.765366864730185 3.8477590650225713, 4.11114046603921 3.662939224605087, 4.414213562373099 3.4142135623730905, 4.662939224605094 3.1111404660391986, 4.847759065022577 2.7653668647301726, 4.961570560806463 2.390180644032249, 5 2))

SELECT ST_Buffer('POINT(3 2)', 2, 2);
-- Answer: POLYGON((5 2, 4.414213562373095 0.5857864376269051, 3 0, 1.585786437626905 0.5857864376269049, 1 1.9999999999999998, 1.5857864376269046 3.414213562373095, 2.9999999999999996 4, 4.414213562373095 3.4142135623730954, 5 2))

SELECT ST_Buffer('LINESTRING(1 4, 3 1)', 0.5);
SELECT ST_Buffer('LINESTRING(1 4, 3 1)', 0.5, 'endcap=round');
-- Answer: POLYGON((3.416025147168922 1.2773500981126147, 3.462139660572861 1.190858413819252, 3.4904944059918925 1.0970321477174472, 3.4999997264610876 0.9994769905951163, 3.49029033784546 0.9019419324309079, 3.4617393665044207 0.808175190811782, 3.4154440102550363 0.7217801690331669, 3.353183373675236 0.6460769793311285, 3.2773500981126147 0.5839748528310782, 3.190858413819252 0.5378603394271391, 3.097032147717447 0.5095055940081075, 2.999476990595116 0.5000002735389124, 2.901941932430908 0.5097096621545399, 2.808175190811782 0.5382606334955793, 2.721780169033167 0.5845559897449637, 2.646076979331128 0.646816626324764, 2.583974852831078 0.7226499018873854, 0.5839748528310782 3.7226499018873853, 0.5378603394271391 3.809141586180748, 0.5095055940081075 3.902967852282553, 0.5000002735389124 4.000523009404883, 0.5097096621545398 4.098058067569092, 0.5382606334955793 4.191824809188218, 0.5845559897449635 4.278219830966833, 0.6468166263247636 4.353923020668871, 0.7226499018873853 4.416025147168922, 0.8091415861807478 4.462139660572861, 0.9029678522825526 4.4904944059918925, 1.0005230094048834 4.499999726461088, 1.0980580675690919 4.49029033784546, 1.191824809188218 4.461739366504421, 1.2782198309668331 4.415444010255037, 1.3539230206688715 4.353183373675236, 1.4160251471689218 4.277350098112614, 3.416025147168922 1.2773500981126147))

SELECT ST_Buffer('LINESTRING(1 4, 3 1)', 0.5, 'endcap=flat');
SELECT ST_Buffer('LINESTRING(1 4, 3 1)', 0.5, 'endcap=butt');
-- Answer: POLYGON((3.416025147168922 1.2773500981126147, 2.583974852831078 0.7226499018873854, 0.5839748528310782 3.7226499018873853, 1.4160251471689218 4.277350098112614, 3.416025147168922 1.2773500981126147))

SELECT ST_Buffer('LINESTRING(1 4, 3 1)', 0.5, 'endcap=square');
-- Answer: POLYGON((3.416025147168922 1.2773500981126147, 3.6933752452815365 0.8613249509436929, 2.861324950943693 0.3066247547184636, 0.5839748528310782 3.7226499018873853, 0.3066247547184636 4.138675049056307, 1.1386750490563071 4.693375245281536, 3.416025147168922 1.2773500981126147))

SELECT ST_Buffer('LINESTRING(1 4, 3 3, 1 1, 3 1)', 1);
SELECT ST_Buffer('LINESTRING(1 4, 3 3, 1 1, 3 1)', 1, 'join=round');
-- Answer: POLYGON((3.3484712476551146 1.9342576852820195, 3.3826834323650896 1.9238795325112867, 3.555570233019602 1.8314696123025453, 3.7071067811865475 1.7071067811865475, 3.8314696123025453 1.5555702330196022, 3.923879532511287 1.3826834323650898, 3.9807852804032304 1.1950903220161282, 4 1, 3.9807852804032304 0.8049096779838718, 3.923879532511287 0.6173165676349102, 3.8314696123025453 0.4444297669803979, 3.7071067811865475 0.2928932188134525, 3.555570233019602 0.1685303876974546, 3.3826834323650896 0.076120467488713, 3.1950903220161275 0.0192147195967695, 3 0, 1 0, 0.8049096779838714 0.0192147195967697, 0.6173165676349097 0.0761204674887135, 0.4444297669803978 0.1685303876974548, 0.2928932188134523 0.2928932188134525, 0.1685303876974545 0.444429766980398, 0.0761204674887132 0.6173165676349104, 0.0192147195967696 0.8049096779838716, 0 1.0000000000000002, 0.0192147195967696 1.1950903220161286, 0.0761204674887133 1.3826834323650898, 0.1685303876974546 1.5555702330196022, 0.2928932188134525 1.7071067811865475, 1.3118349659180069 2.726048528291102, 0.5527864045000421 3.1055728090000843, 0.3868853996252819 3.210006021030951, 0.2445460450042934 3.3447982586398712, 0.1312383622103311 3.504769531727891, 0.0513167019494861 3.683772233983162, 0.0078524088049996 3.8749273919438862, 0.0025157911873576 4.0708890200906795, 0.0355119323187965 4.264126422950408, 0.1055728090000841 4.447213595499958, 0.2100060210309513 4.613114600374718, 0.3447982586398712 4.755453954995707, 0.5047695317278911 4.868761637789669, 0.6837722339831622 4.948683298050514, 0.8749273919438861 4.992147591195001, 1.0708890200906798 4.997484208812643, 1.2641264229504092 4.964488067681203, 1.4472135954999579 4.894427190999916, 3.447213595499958 3.8944271909999157, 3.6074943253679908 3.7943240174171304, 3.7460810940603095 3.6658550901553366, 3.858024890773139 3.5136081062578186, 3.9393281400916322 3.3430198904320196, 3.9870874576374966 3.1601822430069673, 3.999597331544443 2.971624398345954, 3.976411027238142 2.784079862245885, 3.918356540577032 2.604245954689803, 3.827507029658416 2.4385446448150083, 3.7071067811865475 2.2928932188134525, 3.3484712476551146 1.9342576852820195))

SELECT ST_Buffer('LINESTRING(1 4, 3 3, 1 1, 3 1)', 1, 'join=mitre');
SELECT ST_Buffer('LINESTRING(1 4, 3 3, 1 1, 3 1)', 1, 'join=miter');
-- Answer: POLYGON((3.3484712476551146 1.9342576852820195, 3.3826834323650896 1.9238795325112867, 3.555570233019602 1.8314696123025453, 3.7071067811865475 1.7071067811865475, 3.8314696123025453 1.5555702330196022, 3.923879532511287 1.3826834323650898, 3.9807852804032304 1.1950903220161282, 4 1, 3.9807852804032304 0.8049096779838718, 3.923879532511287 0.6173165676349102, 3.8314696123025453 0.4444297669803979, 3.7071067811865475 0.2928932188134525, 3.555570233019602 0.1685303876974546, 3.3826834323650896 0.076120467488713, 3.1950903220161275 0.0192147195967695, 3 0, -1.414213562373095 -0, 1.3118349659180069 2.726048528291102, 0.5527864045000421 3.1055728090000843, 0.3868853996252819 3.210006021030951, 0.2445460450042934 3.3447982586398712, 0.1312383622103311 3.504769531727891, 0.0513167019494861 3.683772233983162, 0.0078524088049996 3.8749273919438862, 0.0025157911873576 4.0708890200906795, 0.0355119323187965 4.264126422950408, 0.1055728090000841 4.447213595499958, 0.2100060210309513 4.613114600374718, 0.3447982586398712 4.755453954995707, 0.5047695317278911 4.868761637789669, 0.6837722339831622 4.948683298050514, 0.8749273919438861 4.992147591195001, 1.0708890200906798 4.997484208812643, 1.2641264229504092 4.964488067681203, 1.4472135954999579 4.894427190999916, 4.688165034081993 3.273951471708898, 3.3484712476551146 1.9342576852820195))

SELECT ST_Buffer('LINESTRING(1 4, 3 3, 1 1, 3 1)', 1, 'join=bevel');
-- Answer: POLYGON((3.3484712476551146 1.9342576852820195, 3.3826834323650896 1.9238795325112867, 3.555570233019602 1.8314696123025453, 3.7071067811865475 1.7071067811865475, 3.8314696123025453 1.5555702330196022, 3.923879532511287 1.3826834323650898, 3.9807852804032304 1.1950903220161282, 4 1, 3.9807852804032304 0.8049096779838718, 3.923879532511287 0.6173165676349102, 3.8314696123025453 0.4444297669803979, 3.7071067811865475 0.2928932188134525, 3.555570233019602 0.1685303876974546, 3.3826834323650896 0.076120467488713, 3.1950903220161275 0.0192147195967695, 3 0, 1 0, 0.2928932188134525 1.7071067811865475, 1.3118349659180069 2.726048528291102, 0.5527864045000421 3.1055728090000843, 0.3868853996252819 3.210006021030951, 0.2445460450042934 3.3447982586398712, 0.1312383622103311 3.504769531727891, 0.0513167019494861 3.683772233983162, 0.0078524088049996 3.8749273919438862, 0.0025157911873576 4.0708890200906795, 0.0355119323187965 4.264126422950408, 0.1055728090000841 4.447213595499958, 0.2100060210309513 4.613114600374718, 0.3447982586398712 4.755453954995707, 0.5047695317278911 4.868761637789669, 0.6837722339831622 4.948683298050514, 0.8749273919438861 4.992147591195001, 1.0708890200906798 4.997484208812643, 1.2641264229504092 4.964488067681203, 1.4472135954999579 4.894427190999916, 3.447213595499958 3.8944271909999157, 3.7071067811865475 2.2928932188134525, 3.3484712476551146 1.9342576852820195))

SELECT ST_Buffer('LINESTRING(1 4, 6.1 6, 1 1, 6 1.9, 6 0.1)',
                     1, 'join=mitre');
SELECT ST_Buffer('LINESTRING(1 4, 6.1 6, 1 1, 6 1.9, 6 0.1)',
                     1, 'join=mitre mitre_limit=5.0');
-- Answer: POLYGON((10.29575742756926 8.719489836262001, 10.29827418304468 8.715602924677219, 4.01913031332359 2.559514320068689, 7 3.096070863670443, 7 0.1, 6.98078528040323 -0.0950903220161282, 6.923879532511287 -0.2826834323650898, 6.831469612302545 -0.4555702330196022, 6.707106781186548 -0.6071067811865475, 6.555570233019602 -0.7314696123025453, 6.38268343236509 -0.8238795325112868, 6.195090322016128 -0.8807852804032305, 6 -0.9, 5.804909677983872 -0.8807852804032305, 5.61731656763491 -0.8238795325112868, 5.444429766980398 -0.7314696123025454, 5.292893218813452 -0.6071067811865476, 5.168530387697455 -0.4555702330196022, 5.076120467488713 -0.2826834323650894, 5.01921471959677 -0.0950903220161277, 5 0.1, 5 0.7039291363295568, -2.0191303133235907 -0.5595143200686894, 1.8932443652704758 3.276147129533337, 1.365087528818456 3.069026801512937, 1.1764486132427059 3.015690146912708, 0.9810288764135607 3.000179967959299, 0.7863381892247135 3.0230923121316806, 0.5998584056010372 3.0835466708926984, 0.4287558390481212 3.179219817138362, 0.27960586524317 3.3064350855125686, 0.1581402340352382 3.460303664594842, 0.0690268015129365 3.6349124711815444, 0.0156901469127081 3.8235513867572943, 0.0001799679592992 4.018971123586439, 0.0230923121316806 4.213661810775286, 0.0835466708926986 4.4001415943989635, 0.1792198171383622 4.5712441609518795, 0.306435085512569 4.72039413475683, 0.4603036645948428 4.841859765964762, 0.6349124711815438 4.930973198487063, 10.29575742756926 8.719489836262001))

SELECT ST_Buffer('LINESTRING(1 4, 6.1 6, 1 1, 6 1.9, 6 0.1)',
                     1, 'join=mitre mitre_limit=1');
-- Answer: POLYGON((6.5043440646387145 7.215420496101515, 7.3744622574840735 5.871598056086329, 4.01913031332359 2.559514320068689, 6.366327294909743 2.897186922224882, 6.916518761080402 2.437187867919472, 7 0.1, 6.98078528040323 -0.0950903220161282, 6.923879532511287 -0.2826834323650898, 6.831469612302545 -0.4555702330196022, 6.707106781186548 -0.6071067811865475, 6.555570233019602 -0.7314696123025453, 6.38268343236509 -0.8238795325112868, 6.195090322016128 -0.8807852804032305, 6 -0.9, 5.804909677983872 -0.8807852804032305, 5.61731656763491 -0.8238795325112868, 5.444429766980398 -0.7314696123025454, 5.292893218813452 -0.6071067811865476, 5.168530387697455 -0.4555702330196022, 5.076120467488713 -0.2826834323650894, 5.01921471959677 -0.0950903220161277, 5 0.1, 5 0.7039291363295568, 0.4354086737625782 -0.0859452439967832, -0.212349207887621 1.1680768775174672, 1.8932443652704758 3.276147129533337, 1.365087528818456 3.069026801512937, 1.1764486132427059 3.015690146912708, 0.9810288764135607 3.000179967959299, 0.7863381892247135 3.0230923121316806, 0.5998584056010372 3.0835466708926984, 0.4287558390481212 3.179219817138362, 0.27960586524317 3.3064350855125686, 0.1581402340352382 3.460303664594842, 0.0690268015129365 3.6349124711815444, 0.0156901469127081 3.8235513867572943, 0.0001799679592992 4.018971123586439, 0.0230923121316806 4.213661810775286, 0.0835466708926986 4.4001415943989635, 0.1792198171383622 4.5712441609518795, 0.306435085512569 4.72039413475683, 0.4603036645948428 4.841859765964762, 0.6349124711815438 4.930973198487063, 6.5043440646387145 7.215420496101515))

SELECT ST_Buffer('LINESTRING(1 4, 6.1 6, 1 1, 6 1.9, 6 0.1)',
                     1, 'join=mitre mitre_limit=2.5');
-- Answer: POLYGON((7.92612407573767 7.779446498661697, 8.470891729569301 6.938099881807913, 4.01913031332359 2.559514320068689, 7 3.096070863670443, 7 0.1, 6.98078528040323 -0.0950903220161282, 6.923879532511287 -0.2826834323650898, 6.831469612302545 -0.4555702330196022, 6.707106781186548 -0.6071067811865475, 6.555570233019602 -0.7314696123025453, 6.38268343236509 -0.8238795325112868, 6.195090322016128 -0.8807852804032305, 6 -0.9, 5.804909677983872 -0.8807852804032305, 5.61731656763491 -0.8238795325112868, 5.444429766980398 -0.7314696123025454, 5.292893218813452 -0.6071067811865476, 5.168530387697455 -0.4555702330196022, 5.076120467488713 -0.2826834323650894, 5.01921471959677 -0.0950903220161277, 5 0.1, 5 0.7039291363295568, -1.0998795904530416 -0.3821577093981757, -1.3424717448595658 0.087486793199886, 1.8932443652704758 3.276147129533337, 1.365087528818456 3.069026801512937, 1.1764486132427059 3.015690146912708, 0.9810288764135607 3.000179967959299, 0.7863381892247135 3.0230923121316806, 0.5998584056010372 3.0835466708926984, 0.4287558390481212 3.179219817138362, 0.27960586524317 3.3064350855125686, 0.1581402340352382 3.460303664594842, 0.0690268015129365 3.6349124711815444, 0.0156901469127081 3.8235513867572943, 0.0001799679592992 4.018971123586439, 0.0230923121316806 4.213661810775286, 0.0835466708926986 4.4001415943989635, 0.1792198171383622 4.5712441609518795, 0.306435085512569 4.72039413475683, 0.4603036645948428 4.841859765964762, 0.6349124711815438 4.930973198487063, 7.92612407573767 7.779446498661697))

SELECT ST_Buffer('GEOMETRYCOLLECTION(
                      MULTIPOINT((4 4), (1 1), (1 0), (0 3)),
                      LINESTRING(2 6, 6 2),
                      POLYGON((1 2, 3 2, 3 6, 1 6, 1 2))))', 0.5);
  -- Answer: MULTIPOLYGON(((0.5 2, 0.5 3, 0.5 6, 0.5096073597983848 6.097545161008064, 0.5380602337443566 6.191341716182545, 0.5842651938487273 6.277785116509801, 0.6464466094067263 6.353553390593274, 0.722214883490199 6.4157348061512725, 0.8086582838174552 6.461939766255643, 0.9024548389919359 6.490392640201615, 1 6.5, 2 6.5, 3 6.5, 3.097545161008064 6.490392640201615, 3.191341716182545 6.461939766255643, 3.277785116509801 6.4157348061512725, 3.353553390593274 6.353553390593274, 3.4157348061512725 6.277785116509801, 3.4619397662556435 6.191341716182545, 3.490392640201615 6.097545161008064, 3.5 6, 3.5 5.207106781186548, 6.353553390593274 2.353553390593274, 6.4157348061512725 2.277785116509801, 6.461939766255643 2.191341716182545, 6.490392640201615 2.097545161008064, 6.5 2, 6.490392640201615 1.9024548389919358, 6.461939766255643 1.8086582838174552, 6.4157348061512725 1.722214883490199, 6.353553390593274 1.6464466094067263, 6.2777851165098015 1.5842651938487273, 6.191341716182545 1.5380602337443565, 6.097545161008064 1.5096073597983848, 6 1.5, 5.902454838991936 1.5096073597983848, 5.808658283817455 1.5380602337443567, 5.7222148834901985 1.5842651938487275, 5.646446609406726 1.6464466094067263, 3.6464466094067274 3.646446609406725, 3.646446609406726 3.646446609406726, 3.646446609406725 3.6464466094067274, 3.5 3.7928932188134525, 3.5 2, 3.490392640201615 1.9024548389919358, 3.4619397662556435 1.8086582838174552, 3.4157348061512725 1.722214883490199, 3.353553390593274 1.6464466094067263, 3.277785116509801 1.5842651938487273, 3.191341716182545 1.5380602337443565, 3.097545161008064 1.5096073597983848, 3 1.5, 1.0000000000000013 1.5, 1 1.5, 0.9024548389919359 1.5096073597983848, 0.8086582838174552 1.5380602337443565, 0.722214883490199 1.5842651938487273, 0.6464466094067263 1.6464466094067263, 0.5842651938487273 1.722214883490199, 0.5380602337443566 1.808658283817455, 0.5096073597983848 1.9024548389919358, 0.5 2)), ((1.0000000000000013 1.5, 1.0975451610080655 1.490392640201615, 1.1913417161825461 1.4619397662556428, 1.2777851165098024 1.4157348061512718, 1.3535533905932748 1.3535533905932726, 1.4157348061512736 1.2777851165097998, 1.4619397662556441 1.191341716182543, 1.4903926402016157 1.0975451610080622, 1.5 1, 1.4903926402016152 0.9024548389919359, 1.4619397662556435 0.8086582838174551, 1.4157348061512727 0.7222148834901989, 1.3535533905932737 0.6464466094067263, 1.277785116509801 0.5842651938487273, 1.1913417161825448 0.5380602337443566, 1.0975451610080642 0.5096073597983848, 1 0.5, 0.9024548389919359 0.5096073597983848, 0.8086582838174552 0.5380602337443566, 0.722214883490199 0.5842651938487273, 0.6464466094067263 0.6464466094067263, 0.5842651938487273 0.7222148834901989, 0.5380602337443565 0.8086582838174553, 0.5096073597983848 0.9024548389919361, 0.5 1.0000000000000004, 0.5096073597983849 1.0975451610080647, 0.5380602337443569 1.1913417161825455, 0.5842651938487278 1.2777851165098018, 0.6464466094067268 1.3535533905932744, 0.7222148834901996 1.4157348061512731, 0.8086582838174561 1.4619397662556437, 0.902454838991937 1.4903926402016154, 1.0000000000000013 1.5)), ((0.5 3, 0.4903926402016152 2.902454838991936, 0.4619397662556434 2.808658283817455, 0.4157348061512726 2.722214883490199, 0.3535533905932738 2.646446609406726, 0.2777851165098011 2.5842651938487275, 0.1913417161825449 2.5380602337443565, 0.0975451610080642 2.509607359798385, 0 2.5, -0.0975451610080641 2.509607359798385, -0.1913417161825449 2.5380602337443565, -0.277785116509801 2.5842651938487275, -0.3535533905932737 2.646446609406726, -0.4157348061512727 2.722214883490199, -0.4619397662556434 2.808658283817455, -0.4903926402016153 2.902454838991936, -0.5 3.0000000000000004, -0.4903926402016151 3.0975451610080644, -0.4619397662556432 3.1913417161825453, -0.4157348061512722 3.2777851165098015, -0.3535533905932732 3.3535533905932744, -0.2777851165098004 3.4157348061512733, -0.191341716182544 3.461939766255644, -0.097545161008063 3.490392640201615, 0.0000000000000012 3.5, 0.0975451610080655 3.4903926402016148, 0.1913417161825462 3.461939766255643, 0.2777851165098024 3.4157348061512716, 0.353553390593275 3.3535533905932726, 0.4157348061512736 3.2777851165097998, 0.4619397662556441 3.191341716182543, 0.4903926402016156 3.097545161008062, 0.5 3)), ((1.5 0, 1.4903926402016152 -0.0975451610080641, 1.4619397662556435 -0.1913417161825449, 1.4157348061512727 -0.2777851165098011, 1.3535533905932737 -0.3535533905932737, 1.277785116509801 -0.4157348061512726, 1.1913417161825448 -0.4619397662556434, 1.0975451610080642 -0.4903926402016152, 1 -0.5, 0.9024548389919359 -0.4903926402016152, 0.8086582838174552 -0.4619397662556434, 0.722214883490199 -0.4157348061512727, 0.6464466094067263 -0.3535533905932738, 0.5842651938487273 -0.2777851165098011, 0.5380602337443565 -0.1913417161825447, 0.5096073597983848 -0.0975451610080639, 0.5 0.0000000000000004, 0.5096073597983849 0.0975451610080646, 0.5380602337443569 0.1913417161825454, 0.5842651938487278 0.2777851165098017, 0.6464466094067268 0.3535533905932743, 0.7222148834901996 0.4157348061512731, 0.8086582838174561 0.4619397662556438, 0.902454838991937 0.4903926402016154, 1.0000000000000013 0.5, 1.0975451610080655 0.4903926402016149, 1.1913417161825461 0.4619397662556428, 1.2777851165098024 0.4157348061512717, 1.3535533905932748 0.3535533905932726, 1.4157348061512736 0.2777851165097996, 1.4619397662556441 0.1913417161825431, 1.4903926402016157 0.0975451610080622, 1.5 0)))

Comparison with ST_MakeEllipse
SELECT ST_MakeEllipse('POINT(4 -5)', 4, 4),
       ST_Buffer('POINT(4 -5)', 2);
-- Answer:
--    POLYGON((6 -5, 5.996053456856544 -4.874418960941373, 5.984229402628956 -4.7493335328713915, 5.964574501457378 -4.62523737082855, 5.937166322257262 -4.502620225670291, 5.902113032590307 -4.381966011250105, 5.859552971776503 -4.263750894630644, 5.809654104932039 -4.148441416869854, 5.752613360087727 -4.03649265179657, 5.688655851004031 -3.928346410042007, 5.618033988749895 -3.8244294954150537, 5.541026485551578 -3.7251520205026205, 5.4579372548428235 -3.6309057881426225, 5.3690942118573775 -3.542062745157177, 5.2748479794973795 -3.4589735144484215, 5.175570504584946 -3.381966011250105, 5.071653589957993 -3.31134414899597, 4.96350734820343 -3.2473866399122726, 4.851558583130146 -3.190345895067961, 4.736249105369356 -3.1404470282234973, 4.618033988749895 -3.0978869674096927, 4.497379774329709 -3.062833677742738, 4.374762629171449 -3.0354254985426223, 4.2506664671286085 -3.015770597371044, 4.125581039058627 -3.003946543143457, 3.9999999999999996 -3, 3.874418960941373 -3.003946543143457, 3.7493335328713915 -3.0157705973710445, 3.6252373708285504 -3.035425498542623, 3.5026202256702903 -3.062833677742738, 3.381966011250105 -3.0978869674096927, 3.263750894630644 -3.1404470282234973, 3.1484414168698547 -3.190345895067961, 3.036492651796569 -3.247386639912273, 2.928346410042006 -3.3113441489959703, 2.824429495415054 -3.381966011250105, 2.7251520205026205 -3.4589735144484215, 2.6309057881426225 -3.5420627451571773, 2.5420627451571765 -3.630905788142623, 2.458973514448421 -3.725152020502621, 2.381966011250105 -3.8244294954150533, 2.31134414899597 -3.928346410042007, 2.247386639912273 -4.03649265179657, 2.190345895067961 -4.148441416869855, 2.1404470282234973 -4.263750894630644, 2.0978869674096927 -4.381966011250106, 2.062833677742738 -4.502620225670291, 2.0354254985426223 -4.625237370828551, 2.015770597371044 -4.7493335328713915, 2.003946543143457 -4.874418960941374, 2 -5.000000000000001, 2.003946543143457 -5.125581039058627, 2.015770597371044 -5.2506664671286085, 2.035425498542623 -5.37476262917145, 2.062833677742738 -5.49737977432971, 2.0978869674096927 -5.618033988749896, 2.1404470282234973 -5.736249105369357, 2.190345895067961 -5.851558583130146, 2.247386639912273 -5.96350734820343, 2.3113441489959703 -6.071653589957993, 2.3819660112501055 -6.175570504584947, 2.458973514448422 -6.27484797949738, 2.542062745157177 -6.3690942118573775, 2.6309057881426225 -6.4579372548428235, 2.725152020502621 -6.541026485551579, 2.8244294954150533 -6.618033988749895, 2.9283464100420074 -6.688655851004031, 3.0364926517965696 -6.752613360087727, 3.1484414168698556 -6.80965410493204, 3.263750894630644 -6.859552971776503, 3.381966011250105 -6.902113032590307, 3.502620225670291 -6.937166322257262, 3.625237370828551 -6.964574501457378, 3.7493335328713924 -6.984229402628956, 3.8744189609413735 -6.996053456856544, 3.9999999999999996 -7, 4.125581039058628 -6.996053456856544, 4.2506664671286085 -6.984229402628956, 4.3747626291714505 -6.964574501457378, 4.49737977432971 -6.937166322257262, 4.618033988749895 -6.902113032590307, 4.736249105369357 -6.859552971776503, 4.851558583130145 -6.809654104932039, 4.963507348203431 -6.752613360087727, 5.071653589957993 -6.68865585100403, 5.175570504584948 -6.618033988749894, 5.27484797949738 -6.541026485551578, 5.3690942118573775 -6.4579372548428235, 5.4579372548428235 -6.369094211857377, 5.541026485551579 -6.2748479794973795, 5.618033988749896 -6.175570504584945, 5.688655851004031 -6.071653589957993, 5.752613360087727 -5.96350734820343, 5.809654104932039 -5.851558583130144, 5.859552971776503 -5.736249105369356, 5.902113032590307 -5.618033988749893, 5.937166322257262 -5.497379774329709, 5.964574501457378 -5.37476262917145, 5.984229402628956 -5.250666467128608, 5.996053456856544 -5.125581039058627, 6 -5))
--    POLYGON((6 -5, 5.961570560806461 -5.390180644032257, 5.847759065022574 -5.765366864730179, 5.662939224605091 -6.111140466039204, 5.414213562373095 -6.414213562373095, 5.111140466039204 -6.662939224605091, 4.765366864730179 -6.847759065022574, 4.390180644032257 -6.961570560806461, 4 -7, 3.6098193559677436 -6.961570560806461, 3.2346331352698208 -6.847759065022574, 2.888859533960796 -6.662939224605091, 2.585786437626905 -6.414213562373095, 2.3370607753949093 -6.111140466039204, 2.152240934977426 -5.765366864730179, 2.038429439193539 -5.390180644032255, 2 -4.999999999999998, 2.0384294391935396 -4.609819355967741, 2.1522409349774274 -4.234633135269818, 2.337060775394911 -3.888859533960793, 2.5857864376269073 -3.5857864376269024, 2.8888595339607983 -3.3370607753949075, 3.2346331352698243 -3.152240934977425, 3.609819355967748 -3.0384294391935383, 4.000000000000005 -3, 4.390180644032262 -3.03842943919354, 4.765366864730185 -3.1522409349774287, 5.11114046603921 -3.337060775394913, 5.414213562373099 -3.5857864376269095, 5.662939224605094 -3.8888595339608014, 5.847759065022577 -4.234633135269828, 5.961570560806463 -4.609819355967751, 6 -5))

Note: This example shows that the only difference between a circle constructed using ST_MakeEllipse and a circle constructed using ST_Buffer is the number of line segments in the approximation. ST_MakeEllipse is more fine-grained (100 segments rather than 32).

See also