28/08/2025

Select object tiện dụng trong AutoCAD dotNet | AutoLISP Reviewer

Ứng dụng được phát triển/Sưu tầm bởi đội ngũ AutoLISP Thật là đơn giản
   

Thông tin thêm: 👉👉👉

Cách gọi hàm Select tiện dụng 


var ids = ed.Select(0, "*LINE,INSERT", 8, "AJS.Layer", -3, 1001, "AJS.XData.App.Name");


1 Thêm class SelectExts.cs

Lưu mã sau dưới dạng tệp tin SelectExts_by_AJS.cs
Code:
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.EditorInput;
using System.Collections.Generic;
using System.Linq;

namespace LMAN.By.AJS
{
    internal static class SelectExts
    {
        public static List<ObjectId> Select(this Editor ed, params object[] pairs)
        {
            PromptSelectionResult promptSelectionResult = ((pairs == null || pairs.Length < 2) ? ed.GetSelection() : ed.GetSelection(pairs.ToSelectionFilter()));
            List<ObjectId> result = new List<ObjectId>();
            if (promptSelectionResult.Status == PromptStatus.OK)
            {
                result = promptSelectionResult.Value.GetObjectIds().ToList();
            }

            return result;
        }

        private static SelectionFilter ToSelectionFilter(this object[] pairs)
        {
            List<TypedValue> list = new List<TypedValue>();
            for (int i = 0; i < pairs.Length - 1; i += 2)
            {
                if ((int)pairs[i] == -3)
                {
                    list.Add(new TypedValue((int)pairs[i]));
                    i--;
                }
                else
                {
                    list.Add(new TypedValue((int)pairs[i], pairs[i + 1]));
                }
            }

            return new SelectionFilter(list.ToArray());
        }
    }
}




2 Cách dùng

Code:
public static List<ObjectId> HowToUse()
{
    Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
    Editor ed = doc.Editor;
    var ids = ed.Select(0, "*LINE,INSERT", 8, "AJS.Layer", -3, 1001, "AJS.XData.App.Name");
    return ids;
}


Link tải (MediaFire)

📥 https://www.mediafire.com/



---------------------------------------------------------------------------------------------
Ứng dụng được phát triển bởi đội ngũ AutoLISP Thật là đơn giản - Tác giả ứng dụng in D2P

    

Mọi thông tin xin liên hệ Fanpage AutoLISP Thật là đơn giản!
Cảm ơn bạn đã theo dõi!

Không có nhận xét nào:

Đăng nhận xét

Select object tiện dụng trong AutoCAD dotNet | AutoLISP Reviewer

Ứng dụng được phát triển/Sưu tầm bởi đội ngũ AutoLISP Thật là đơn giản     Thông tin thêm: 👉👉👉