zpfly_211
路人甲
路人甲
  • 注册日期2006-04-01
  • 发帖数4
  • QQ
  • 铜币134枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1452回复:1

请教高手,为什么不显示线

楼主#
更多 发布于:2007-05-31 13:45
<P> CString filter(TEXT("ESRI Shapefiles (*.shp)|*.shp|"));<BR> CString m_path;<BR> <BR> CFileDialog dlg(FALSE, TEXT(".shp"), 0, OFN_ALLOWMULTISELECT | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY, filter);<BR> if (dlg.DoModal() == IDOK)<BR> {<BR>  <BR>  m_path = dlg.GetPathName();<BR>  <BR>  // Open a new connection<BR>  CMoDataConnection conn;<BR>  if (!conn.CreateDispatch(TEXT("MapObjects2.DataConnection")))<BR>   return;<BR>  <BR>  conn.SetDatabase(GetFileDirectory(m_path));<BR>  if (!conn.Connect())<BR>   return;<BR>  <BR>  // Define the geodataset<BR>  CMoTableDesc tableDesc;<BR>  if (!tableDesc.CreateDispatch(TEXT("MapObjects2.TableDesc")))<BR>   return;<BR>  <BR>  // set the field names, types, and lengths<BR>  tableDesc.SetFieldCount(1);  <BR>  tableDesc.SetFieldName(0, TEXT("高程值"));<BR>  tableDesc.SetFieldType(0, moDouble);<BR>  tableDesc.SetFieldLength(0, 16);<BR>  tableDesc.SetFieldScale(0,3);<BR>  <BR>  <BR>  VARIANT va;<BR>  VariantInit(;va);<BR>  va.vt = VT_BOOL;<BR>  va.boolVal = false;<BR>  <BR>  CMoGeoDataset geoDataset(conn.AddGeoDataset(GetFileTitle(m_path), moLine, tableDesc, va ,va));<BR>  ASSERT(LPDISPATCH(geoDataset));<BR>  CMoMapLayer layer;<BR>  if (!layer.CreateDispatch(TEXT("MapObjects2.MapLayer")))<BR>   return;<BR>  layer.SetGeoDataset(geoDataset);<BR>  <BR>  // Add a record for each line to the GeoDataset<BR>  CMoRecordset recs(layer.GetRecords());<BR>  CMoFields fields(recs.GetFields());<BR>  ////////////////////////////////////////////////////////////////////<BR>  ///////////////////////////////////////////////////////////////////////<BR>  ///////////////////////////////////////////////////////////////////////////<BR>  <BR>  CMoPoints pts;<BR>  pts.CreateDispatch(TEXT("MapObjects2.Points"));<BR> <BR>  CMoPoint pt;<BR>  pt.CreateDispatch(TEXT("MapObjects2.Point"));</P>
<P>  CMoLine line;<BR>  line.CreateDispatch(TEXT("MapObjects2.Line"));<BR>  CMoParts parts;<BR>  parts.CreateDispatch(TEXT("MapObjects2.Parts"));<BR> <BR>  pt.SetX(10);<BR>  pt.SetY(10);<BR>  pts.Add(pt);<BR>  pt.SetX(20);<BR>  pt.SetY(20);<BR>  pts.Add(pt);<BR> <BR>  <BR>  parts=line.GetParts();<BR>  parts.Add(pts);</P>
<P>  recs.AddNew(); <BR>  SetValue(fields, TEXT("Shape"), parts);  <BR>  SetValue(fields, TEXT("高程值"),pt.GetX());<BR>  recs.Update();</P>
<P>  layer.GetSymbol().SetColor(RGB(255,0,0));<BR>  layer.GetSymbol().SetSize(10);<BR>  layer.SetVisible(TRUE);<BR>  CMoLayers layers(m_map.GetLayers());<BR>  layers.Add(layer);<BR>  m_map.SetExtent(m_map.GetFullExtent());<BR>  <BR>  m_map.Refresh();<BR>  <BR>  <BR> }<BR> </P>
喜欢0 评分0
nmgwolf
路人甲
路人甲
  • 注册日期2007-06-01
  • 发帖数15
  • QQ
  • 铜币113枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2007-06-04 10:06
帮你支持下!论坛人气太..........!
举报 回复(0) 喜欢(0)     评分
游客

返回顶部