public static IFeatureLayer StoreGeometyToLayer(List<IGeometry> geometry)
{
IFeatureLayer pFeatureLayer = new FeatureLayerClass();
IFeatureClass pFeatCls = pFeatureLayer.FeatureClass;
try
{
object missing = Type.Missing;
//m_scene.ClearSelection();
IDataset pDataSet = pFeatureLayer.FeatureClass as IDataset;
IWorkspaceEdit m_WorkSpaceEdit = null;
m_WorkSpaceEdit = (IWorkspaceEdit)pDataSet.Workspace;
if (!m_WorkSpaceEdit.IsBeingEdited())
{
m_WorkSpaceEdit.StartEditing(true);
m_WorkSpaceEdit.EnableUndoRedo();
}
foreach (IGeometry pGeometry in geometry)
{
ITopologicalOperator pTop = pGeometry as ITopologicalOperator;
pTop.Simplify();
m_WorkSpaceEdit.StartEditOperation();
IFeature pFeature = pFeatCls.CreateFeature();
pFeature.Shape = ModifyGeomtryZMValue(pFeatCls, pGeometry);
pFeature.Store();
m_WorkSpaceEdit.StopEditOperation();
}
m_WorkSpaceEdit.StopEditing(true);
return pFeatureLayer;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "StoreGeometyToLayer Error");
return pFeatureLayer;
}
}