@j@y123 Ответов: 0

Попробуйте изменить местоположение многострочного текста, когда петля itrate.


[CommandMethod("FindAllHatches")]
public static void FindAllHatches()
{
    Document acDoc = Application.DocumentManager.MdiActiveDocument;
 var str=new StringBuilder();
    str.Append("\nSearching for Hatches");
 
    var db = acDoc.Database;
    using (Transaction transaction = db.TransactionManager.StartTransaction())
    {
        ObjectId idModelSpace = SymbolUtilityServices.GetBlockModelSpaceId(db);
 
        BlockTableRecord modelSpace = transaction.GetObject(idModelSpace, OpenMode.ForRead) as
            BlockTableRecord;
 
        foreach (var objId in modelSpace)
        {
            var entity = transaction.GetObject(objId, OpenMode.ForRead);
            Hatch hatch = entity as Hatch;
            if (hatch == null)
                continue; //not hatch

           str.Append("\nFound Hatch Area={0}", hatch.Area);
        } 
 acDoc.Editor.WriteMessage(str.ToString());           
    }
}


Что я уже пробовал:

Приведенный выше код вычисляет площадь штриховок в моем чертеже autocad, я хочу отобразить площадь каждой штриховки отдельно в моем чертеже, но когда цикл повторяется, выходные данные перезаписываются друг на друга. Предложите мне код для расчета площади и отображения отдельно друг от друга.

0 Ответов