GISarabia.org
PostGIS › الدليل الرسمي › 8. مرجع دوال SFCGAL › 8.2. دوال الوصول والتعيين في SFCGAL
PostGIS 3.6 · Official Manual · ترجمة عربية

CG_Volume

الصفحة الأصلية بالإنجليزية postgis.net ↗

الاسم

CG_Volume — تحسب حجم مجسّم ثلاثي الأبعاد. إذا طُبّقت على أشكال سطحية (حتى المغلقة منها) فستُعيد 0.

المختصر

float CG_Volume(geometry geom1);

الوصف

متاحة منذ: 3.5.0

تتطلب هذه الدالة الواجهة الخلفية SFCGAL.

تدعم هذه الدالة الأبعاد الثلاثية ولا تُسقط قيمة Z.

تدعم هذه الدالة الأسطح متعددة الوجوه (Polyhedral surfaces).

تدعم هذه الدالة المثلثات وأسطح الشبكات المثلثية غير المنتظمة (TIN).

تطبّق هذه الدالة مواصفة SQL/MM. SQL-MM IEC 13249-3: 9.1 (مماثلة لـ CG_3DVolume)

مثال

عند إنشاء أسطح مغلقة باستخدام WKT، تُعامَل على أنها مساحية لا مجسّمة. لجعلها مجسّمة تحتاج إلى استخدام CG_MakeSolid. الأشكال المساحية ليس لها حجم. إليك مثالًا للتوضيح.

SELECT CG_Volume(geom) As cube_surface_vol,
    CG_Volume(CG_MakeSolid(geom)) As solid_surface_vol
    FROM (SELECT 'POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)),
    ((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)),
    ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),
    ((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)),
    ((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)),
    ((0 0 1, 1 0 1, 1 1 1, 0 1 1, 0 0 1)) )'::geometry) As f(geom);

    cube_surface_vol | solid_surface_vol
    ------------------+-------------------
    0 |                 1

انظر أيضًا

CG_3DArea, CG_MakeSolid, CG_IsSolid