|
阅读:776回复:0
AO + VB.NET 向图层(面)中添加图元时怎么设置填充颜色、边界线等
<P>小弟向图层中添加图元,可以填加成功(有记录)但什么也看不见,应该是需要设置Symbol后再添加,但应该什么加呢?下面是代码</P>
<P> Dim mPoint As IPoint<BR> Dim m_pMpt As IMultipoint<BR> Dim m_pPtColl As IPointCollection<BR> Dim pPolygon As Polygon<BR> Dim pWorkspaceFactory As IWorkspaceFactory<BR> Dim pWorkspaceEdit As IWorkspaceEdit<BR> Dim pFeatureLayer As IFeatureLayer<BR> Dim pDataSet As IDataset<BR> Dim pFeature As IFeature</P> <P> 'pGeoms_Polyline = New Collection<BR> mPoint = New Point<BR> m_pMpt = New Multipoint<BR> m_pPtColl = m_pMpt<BR> '第一个点<BR> mPoint.X = AxMapControl1.Bounds.X<BR> mPoint.Y = AxMapControl1.Bounds.Y<BR> m_pPtColl.AddPoint(mPoint)<BR> '第二个点<BR> mPoint.X = AxMapControl1.Bounds.X + AxMapControl1.Bounds.Width<BR> mPoint.Y = AxMapControl1.Bounds.Y<BR> m_pPtColl.AddPoint(mPoint)<BR> '第三个点<BR> mPoint.X = AxMapControl1.Bounds.X + AxMapControl1.Bounds.Width<BR> mPoint.Y = AxMapControl1.Bounds.Y + AxMapControl1.Bounds.Height<BR> m_pPtColl.AddPoint(mPoint)<BR> '第四个点<BR> mPoint.X = AxMapControl1.Bounds.X<BR> mPoint.Y = AxMapControl1.Bounds.Y + AxMapControl1.Bounds.Height<BR> m_pPtColl.AddPoint(mPoint)<BR> '第五个点<BR> mPoint.X = AxMapControl1.Bounds.X<BR> mPoint.Y = AxMapControl1.Bounds.Y<BR> m_pPtColl.AddPoint(mPoint)</P> <P> pPolygon = New Polygon<BR> pPolygon.AddPointCollection(m_pPtColl)</P> <P> '得到0层的FeatureClass<BR> pWorkspaceFactory = New ShapefileWorkspaceFactory<BR> pFeatureLayer = AxMapControl1.ActiveView.FocusMap.Layer(0)<BR> '创建一个编辑工作区<BR> pDataSet = pFeatureLayer.FeatureClass<BR> MsgBox(pDataSet.Workspace.PathName)<BR> pWorkspaceEdit = pWorkspaceFactory.OpenFromFile(pDataSet.Workspace.PathName, 0)<BR> '开始编辑<BR> pWorkspaceEdit.StartEditOperation()<BR> pWorkspaceEdit.StartEditing(True)<BR> '将创建的Polygon,加到Polygon层上,新建的Feature中<BR> pFeature = pFeatureLayer.FeatureClass.CreateFeature<BR> pFeature.Shape = pPolygon<BR> '保存Feature<BR> pFeature.Store()<BR> AxMapControl1.ActiveView.Refresh()<BR> '停止编辑<BR> pWorkspaceEdit.StopEditOperation()<BR> pWorkspaceEdit.StopEditing(True)</P> |
|