




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MapX4.5新功能培训教程,创建新表,数据类型字符串miTypeString=0数字miTypeNumeric=1日期miTypeDate=2整型miTypeInt=3短整型miTypeSmallInt=4浮点型miTypeFloat=5逻辑类型miTypeLogical=6,增加字段的方法Fields.Addmethod-增加字段Fields.AddDateFieldmethod-增加日期类型字段Fields.AddFloatFieldmethod-增加浮点类型的字段Fields.AddIntegerFieldmethod-增加浮点类型的字段Fields.AddLogicalFieldme
2、thod-增加整数类型的字段Fields.AddNumericFieldmethod-增加数字类型的字段Fields.AddSmallIntFieldmethod-增加短整数类型的字段Fields.AddStringFieldmethod-增加字符类型的字段删除字段Fields.Removemethod-删除一个字段Fields.RemoveAllmethod-删除所有字段,创建新表-LayerInfo对象LayerInfo.type常数miLayerInfoTypeTemp=6-临时表miLayerInfoTypeNewTable=7-磁盘表,创建新表LayerInfo参数layerinfo
3、type;parameter;required;typemiLayerInfoTypeTemp:Name:No;String;Nameoftheaddedlayer;Default:LayerX”。Fields:No;Fieldscollection;Specifiesthecolumn(s)thetablewillhave。Features:Yes,ifnofields;Featurescollection;Specifiestherowstofillthetablewith;Default:none。TableStorageType:No;String;Default:Native,Val
4、idoptions:Native(临时tab表),MemTable(存在于内存)。,miLayerInfoTypeNewTabFileSpec:Yes;String;Nameof.tabfilefornewtable.Name:No;String;Nameoftheaddedlayer;Default:builtonfilespec.Fields:No;Fieldscollection;Specifiesthecolumnthetablewillhave.Features:Yes,ifnoFields;Featurescollection;Specifiestherowstofilltheta
5、blewith;Default:NONE.,示例Fori=1ToGrid1.Rows-1IfInStr(StrType,字符型)0Thenflds.AddStringFieldStrName,NumWidthElseIfInStr(StrType,整型)Thenflds.AddIntegerFieldStrNameElseIfInStr(StrType,短整型)Thenflds.AddSmallIntFieldStrNameElseIfInStr(StrType,浮点型)Thenflds.AddFloatFieldStrNameElseIfInStr(StrType,十进制型)Thenflds
6、.AddNumericFieldStrName,NumWidth,NumDecElseIfInStr(StrType,日期型)Thenflds.AddDateFieldStrNameElseIfInStr(StrType,逻辑型)Thenflds.AddLogicalFieldStrNameEndIfNexti,IfCheck2.Value=1Then创建新表LayerInfo.Type=7miLayerInfoTypeNewTabLayerInfo.AddParameterfilespec,filespecElseIfCheck2.Value=0Then创建临时表LayerInfo.Type
7、=6miLayerInfoTypeTempLayerInfo.AddParameterTableStorageType,MemTable临时文件保存在磁盘上还是内存。EndIfLayerInfo.AddParameterName,layernameLayerInfo.AddParameterFields,fldsIfOption_AddToDataset=TrueThen加入数据集LayerInfo.AddParameterAutoCreate,1LayerInfo.AddParameterDatasetName,Text1.TextEndIf,支持日期类型,MapX4.5支持Date类型的字
8、段,还有Numeric和String类型的字段.也就是说,若从外部数据源引入数据到数据集时,日期类型的字段将作为日期类型被引入,而不是以字符串类型引入,或者不引入。日期的格式由控制面板上区域设置中的日期来定义。,DimDateFldAsDate定义数据源OdbcQueryInfo.ConnectString=odbc;OdbcQueryInfo.DataSource=“gcgl”oracle数据库OdbcQueryInfo.SqlQuery=select*fromteam定义绑定层bindlayer.layername=Teambindlayer.LayerType=miBindLayerTy
9、peXYbindlayer.RefColumn1=lng坐标字段-经度bindlayer.RefColumn2=“lat”坐标字段-纬度绑定Setds=Formmain.Map1.Datasets.add(miDataSetODBC,OdbcQueryInfo,team,Team,bindlayer)DateFld=ds.Value(1,ds.Fields.Count)读出第一行日期值MsgBoxDateFld,紧缩,在Mapx4.0下作紧缩时,只能事先创建一个带结构的空表。然后将记录加入到空表中。在Mapx4.5下可以使用LayerInfo的创建带结构的临时表和新表的功能来完成紧缩的功能。,
10、Setlyr=Formmain.Map1.Layers(ToolBbo1.Text)Setds=Formmain.Map1.Datasets.add(6,lyr)获取被紧缩表的路径及表名filespec=Formmain.Map1.Layers.Item(ToolBbo1.Text).filespeclayername=lyr.Name将表临时存放于内存,紧缩,LayerInfo.Type=6miLayerInfoTypeTempLayerInfo.AddParameterTableStorageType,MemTable临时文件保存在磁盘上还是内存。LayerInfo.AddParamete
11、rName,lyrpackLayerInfo.AddParameterFields,ds.FieldsLayerInfo.AddParameterFeatures,lyr.AllFeaturesFormmain.Map1.Layers.addLayerInfo,LayerPos注意:SetLayerInfo=Nothing,紧缩,从地图窗口删除原表Formmain.Map1.Datasets.Remove(ds.Name)Formmain.Map1.Layers.Remove(lyr.Name)Formmain.Map1.RefreshSetlyr=NothingSetds=NothingSe
12、tlyr=Formmain.Map1.Layers(lyrpack)Setds=Formmain.Map1.Datasets.add(6,lyr)从磁盘删除原表Killfilespec,紧缩,创建新表LayerInfo.Type=7miLayerInfoTypeNewTabLayerInfo.AddParameterfilespec,filespecLayerInfo.AddParameterName,layernameLayerInfo.AddParameterFields,ds.FieldsLayerInfo.AddParameterFeatures,lyr.AllFeaturesForm
13、main.Map1.Layers.addLayerInfo,LayerPos,紧缩,从地图窗口删除临时表Formmain.Map1.Datasets.Remove(ds.Name)Formmain.Map1.Layers.Remove(lyr.Name)Formmain.Map1.Refresh注意:Setds=NothingSetlyr=NothingSetLayerInfo=Nothing,紧缩,SQL查询,Layer.search方法,使用Where子句,查询定位所需数据。Variable对象和Variables集合:MapX4.5在表达式中支持变量替换.通过Variable对象和Var
14、iables集合,一个表达式中将包含对任意变量的引用,如字符串类型,feature对象类型的数据。Layer.search将之作为一个可选参数。,地理运算符的使用object1CONTAINSobject2:object2的中心点在object1中object1CONTAINS_ENTIREobject2:object2完全在object1中.object1CONTAINS_PARTobject2:object1与object2相交.object1ENTIRELY_WITHINobject2:object1完全在object2中.object1INTERSECTSobject2:object1
15、与object2相交object1PARTIALY_WITHINobject2:object1与object2相交.object1WITHINobject2:object1的中心点在object2中.,DimfAsMapXLib.FeatureDimvAsNewMapXLib.Variables查找州中的某一个城市Setf=Map1.Layers.Item(“states”).Selection.Item(1)选择州将城市的图层加入数据集Map1.Datasets.AddmiDatasetLayer,Map1.Layers(uscities),citiesds.v.Add“var1”,f加入f
16、eature变量v.Add“svar”,“TX”加入string变量v.Add“dvar”,Date加入date变量查找并将结果放入featurescollectionSetftrs=Map1.Layers.Item(uscities).Search(objwithinvar1andyear(dvar)=2000andstatesvar,v)高亮显示Map1.Layers.Item(uscities).Selection.Replaceftrs,节点编辑,编辑条件:1、具有节点的对象,如点(point),线(line),折线(polyline),区域(region)。节点可选择的对象有点,线,
17、折线,区域。节点可增加的对象有点,线,面。不具有节点的对象有弧段(Arc),圆域(ellipse/circle),矩形(rectangle),圆角矩形(roundrect),文本(text)2、对象处于被选中且可编辑状态。3、Map控件处于获得焦点状态。,选择节点:选择工具(miSelectTool)1.Click鼠标,选择一个2.Ctrl+Click:在选择与不选择间切换;选择多个;或选择范围的首点3.Shift+Click:选择范围的尾点,离首点距离最短4.Shift+Ctrl+click:选择范围的尾点,离首点距离最长,编辑模式:由Map1.FeatureEditMode来设置图元编辑模
18、式-拖动四个句柄,改变图元的形状:Map1.FeatureEditMode=miEditModeFeature,默认值节点编辑模式:Map1.FeatureEditMode=miEditModeNode移动或删除重叠的节点模式:Map1.FeatureEditMode=miEditModeNode|miMoveDuplicateNodes|miDeleteDuplicateNodes增加节点模式:Map1.FeatureEditMode=miEditModeNode|miEditModeAddNode,FeatureEditMode的常量设置miEditModeFeature=0 x1miEd
19、itModeNode=0 x2miMoveDuplicateNodes=0 x4miDeleteDuplicateNodes=0 x8miEditModeAddNode=0 x40,增加节点PrivateSubCommand1_Click()Map1.Layers.Addc:programfilesmapinfomapx4.0mapsusa.tabMap1.Layers.Item(1).Editable=TrueMap1.Layers.Item(1).ShowNodes=TrueMap1.CurrentTool=miSelectToolMap1.FeatureEditMode=miEditMo
20、deNodeOrmiEditModeAddNodeEndSub,移动或删除单个图元上的节点,而与之邻接的图元上的节点并不移动或删除。Formmain.Map1.FeatureEditMode=miEditModeNodeFormmain.Map1.SetFocus获取焦点,移动相邻图元重叠(重合)的节点Formmain.Map1.FeatureEditMode=miEditModeNodeormiMoveDuplicateNodesFormmain.Map1.SetFocus获取焦点,删除相邻图元重叠(重合)的节点Formmain.Map1.FeatureEditMode=miEditMode
21、FeatureormiDeleteDuplicateNodesFormmain.Map1.SetFocus获取焦点,新加函数,用于创建专题图,标注,SQL的表达式BufferDeformatNumber$Format$FormatDate$FormatNumber$StringCompareStringCompareIntlStringToDateObjectType,以buffer为例regionobject=Buffer(inputobject,resolution,width,unit_name)PrivateSubBufferState_Click()DimftrAsMapXLib.F
22、eatureDimftrsAsMapXLib.FeaturesDimvarsAsNewMapXLib.Variables获取第一个州Setftr=Map1.Layers.Item(USA).AllFeatures.Item(1)vars.AddvarFirstState,ftr对图层“USA”中每个对象做距离为10英里的bufferSetftrs=Map1.Layers.Item(USA).Search_(buffer(obj,4,10,mi)containsentirevarFirstState,vars)MsgBoxftrs.CountEndSub,其他,支持DAO3.6,连接Oracle
23、8.1.6VB6.0,使用LayerInfo对象加入oracle8i数据。DimlInfoAsObjectSetlInfo=CreateObject(mapx.layerinfo.4)lInfo.Type=4DimConnectStrAsStringConnectStr=SRVR=+Combo1+;UID=+txtUserName.Text+;PWD=+txtPassword.Text,lInfo.AddParameterconnectstring,ConnectStrlInfo.AddParametername,TempConnectlInfo.AddParametertoolkit,ORA
24、INETlInfo.AddParameterquery,selectOBJECTfromstateswhere1=0lInfo.AddParametercache,OFFlInfo.AddParametermbrsearch,ONg_map.Layers.AddlInfoSetlInfo=Nothing,连接Oracle8.1.6,CMapXLayerslayers=m_ctrlMapX.GetLayers();CMapXLayerInfolayerInfo;layerInfo.CreateDispatch(MapX.LayerInfo.4);layerInfo.SetType(4);if(dlg.DoModal()=IDOK)CStringConnectStr=SRVR=;UID=dzn;PWD=dzn;,连接Oracle8.1.6VC6.0,layerInfo.AddParameter(connectstring,COleVariant(ConnectStr);layerInfo.AddParameter(name,COleVariant(USA);layerInfo.AddParameter(toolkit,C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 会场人员流动管理办法
- 企业商务接待管理办法
- 仓库大件货物管理办法
- 乡镇医院采购管理办法
- 乡镇农牧中心管理办法
- 人脸识别会员管理办法
- 主要支流资金管理办法
- 企业考勤考核管理办法
- 企业广告策划管理办法
- 产品项目人员管理办法
- 2019人教版新教材高中化学选择性必修三第一章重点知识点归纳总结(有机化合物的结构特点与研究方法)
- 县慧林养猪场生猪标准化规模养殖改扩建项目实施方案本科学位论文
- GB/T 3125-1994白铜线
- GB/T 21709.6-2008针灸技术操作规范第6部分:穴位注射
- GB 7099-2015食品安全国家标准糕点、面包
- 3C认证全套体系文件(手册+程序文件)
- 木工三级安全教育试卷
- 中学田径基础校本课程教材
- 永能选煤厂生产安全事故应急救援预案
- 河北省邯郸市各县区乡镇行政村村庄村名居民村民委员会明细及行政区划代码
- 浙江省建设领域简易劳动合同(A4版本)
评论
0/150
提交评论