ARCgisEngine二次开发,输入坐标点,在axmapcontrol上显示?(vs2008)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARCgisEngine二次开发,输入坐标点,在axmapcontrol上显示?(vs2008)相关的知识,希望对你有一定的参考价值。

参考技术A 首先这里我所说的坐标值并不是批量的,批量的可以以.txt文件输入,将不同数据用不同的列显示,在每一列的开始以"X"或"Y"属性项名称,ArcMap就能读入.
这里以面为例子.是希望ARCINFO像CAD那样,输入坐标值来成面.
1\新建一个面
2\start edit
3\task状态为CREATE NEW FEATURE
4\选用SKETCH TOOL,在图板上随意画一点,然后选SKETCH PROPERTIES,他有一个默认的坐标,你只要把你的坐标输进去就好.
5\如上即可成面.多边形的点坐标即你所要的

APP——自动化——python——swipe从坐标点滑动到坐标点以及其它滑动

1.swipe从坐标点滑动到坐标点


5个参数(起始横坐标,起始纵坐标,结束横坐标,结束纵坐标,滑动时长单位毫秒)


driver.swipe(start_x,start_y,end_x,end_y,duration=None)

 

注意:
           每次操作的期望时间与真实时间有误差,造成了每次的滑动距离不等。
           滑动操作具有惯性,速度快,惯性大;速度慢惯性小。可能导致每次滑动的距离不等
           滑动时长越大,惯性越小,滑动距离越准确

===============================================================================

用5秒的时间,向下滑动900个像素点,代码:

# 计算器:     C:Usersdel>adb shell dumpsys window w |findstr / |findstr name=
#              mSurface=Surface(name=com.youba.calculate/com.youba.calculate.MainActivity)            #adb命令查看包名和启动activity

#com.youba.calculate:id/btn_plus  +
#com.youba.calculate:id/btn_equal  =


#凤凰网:   C:Usersdel>adb shell dumpsys window w |findstr / |findstr name=
#           mSurface=Surface(name=com.ifeng.news2/com.ifeng.news2.activity.IfengTabMainActivity)

from appium import webdriver
import  time

desired_caps = {
    platformName: Android,             #待测试手机的系统
    deviceName:8DF6R17503000072,     #使用手机或模拟器的类型
    platformVersion: 8.0.0,                         #待测手机系统版本
     "unicodeKeyboard":"true",   #支持中文输入,会自动安装unicode输入法,默认是false
     "resetKeyboard":"true",    #如果设置了中文输入为true,此设置为自动化退出后,重置输入法到原来状态
    #‘app‘: ‘C:\Users\del\Desktop\b\jsq.apk‘,         #手机未按照待测app时,设置安装路径、包名、启动activity
    appPackage: com.youba.calculate,
    appActivity: com.youba.calculate.MainActivity,
}


driver = webdriver.Remote(http://127.0.0.1:4723/wd/hub, desired_caps)


time.sleep(15)

driver.close_app()

time.sleep(15)

driver.start_activity(com.baidu.searchbox,com.baidu.searchbox.MainActivity)

time.sleep(15)

driver.swipe(100,1000,100,100,5000)                #用5秒的时间,向下滑动900个像素点


time.sleep(3)                  #等待3秒

driver.quit()

 

 

 

 

参考文章:https://blog.csdn.net/E_I_F/article/details/105376301

 

2.scroll从元素位置滑动到元素位置(有惯性)

 

#从一个元素滑动到另一个元素,有惯性
#2个参数(起始元素,终止元素)
driver.scroll(origin_el,des_el)

从蓝牙滑动到无线网络,代码:

#导入库
from appium import webdriver
import time

desired_caps = dict()#创建字典
desired_caps[‘platformName‘] = ‘Android‘#添加字典字段:手机平台(Android、iOS)
desired_caps[‘platformVersion‘] = ‘5.1‘#添加字典字段:系统版本号(可从手机的设置里面查看)
desired_caps[‘deviceName‘] = ‘myphone‘#添加字典字段:设备名称(随便写即可)
desired_caps[‘appPackage‘] = ‘com.android.settings‘#添加字典字段:要打开的app包名
desired_caps[‘appActivity‘] = ‘com.android.settings.Settings‘#添加字典字段:APP的界面名
desired_caps[‘unicodeKeyboard‘] = True
desired_caps[‘resetKeyboard‘] = True
driver = webdriver.Remote(‘http://localhost:4723/wd/hub‘,desired_caps)#调用方法,其中‘http://localhost:4723/wd/hub‘即为appium服务器地址
driver.find_element_by_id("android:id/button1").click()#根据id定位元素,弹出应用的授权框,点击“确认”

bluetooth=driver.find_element_by_xpath("//*[@text=‘蓝牙‘]")
wifi=driver.find_element_by_xpath("//*[@text=‘无线网络‘]")

driver.scroll(bluetooth,wifi)#从蓝牙滑动到无线网络
time.sleep(3)#等待3秒

driver.quit()#退出此次驱动连接

 

 

 

 

3.drag_and_drop从元素位置滑动到元素位置(无惯性)

 

从一个元素滑动到另一个元素,没有惯性
2个参数(起始元素,终止元素)
driver.drag_and_drop(origin_el,des_el)

 

 

 

 

 


从蓝牙滑动到无线网络,代码:

#导入库
from appium import webdriver
import time

desired_caps = dict()#创建字典
desired_caps[‘platformName‘] = ‘Android‘#添加字典字段:手机平台(Android、iOS)
desired_caps[‘platformVersion‘] = ‘5.1‘#添加字典字段:系统版本号(可从手机的设置里面查看)
desired_caps[‘deviceName‘] = ‘myphone‘#添加字典字段:设备名称(随便写即可)
desired_caps[‘appPackage‘] = ‘com.android.settings‘#添加字典字段:要打开的app包名
desired_caps[‘appActivity‘] = ‘com.android.settings.Settings‘#添加字典字段:APP的界面名
desired_caps[‘unicodeKeyboard‘] = True
desired_caps[‘resetKeyboard‘] = True
driver = webdriver.Remote(‘http://localhost:4723/wd/hub‘,desired_caps)#调用方法,其中‘http://localhost:4723/wd/hub‘即为appium服务器地址
driver.find_element_by_id("android:id/button1").click()#根据id定位元素,弹出应用的授权框,点击“确认”

bluetooth=driver.find_element_by_xpath("//*[@text=‘蓝牙‘]")
wifi=driver.find_element_by_xpath("//*[@text=‘无线网络‘]")

driver.drag_and_drop(bluetooth,wifi)#从蓝牙滑动到无线网络
time.sleep(3)#等待3秒

driver.quit()#退出此次驱动连接
1

以上是关于ARCgisEngine二次开发,输入坐标点,在axmapcontrol上显示?(vs2008)的主要内容,如果未能解决你的问题,请参考以下文章

arcgis engine 二次开发怎样获取某线要素的结点及各结点的坐标值?还要识别出端点。

二次三次贝塞尔曲线demo(演示+获取坐标点)

arcgis10中 怎么找不到engine

arcgisengine插值问题,如何用自己的方法而不是用AE自带的方法进行插值

求一个arcgis engine开发用的可编辑mxd地图文件

C# + arcgis engine 二次开发,怎样设置图层的颜色?