Скопировать размерный стиль между чертежами

Здравствуйте Уважаемые специалисты NanoCAD!

Код ниже (excel-vba) позволяет скопировать все размерные стили из определенного чертежа в текущий чертеж:

Public Sub ImportDimstyles()
Dim oAxDbDoc As New AxDbDocument
oAxDbDoc.Open “c:\DimStyles.dwg”
Dim oObj() As Object
Dim oDs As AcadDimStyle
Dim i As Integer
For i = 0 To oAxDbDoc.DimStyles.Count - 1
ReDim Preserve oObj(i)
Set oObj(i) = oAxDbDoc.DimStyles(i)
Next
oAxDbDoc.CopyObjects oObj, ThisDrawing.Database.DimStyles
End Sub

Подскажите пожалуйста, как его преобразовать на языке C# для NanoCAD ?

Хотя, получилось из vbs

Ты зря пренебрегаешь этим ресурсом

https://adn-cis.org/kopirovanie-razmernyix-stilej-mezhdu-chertezhami-pri-pomoshhi-c.html

Ты зря пренебрегаешь этим ресурсом

https://adn-cis.org/kopirovanie-razmernyix-stilej-mezhdu-chertezhami-pri-pomoshhi-c.html

Я его смотрела, но выдает ошибку “Ошибка во время выполнения команды: ‘eNotImplementedYet’” на строке “ObjectIdCollection dimStyles = db.GetDimRecentStyleList();”, не знаю как исправить..

Хотелось бы еще заменять не все размерные стили, а конкретный по имени.

получилось

получилось

А можно код углядеть?

https://forum.nanocad.ru/discussion/comment/2753#Comment_2753

А можно код углядеть?

Database dbDIM = new Database(false, false);
dbDIM.ReadDwgFile(“\..*.dwt”, System.IO.FileShare.Read, true, “”);
ObjectIdCollection Ids = new ObjectIdCollection();
using (var tran = dbDIM.TransactionManager.StartTransaction())
{
var dt = (DimStyleTable)tran.GetObject(dbDIM.DimStyleTableId, OpenMode.ForRead);
foreach (ObjectId id in dt)
{
var ds = (DimStyleTableRecord)tran.GetObject(id, OpenMode.ForRead);
if (ds.Name.Contains(“имя стиля”))
{
Ids.Add(ds.ObjectId);
}
}
IdMapping iMap = new IdMapping();
db.WblockCloneObjects(Ids, db.DimStyleTableId, iMap, DuplicateRecordCloning.Replace, false);

tran.Commit();
}

Че-т мне кажется, что тут путаница с базами чертежей. Завтра, если не забуду, попробую что-нибудь поискать. Хотя (откровенно говоря) я бы предпочел на NET тупо сразу создавать / донастраивать стиль. Это может оказаться дешевле и проще, чем клонировать стили.

На этом форуме появляюсь очень редко, меня проще в телеге поймать :wink: