scf0413 发表于 2011-1-11 22:25:52

贴图中 点取坐标只能点一下就没了,能否做到连续点取?以下是我的代码
       public void Pickpt()
      {
      Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;
      Point3d pt = Pick("\n点取");
      ed.WriteMessage("\n{0:f1}", pt);
      }
      public static Point3d Pick(string word)
      {
            Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
            Editor ed = doc.Editor;
            PromptPointResult pt = ed.GetPoint(word);
                if (pt.Status == PromptStatus.OK)
                {
                  return (Point3d)pt.Value;
                }
                else
                {
                  return new Point3d();
            }
恳求斑竹帮帮我 谢谢

scf0413 发表于 2011-1-11 22:29:28

这贴图是执行我的代码后的效果

雪山飞狐_lzh 发表于 2011-1-11 22:30:41

又把你的问题贴了一遍,汗
3楼不是有例子么

scf0413 发表于 2011-1-11 22:54:04

飞诗(fsxm) 发表于 2011-1-13 12:30:16

本帖最后由 飞诗(fsxm) 于 2011-1-13 12:33 编辑

while(true)
{var opt = new PromptPointOptions("\n指定下一点:");
opt.AllowNone = true;
var rst = ed.GetPoint(opt);
if (rst.Status != PromptStatus.OK) break;
...................
}

scf0413 发表于 2011-1-13 14:28:57

多谢了 问题已解决

sailorcwx 发表于 2011-1-13 18:39:16


public void Pickpt()
      {
            Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;
             while (true)
             {
            Point3d pt = Pick("\n 拾取点");
            if (pt==null)
                return;
            ed.WriteMessage("\n{0:f1}", pt);
            }
      }
      public static Point3d Pick(string word)
      {
          Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
          Editor ed = doc.Editor;
          PromptPointResult pt = ed.GetPoint(word);
          if (pt.Status == PromptStatus.OK)
          {
            return (Point3d)pt.Value;
          }
          else
          {
            return null;
          }
      }
页: 1 [2]
查看完整版本: 拾取点时出现的问题