متد ShortestLineTo
این متد جدید دو شکل را بررسی کرده و کوتاهترین خط بین آنها را پیدا می کند. کد زیر را ببینید:
1 2 3 4 5 6 7 8 9 |
DECLARE @Shape1 geometry = 'CIRCULARSTRING(0 50, 90 50, 180 50)' DECLARE @Shape2 geometry = 'LINESTRING (0 50, 90 50, 180 50)' SELECT Shape1MinVersion = @Shape1.MinDbCompatibilityLevel(), Shape2MinVersion = @Shape2.MinDbCompatibilityLevel() |
این کد دو پلیگون را تعریف می کند و سپس با استفاده از ShortestLineTo برای تعیین، تولید، و بازگشت کوتاهترین خط مستقیم که به آنها متصل است اقدام می کند. STBuffer نیز برای بافرزدن رشته خط استفاده می شود تا وضوح نمایش آن در viewer افزایش یابد:
متد MinDbCompatibilityLevel
با اضافه شدن پشتیبانی برای اشکال منحنی در SQL Server 2012 می آید پشتیبانی از سازگاری با نسخه های قبلی SQL سرور ( 2008 و 2008 R2 ) که منحنی را پشتیبانی نمی کند لازم می آید. متد جدید MinDbCompatibilityLevel رشته WKT می پذیرد و حداقل نسخه از SQL Server مورد نیاز برای پشتیبانی از شکل تعریف شده توسط آن رشته را برمی گرداند. به عنوان مثال، کد زیر را در نظر بگیرید:
1 2 3 4 5 6 7 8 9 |
DECLARE @Shape1 geometry = 'CIRCULARSTRING(0 50, 90 50, 180 50)' DECLARE @Shape2 geometry = 'LINESTRING (0 50, 90 50, 180 50)' SELECT Shape1MinVersion = @Shape1.MinDbCompatibilityLevel(), Shape2MinVersion = @Shape2.MinDbCompatibilityLevel() |
متد MinDbCompatibilityLevel برای نخستین رشته WKT مقدار110 را بر می گرداند (اشاره به نسخه 11.0 ) و برای دومین رشته WKT مقدار100 را بر می گرداند (اشاره به نسخه 10.0 ). دلیل آن این است که اولین رشته WKT شامل یک رشته دایره ای است، که نیاز به SQL سرور 2012 (نسخه11.0) دارد، در حالی که رشته خط موجود در رشته WKT دوم توسط SQL سرور 2008 (نسخه 10.0) و بالاتر پشتیبانی می شود.