الاسم
ST_3DMaxDistance — تُعيد المسافة الديكارتية القصوى ثلاثية الأبعاد (بحسب النظام المرجعي المكاني) بين شكلين هندسيين بوحدات الإسقاط.
المختصر
float ST_3DMaxDistance(geometry g1, geometry g2);
الوصف
تُعيد المسافة الديكارتية القصوى ثلاثية الأبعاد بين شكلين هندسيين بوحدات الإسقاط (وحدات النظام المرجعي المكاني).
تدعم هذه الدالة الأبعاد الثلاثية ولا تُسقط قيمة Z.
تدعم هذه الدالة الأسطح متعددة الوجوه (Polyhedral surfaces).
متاحة منذ: 2.0.0
تغيّرت في: 2.2.0 - في حالة شكل ثنائي الأبعاد وآخر ثلاثي الأبعاد، لم يعد يُفترض أن Z المفقودة تساوي 0.
أمثلة
-- Geometry example - units in meters (SRID: 2163 US National Atlas Equal area) (3D point and line compared 2D point and line)
-- Note: currently no vertical datum support so Z is not transformed and assumed to be same units as final.
SELECT ST_3DMaxDistance(
ST_Transform(ST_GeomFromEWKT('SRID=4326;POINT(-72.1235 42.3521 10000)'),2163),
ST_Transform(ST_GeomFromEWKT('SRID=4326;LINESTRING(-72.1260 42.45 15, -72.123 42.1546 20)'),2163)
) As dist_3d,
ST_MaxDistance(
ST_Transform(ST_GeomFromEWKT('SRID=4326;POINT(-72.1235 42.3521 10000)'),2163),
ST_Transform(ST_GeomFromEWKT('SRID=4326;LINESTRING(-72.1260 42.45 15, -72.123 42.1546 20)'),2163)
) As dist_2d;
dist_3d | dist_2d
------------------+------------------
24383.7467488441 | 22247.8472107251