⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mapobject学习笔记-第五讲 mo图形的绘制_魏国强 的 博客.htm

📁 MO+VC的学习文档资料
💻 HTM
📖 第 1 页 / 共 5 页
字号:
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Private Sub 
      Map1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As 
      Single)</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>If Option1 
      Then</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Set recs = 
      Map1.TrackRectangle</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>ElseIf Option2 
      Then</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Set eli = 
      Map1.TrackCircle</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Else</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Set ply = 
      Map1.TrackPolygon</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End If</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Map1.TrackingLayer.Refresh 
      True</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End 
      Sub</SPAN></P><SPAN>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><STRONG>二、写文字</STRONG></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>MO</SPAN><SPAN>一般采用</SPAN><SPAN>DrawText</SPAN><SPAN>方法在地图上写文字,也可以用画点时的</SPAN><SPAN>motruetypemarker</SPAN><SPAN>方式,在地图上写各种地图上常用的符号。</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><STRONG><SPAN>1</SPAN><SPAN>、</SPAN><SPAN>DrawText</SPAN><SPAN>方法</SPAN></STRONG></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>用</SPAN><SPAN>DrawText</SPAN><SPAN>方法可以在地图上写文字,语法结构为:</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>object.DrawText 
      text, shape, symbol</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>其中,</SPAN><SPAN>object</SPAN><SPAN>:对象,</SPAN><SPAN>text</SPAN><SPAN>:字符串,</SPAN><SPAN>shape</SPAN><SPAN>:参照图形,可以是点、点集、线和矩形;</SPAN><SPAN>symbol</SPAN><SPAN>:为一个</SPAN><SPAN>Textsymbol</SPAN><SPAN>显示对象。如果参照图形为点,则文字中心在点上;如果为点集,则中心在点集的范围中心上;为直线,中心在线段的中心上,方向同线段的方向;为折线,则文字的中心和方向按照点集的样条插值计算;如果为矩形,则文字国矩形中心的水平线排列。</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><STRONG><SPAN>(</SPAN><SPAN>1</SPAN><SPAN>)在点击出写文字</SPAN></STRONG></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>示例:</SPAN><SPAN>Option 
      Explicit</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Dim p As 
      MapObjects2.Point</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Dim tSym As New 
      TextSymbol</SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Private Sub 
      Map1_AfterTrackingLayerDraw(ByVal hDC As stdole.OLE_HANDLE)</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>If Not p Is 
      Nothing Then</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Dim sym As New 
      Symbol</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>tSym.Color 
      = moRed</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Map1.DrawText 
      Text1.Text, p, tSym</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End If</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End Sub</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Private Sub 
      Map1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As 
      Single)</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Set p = 
      Map1.ToMapPoint(x, y)</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Map1.TrackingLayer.Refresh 
      True</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End Sub</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><STRONG><SPAN>2</SPAN><SPAN>)在线段上添加文字</SPAN></STRONG></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>示例:</SPAN><SPAN>Option 
      Explicit</SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Dim g_line As 
      MapObjects2.Line</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Dim pts As 
      MapObjects2.Points</SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>Private Sub 
      Map1_AfterTrackingLayerDraw(ByVal hDC As stdole.OLE_HANDLE)</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>' make sure 
      there's a line</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>If Not g_line Is 
      Nothing Then</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>' make sure there's at 
      least two points in the line</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>If pts.Count &gt; 1 
      Then</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Dim tSym 
      As New TextSymbol</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>' use the 
      font of the textbox control</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Set 
      tSym.Font = Text1.Font</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Dim sym As 
      New Symbol</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>sym.Color 
      = moRed</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      </SPAN>Map1.DrawShape g_line, sym</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      </SPAN>Map1.DrawText Text1.Text, g_line, tSym</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>End If</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End If</SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN>End 
      Sub</SPAN></P></SPAN></FONT></SPAN></DIV></TD></TR></TBODY></TABLE><BR>
<DIV class=opt><A title=查看该分类中所有文章 
href="http://hi.baidu.com/laowei/blog/category/&Auml;&not;&Egrave;&Iuml;·&Ouml;&Agrave;à">类别:默认分类</A> | <A 
title=将此文章添加到百度搜藏 onclick="return addToFavor();" 
href="http://cang.baidu.com/do/add" target=_blank>添加到搜藏</A> | 浏览(<SPAN 
id=result></SPAN>) | <A 
href="http://hi.baidu.com/laowei/blog/item/48bc2fddcde353dd8d102923.html#send">评论</A>&nbsp;(3)
<SCRIPT language=javascript>
/*<![CDATA[*/
var pre = [true,'MapObject学习笔记-第四讲电子地图常用工具开发', 'MapObject学习笔记-第四讲电子...','/laowei/blog/item/c13ed52a61191b9f033bf621.html'];
var post = [true,'MapObject学习笔记-第六讲 MO中的坐标和坐标系','MapObject学习笔记-第六讲 MO中...', '/laowei/blog/item/b5c980cbe9e399f952664f34.html'];
if(pre[0] || post[0]){
	document.write('<div style="height:5px;line-height:5px;">&nbsp;</div><div id="in_nav">');
	if(pre[0]){
		document.write('上一篇:<a href="' + pre[3] + '" title="' + pre[1] + '">' +  pre[2] + '</a>&nbsp;&nbsp;&nbsp;&nbsp;');
	}
	if(post[0]){
		document.write('下一篇:<a href="' + post[3] + '" title="' + post[1] + '">' +  post[2] + '</a>');
	}
	document.write('</div>');
}
/*]]>*/
</SCRIPT>
 </DIV>
<DIV class=line></DIV>
<STYLE type=text/css>#in_related_doc A {
	TEXT-DECORATION: none
}
</STYLE>

<DIV id=in_related_tmp></DIV>
<SCRIPT language=javascript type=text/javascript>
/*<![CDATA[*/
function HI_MOD_IN_RELATED_DOC_CALLBACK(arg){
    if(arg.length <= 1) return false;
    var hasMore = arg[0];
    var D=function(A,B){A[A.length]=B;}
    if(arg.length % 2 == 0) D(arg, ["","","",""]);

    var html = ['<div id="in_related_doc"><div class="tit">相关文章:</div>'];
    D(html, '<table cellpadding="0" cellspacing="3" border="0">');
    for(var i = 1, j = arg.length; i < j; i += 2){
        D(html, '<tr>');
        D(html, '<td width="15px"><a style="font-size:25px" >&#8226;</a></td><td><a href="http://hi.baidu.com/' + arg[i][3] + '/blog/item/' + arg[i][2] + '.html" target="_blank" title="' + arg[i][0] + '">' + arg[i][1] + '</a>');
        D(html, new Array(10).join('\u3000'));
        D(html, '</td>');
        if(arg[i + 1][0] != "")
            D(html, '<td width="15px"><a style="font-size:25px" >&#8226;</a></td><td><a href="http://hi.baidu.com/' + arg[i + 1][3] + '/blog/item/' + arg[i + 1][2] + '.html" target="_blank" title="' + arg[i + 1][0] + '">' + arg[i + 1][1] + '</a></td>');
        else
            D(html, '<td>&nbsp;</td><td>&nbsp;</td>');
        D(html, '</tr>');
    }
    if(hasMore) D(html, '<tr><td colspan="4"><a target="_blank" href="/sys/search?pageno=1&type=7&sort=1&word=MapObject%D1%A7%CF%B0%B1%CA%BC%C7%A3%AD%B5%DA%CE%E5%BD%B2%20MO%CD%BC%D0%CE%B5%C4%BB%E6%D6%C6&item=48bc2fddcde353dd8d102923">更多&gt;&gt;</a></td></tr>');
    D(html, '</table></div><div class="line">&nbsp;</div>');

    var div = document.getElementById('in_related_tmp');
    if(div){
        div.innerHTML = html.join('');
        while(div.firstChild){
            div.parentNode.insertBefore(div.firstChild, div);
        }
        div.parentNode.removeChild(div);
    }
	window.setTimeout("tracker_init('in_related_doc')",100);
}

if(RelatedDocData == -1){	// not supported xhr
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = '/sys/search?type=8&word=MapObject%D1%A7%CF%B0%B1%CA%BC%C7%A3%AD%B5%DA%CE%E5%BD%B2%20MO%CD%BC%D0%CE%B5%C4%BB%E6%D6%C6&item=48bc2fddcde353dd8d102923&t=' + new Date().getTime();
    document.getElementsByTagName('HEAD')[0].appendChild(script);
}else if(RelatedDocData == null){
	GetAndEval = true;
}else{
	eval(RelatedDocData);
}

/*]]>*/
</SCRIPT>

<DIV id=in_reader>
<DIV class=tit>最近读者:</DIV>
<SCRIPT>

	var g_spAnnony=true;


var g_read=[

["awming520","300e61776d696e673532309e01","awming520"],

["luojason","fb554c756f4a61736f6e2b04","LuoJason"],

["12708143","eb4831323730383134338603","12708143"],

["sbxm","9f517362786d6203","sbxm"],

{}
];
g_read.length=g_read.length-1;

var _rh1="";
var _rh2="";

function wrreader(){
	_rh1 += '<table width="100%" ><tr>';
	_rh2+='<tr>';
	if(g_spAnnony){
		_rh1+='<td align="center" width="10%" ><img border="0" width="55" height="55" src="http://img.baidu.com/hi/img/portraitn.jpg"></td>';
		_rh2+='<td>&nbsp;</td>';
		if(g_read.length>0){
			_rh1+='<td align="left" width="12%">';
		}else{
			_rh1+='<td align="left" width="100%">';
		}
		_rh1+='<a href="https://passport.baidu.com/?login&tpl=sp&tpl_reg=sp&u='+myref+'" target="_self">登录</a>后,您就出现在这里。</td>';
		_rh2+='<td>&nbsp;</td>'
	}
	if(g_read.length==0){
		if(!g_spAnnony){
			_rh1+='<td align=left width="100%">最近还没有登录用户看过这篇文章……</td>';
			_rh2+='<td>&nbsp;</td>';
		

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -