public static SurfaceOperationCollection ReadSurfaceOperations(TinSurface tinsurf)
{
Document acadDoc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
using (Transaction tr = acadDoc.TransactionManager.StartTransaction())
{
SurfaceOperationCollection SuOpColl = tinsurf.Operations;
tr.Commit();
return SuOpColl;
}
}
public static void SortSurfaceOperations(SurfaceOperationCollection before, SurfaceOperationCollection after)
{
Document acadDoc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
using (Transaction tr = acadDoc.TransactionManager.StartTransaction())
{
var m_Bef = from x in before.GetType().FullName
//where x.GetType().FullName == "Autodesk.Civil.DatabaseServices.SurfaceOperationAddBoundary"
select x;
var m_Aft = from x in before.GetType().FullName
//where x.GetType().FullName == "Autodesk.Civil.DatabaseServices.SurfaceOperationAddBoundary"
select x;
foreach(SurfaceOperation x in m_Bef)
{
foreach(SurfaceOperation y in m_Aft)
{
if(x != y)
{
y.MoveUp();
}
}
}
tr.Commit();
}
}