sigster 发表于 2016-10-16 08:16:33

ZWCAD SHP文件


我正在测试ZWCAD,它不是SHP输入的
有人尝试使用它将SHP文件导入CAD吗
http://www . easygisdotnet . com/
https://dot spatial . codeplex . com
**** Hidden Message *****

sigster 发表于 2016-10-21 22:00:41


我得到了一点帮助,这就是我所拥有的,但它画了一条长线
我如何结束每个折线
   _
      Public Sub readxy()
            Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()
                Dim acBlkTbl As BlockTable
                acBlkTbl = CType(acTrans.GetObject(acCurDb.BlockTableId, OpenMode.ForRead), BlockTable)
                Dim acBlkTblRec As BlockTableRecord
                acBlkTblRec = CType(acTrans.GetObject(acBlkTbl(BlockTableRecord.ModelSpace), OpenMode.ForWrite), BlockTableRecord)
                Dim shapeActual As FeatureSet = FeatureSet.Open("PATH\FILE.shp")
                shapeActual.FillAttributes()
                Dim dt As System.Data.DataTable = shapeActual.DataTable
                Dim pline As Polyline = New Polyline()
                pline.SetDatabaseDefaults()
                For count As Integer = 0 To shapeActual.Features.Count - 1
                  For Each feature As IFeature In shapeActual.Features 'circle through the features
                        For i As Integer = 0 To feature.BasicGeometry.NumGeometries - 1 'circle through the parts of one feature
                            For Each coord As Coordinate In feature.BasicGeometry.GetBasicGeometryN(i).Coordinates() 'circle through the coordinates of the feature part
                              Dim AdresX = coord.X
                              Dim AdresY = coord.Y
                              pline.AddVertexAt(count, New Point2d(coord.X, (coord.Y + 1)), 0.0, 0.0, 0.0)
                              count = count + 1
                              ed.WriteMessage(vbCr & count)
                              ed.WriteMessage(vbCr & feature.FeatureType.ToString)
                            Next
                        Next
                  Next
                Next
                acBlkTblRec.AppendEntity(pline)
                acTrans.AddNewlyCreatedDBObject(pline, True)
                acTrans.Commit()
            End Using
      End Sub

MickD 发表于 2016-10-21 22:16:26

你的意思是“关闭”每一条线路吗?如果是这样,请使用pline。Close()创建闭合多段线(无间隙)

sigster 发表于 2016-10-22 04:10:47


你的意思是pline.Closed=True已经试过了
我上传的图像显示房子行我插入
1.如何插入一行
2.手动删除多余的行

MickD 发表于 2016-10-22 18:15:40

啊好的。看起来你需要找到几何数据的开始/结束对。
能否附上您的shp样本文件,让我看看?

sigster 发表于 2016-10-23 09:40:25


这是SHP样本

MickD 发表于 2016-10-23 18:50:13

嗨,sigster,
我希望能够阅读shp文件,但它是二进制的,我也看了地图帮助文档,它们几乎没有用(对我来说,我不知道产品),但在看了一会儿图片后,我会尝试只添加线段,而不是折线,看看你会得到什么。
也就是说,不是每个点都附加一个顶点,而是每隔一个点创建一条线。换句话说,将顶点列表分割成2个点的元组,并为每个元组创建一行,希望这样有意义?
这可能不是您想要的,但可能会带来一些线索。
您能提供一些您正在使用的“FeatureSet”库/api的在线帮助吗?

sigster 发表于 2016-10-23 19:32:18

我使用这个<br>https://dotspatial.codeplex.com/
页: [1]
查看完整版本: ZWCAD SHP文件