PortType 的理解

2022-11-18  本文已影响0人  饭桶2018
image.png image.png

static 为数据库定义的点
dynamic 为比如在pipe上创建支架后动态生成的2个port
symbolic 暂时还未碰到

public enum PortType
{
    Static = 1,
    Dynamic = 2,
    Both = 3,
    Symbolic = 4,
    All = 7
}
var doc = Application.DocumentManager.MdiActiveDocument;
var ed = doc.Editor;
var db = doc.Database;
using (var tr = db.TransactionManager.StartOpenCloseTransaction())
{
    var select = ed.GetSelection();
    if (select.Status != PromptStatus.OK) return;
    foreach (SelectedObject sel in select.Value)
    {
        var ent = tr.GetObject(sel.ObjectId, OpenMode.ForRead);
        Console.WriteLine($"{ent}");

        if (ent is Autodesk.ProcessPower.PnP3dObjects.Part part)
        {
            foreach (Autodesk.ProcessPower.PnP3dObjects.Port p in part.GetPorts(PortType.All))
            {
                Console.WriteLine($"\t{p.Name} {p.Position} {p.Direction} {p.NominalDiameter}");
            }
        } 
    }

}
Autodesk.ProcessPower.PnP3dObjects.Pipe
    S1 (8845,-10763.999999989,4714.15000062592) (0,4.60102066332199E-12,-1) 0in
    S2 (8845,-10764,7104.799756) (0,-4.60102066332199E-12,1) 0in
Autodesk.ProcessPower.PnP3dObjects.Connector
    S1 (8997.39999998712,-10764,7257.199756) (0.999999999999897,4.55167751525286E-07,-1.25184798973133E-11) 0in
    S2 (8997.39999998712,-10764,7257.199756) (-1,0,-8.4515888561855E-11) 0in
Autodesk.ProcessPower.PnP3dObjects.Connector
    S1 (8845,-10764,7104.799756) (0,0,-1) 0in
    S2 (8845,-10764,7104.799756) (0,0,1) 0in
Autodesk.ProcessPower.PnP3dObjects.Support
    S1 (9850,-10764,7257.19975598712) (-0.999999999999896,-4.55167751525286E-07,1.25184798973133E-11) 0in
Autodesk.ProcessPower.PnP3dObjects.Support
    S1 (9850,-10764,7257.19975598712) (-0.999999999999896,-4.55167751525286E-07,1.25184798973133E-11) 0in
Autodesk.ProcessPower.PnP3dObjects.Pipe
    S1 (8997.39999998712,-10764,7257.199756) (-0.999999999999896,-4.55167751525286E-07,1.25184798973133E-11) 0in
    S2 (10026.3,-10763.9995316779,7257.19975598712) (0.999999999999896,4.55167751525286E-07,-1.25184798973133E-11) 0in
    D1 (9850,-10764,7257.19975598712) (0.999999999999897,4.55167751525286E-07,-1.25184798973133E-11) 0in
    D2 (9850,-10764,7257.19975598712) (0.999999999999897,4.55167751525286E-07,-1.25184798973133E-11) 0in
Autodesk.ProcessPower.PnP3dObjects.PipeInlineAsset
    S1 (8845,-10764,7104.799756) (0,0,-1) 0in
    S2 (8997.39999998712,-10764,7257.199756) (1,0,8.4515888561855E-11) 0in

上一篇下一篇

猜你喜欢

热点阅读