Private Sub createShape(ByVal lista As ArrayList)
Try
Dim j As Integer
Dim strFolder As String = "C:\\tmp"
Dim strShapeFieldName As String = "Shape"
Dim pWorkspaceFactory As ShapefileWorkspaceFactory = New ShapefileWorkspaceFactoryClass()
Dim pFWS As IFeatureWorkspace = pWorkspaceFactory.OpenFromFile(strFolder, 0)
Dim pFields As IFields = New FieldsClass()
Dim pFieldsEdit As IFieldsEdit = pFields
Dim pField As IField = New FieldClass()
Dim pFieldEdit As IFieldEdit = pField
pFieldEdit.Name_2 = strShapeFieldName
pFieldEdit.Type_2 = esriFieldType.esriFieldTypeGeometry
Dim pGeomDef As IGeometryDef = New GeometryDefClass()
Dim pGeomDefEdit As IGeometryDefEdit = pGeomDef
pGeomDefEdit.GeometryType_2 = esriGeometryType.esriGeometryPolyline
pFieldEdit.GeometryDef_2 = pGeomDef
pFieldsEdit.AddField(pField)
Dim pFeatClass As IFeatureClass = pFWS.CreateFeatureClass("asd", pFields, Nothing, Nothing, esriFeatureType.esriFTSimple, strShapeFieldName, "")
For j = 0 To lista.Count - 1
Dim fb As IFeatureBuffer = pFeatClass.CreateFeatureBuffer()
Dim Feature As IFeature = pFeatClass.CreateFeature()
Dim FeatureCursor As IFeatureCursor = pFeatClass.Insert(True)
fb.Shape = lista(j)
FeatureCursor.InsertFeature(fb)
FeatureCursor.Flush()
Next
Catch ex As Exception
Throw ex
End Try
End Sub
Carlos Javier Martín Cano