ST_Scale for MySQL Spatial

A version of my Scale function for SQL Server Spatial and Oracle Spatial is available for MySQL.

Function Declaration

 DELIMITER $$
 CREATE FUNCTION `ST_Scale`
 (
   p_geometry geometry,
   p_xFactor  DOUBLE,
   p_yFactor  DOUBLE,
   p_round    INT
 )
 RETURNS geometry
 BEGIN
   -- Processing
   RETURN geometry;
 END;
 DELIMITER ;

Function Testing

 -- Point
 SELECT ST_AsText(ST_Scale(ST_PointFromText('POINT(0 1)',0), 5.0, 3.1, 2)) AS scaledGeom;
 # scaledGeom
 'POINT(0 3.1)'
 -- Linestring
 SELECT ST_AsText(ST_Scale(ST_GeomFromText('LINESTRING(0.1 0.2,1.4 45.2)',0),-5.0,3.2, 3)) AS scaledGeom;
 # scaledGeom
 'LINESTRING(-0.5 0.32,-7 4.48)'
 -- Polygon
 SELECT ST_AsText(ST_Scale(ST_GeomFromText('POLYGON((0 0,10 0,10 10,0 10,0 0))',0),-5.0,30.1, 3)) AS scaledGeom;
 # scaledGeom
 'POLYGON((-0 0,-50 301,-50 301,-0 0,-0 0))'

If you think this is of use to you, make a donation and I will release the code to you along with any other MySQL functions I have created.