zoukankan      html  css  js  c++  java
  • cad.net 与lisp函数ssnamex一样的,获取选择集的选择的方式

    如题

        public class 测试选择集的点选位置和点选方式
        {
            //对应lisp的ssnamex,获取选择的方式和选择的角点
            [CommandMethod("tt_getssgetpick", CommandFlags.Modal | CommandFlags.UsePickSet | CommandFlags.Redraw)]
            public void tt_getssgetpick()
            {
                Database db = HostApplicationServices.WorkingDatabase;//当前的数据库
                Editor ed = Acap.DocumentManager.MdiActiveDocument.Editor;
                ed.WriteMessage(Environment.NewLine + "****惊惊连盒-测试选择集的点选位置和点选方式");
    
                var tkids = new List<ObjectId>();
    
                //创建选择集过滤器,只选择块对象
                TypedValue[] filList = new TypedValue[]
                {
                   // new TypedValue((int)DxfCode.Start, "INSERT")
                };
    
                SelectionFilter filter = new SelectionFilter(filList);
    
                //定义选择集选项
                var pso = new PromptSelectionOptions
                {
                    RejectObjectsOnLockedLayers = true, //不选择锁定图层对象
                    AllowDuplicates = true, //不允许重复选择 
                };
                var ssPsr = ed.GetSelection(pso, filter);//手选
                if (ssPsr.Status != PromptStatus.OK)
                {
                    return;
                }
    
                //获取所有的id
                //foreach (var item in ssPsr.Value.GetObjectIds())
                //{
                //    Debug.WriteLine(item);//所有的角点信息 
                //}
                 
                var va = ssPsr.Value;
                foreach (var vaItem in va)
                {
                    if (vaItem is CrossingOrWindowSelectedObject cows)//框选方式
                    {
                        foreach (var ppd in cows.GetPickPoints())
                        {
                            Debug.WriteLine(ppd.PointOnLine);//ppd内还有内容
                        }
                    }
                    else if (vaItem is PickPointSelectedObject pps)//点选方式
                    {
                        Debug.WriteLine(pps.PickPoint);//pps内还有内容
                    }
                } 
            }
        }
    View Code
  • 相关阅读:
    chgrp,chown,chmod用法
    关于linux文件夹与文件的权限理解
    centos7重置root密码
    Mac 下利用 Launchctl 自启动 mysql
    mac 10.10 下编译php拓展之mcrypt
    [转]使用Google地图API搜索功能
    ajax中获取和发送二进制数据的方法
    samba详解
    wamp You don't have permission to access / on this server等问题的解决.
    Cisco3.3.2.2
  • 原文地址:https://www.cnblogs.com/JJBox/p/13155176.html
Copyright © 2011-2022 走看看