【C++/C# MSTN CE】 怎样获取tentative选中点的坐标

目前我的想法是这样,我想在自己的窗口中点击一个按键, 点击后可通过tentative获取点云中点的坐标,若选中了点云中的点,则获取该点的坐标值添加到我的窗口内,tentative接口应该能判断是否选中了点,我在使用tentative工具时在选中点和没选中的时候会有两个状态  这里或许我还可以再加一些限制条件,比如限定图层之类的;而后再点击该按键或其他设计一个按键会关闭选点工具,后续使用tentative时不会再添加数据到窗口内

目前问题有两个,一个是我不知道怎样通过编程调用函数获取tentative获取的点的坐标,我搜索sdk帮助文档时查到了一些内容,但不知道怎样创建最初的对象,需要哪些参数,怎样实现获取坐标的这个过程

第二个问题是我不知道怎样将按键工具和tentative进行关联,这几天学习了下dgntool的内容,我目前的想法是或许可以写一个dgntool,点击按键开启工具,在工具内重写tentative左右键选点的内容,添加获取点数据到窗口内的过程,但不知道dgntool能不能关联上tentative,或许有其他方法不用dgntool也可以,只要能实现点击按键后能将捕获的点坐标获取到后台并添加到窗口内就行,然后该工具可关闭

目前来看C++的编程是比较全的,能对tentative进行编辑,在C#内没找到相应内容,若有C#可实现相应功能的方法也可,请各位老师指点一下

Parents
  • DgnTool下有各种响应用户操作的事件回调函数,例如用户单击鼠标左键回调用_OnDataButton函数,单击鼠标右键会回调_OnResetButton函数,但是左右键一起按没有回调函数,这个操作被Mstn捕获处理了,用于拾取tentative点了,虽然左右键一起按不能被我们的DgnTool捕捉,但是左右键同时按下输入的tentative点,在用户按下左键时会被传递给_OnDataButton函数,在这个函数里边正常获取点就行了,系统的绘图工具也是这样,您可以试试,例如画线的工具,您启动后,先左右键同时按下定了一个tentative点,然后不管您在视图哪个位置单击鼠标左键线都是从之前的tentative点开始画的。

    Answer Verified By: mengqi fu 

  • 哦哦哦!原来是这样,那我直接在OnDataButton内编辑内容就好了,后续就好办了,左右键同按后再点击左键是说这个参数会变成之前选中的点的坐标是吧?

Reply Children