Beispiel #1
0
        /// <summary>
        /// 鼠标移动,实时绘制
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void mapControl_eventMouseMove(object sender, _DHOSOFTMapControlEvents_eventMouseMoveEvent e)
        {
            //if (isMouseDown && !isShift)
            //{
            //    double circleRadius = MapFrame.Core.Common.Utils.GetDistance(centerPoint, new MapLngLat(e.dLong, e.dLat));
            //    circleElement.UpdatePosition(circleRadius);
            //}
            if (isMouseDown && !isControl)
            {
                if (!string.IsNullOrEmpty(tempName))
                {
                    mapControl.MgsDelObject(tempName);
                }
                float[] vertex  = new float[4];
                IntPtr  ptrVert = Marshal.AllocHGlobal(sizeof(float) * 4);
                vertex[0] = (float)centerPoint.Lng;
                vertex[1] = (float)centerPoint.Lat;

                vertex[2] = (float)e.dLong;
                vertex[3] = (float)e.dLat;
                Marshal.Copy(vertex, 0, ptrVert, vertex.Length);
                tempName = mapControl.MgsDrawLine(16, (ulong)(ptrVert.ToInt64()), 2);
                Marshal.FreeHGlobal(ptrVert);
            }
        }
Beispiel #2
0
 /// <summary>
 /// 鼠标移动事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void mapControl_eventMouseMove(object sender, _DHOSOFTMapControlEvents_eventMouseMoveEvent e)
 {
     if (keyDown)
     {
         mapControl.setMoveObjectPositon(this.moveObj, e.dLong, e.dLat, 0);
         mapControl.update();
     }
 }
Beispiel #3
0
        //地图控件鼠标移动事件
        private void axMapControl_eventMouseMove(object sender, _DHOSOFTMapControlEvents_eventMouseMoveEvent e)
        {
            if (Utils.bPublishEvent == false)
            {
                return;
            }
            moveLnglat.Lng = e.dLong;
            moveLnglat.Lat = e.dLat;
            MFMouseEventArgs args = new MFMouseEventArgs(moveLnglat, MouseButtons.None, e.x, e.y);

            if (MouseMoveEvent != null)
            {
                MouseMoveEvent.Invoke(this, args);
            }
        }
Beispiel #4
0
        /// <summary>
        /// 鼠标移动,实时绘制
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void mapControl_eventMouseMove(object sender, _DHOSOFTMapControlEvents_eventMouseMoveEvent e)
        {
            if (listPoints.Count != 0 && !isControl)
            {
                if (!string.IsNullOrEmpty(tempName))
                {
                    mapControl.MgsDelObject(tempName);
                }
                float[] vertex  = new float[4];
                IntPtr  ptrVert = Marshal.AllocHGlobal(sizeof(float) * 4);
                vertex[0] = (float)listPoints[0].Lng;
                vertex[1] = (float)listPoints[0].Lat;

                vertex[2] = (float)e.dLong;
                vertex[3] = (float)e.dLat;
                Marshal.Copy(vertex, 0, ptrVert, vertex.Length);
                tempName = mapControl.MgsDrawLine(15, (ulong)(ptrVert.ToInt64()), 2);
                Marshal.FreeHGlobal(ptrVert);
            }
        }
Beispiel #5
0
 /// <summary>
 /// 鼠标移动事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void mapControl_eventMouseMove(object sender, _DHOSOFTMapControlEvents_eventMouseMoveEvent e)
 {
     if (listPoints.Count != 0 && !isControl)
     {
         if (!string.IsNullOrEmpty(tempName))
         {
             mapControl.MgsDelObject(tempName);
         }
         var point = new MapLngLat(e.dLong, e.dLat);
         listPoints.Add(point);
         int     count   = listPoints.Count();
         float[] vertex  = new float[count * 2];
         IntPtr  ptrVert = Marshal.AllocHGlobal(sizeof(float) * count * 2);
         for (int i = 0; i < count; i++)
         {
             vertex[2 * i]     = (float)listPoints[i].Lng;
             vertex[2 * i + 1] = (float)listPoints[i].Lat;
         }
         Marshal.Copy(vertex, 0, ptrVert, vertex.Length);
         tempName = mapControl.MgsDrawLine(10, (ulong)(ptrVert.ToInt64()), count);
         Marshal.FreeHGlobal(ptrVert);
         listPoints.Remove(point);
     }
 }