Я всегда использовал:
ALTER DATABASE DB_NAME SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
SP_RENAMEDB 'DB_NAME','DB_NAME_NEW'
Go
ALTER DATABASE DB_NAME_NEW SET MULTI_USER -- set back to multi user
GO
Вы можете попробовать следующее приближение для выполнения чего-то похожего на предложение многоугольника, основанного на методах SVG DOM:
var totalPathLength = pathelm.getTotalLength();
var step = totalPathLength / 100;
for(var dist=0; dist < totalPathLength; dist+=step)
{
var pt = pathelm.getPointAtLength(dist);
addToAverage(pt.x, pt.y);
}
Я думаю, что самый простой подход - использовать центр ограничивающей рамки элемента пути ( pathelm.getBBox ()), это проще, чем предложение многоугольника.
Самое простое, что вы можете попробовать сделать, - это вычислить центр, взяв среднее значение всех точек многоугольника. Он должен работать для всех полигонов, кроме самых неправильных. Я использовал тот же алгоритм для хорошего результата в своих программах.
Удачи.