как запустить "ModPlus v.4.1.0" на 2016 или 2017 AutoCad???
Версия 4.1.0 никогда и не поддерживала автокад 2016 и выше. Плагин дальше был переработан и продолжает активно развиваться - modplus.org
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Сообщения от Modis
как запустить "ModPlus v.4.1.0" на 2016 или 2017 AutoCad???
Версия 4.1.0 никогда и не поддерживала автокад 2016 и выше. Плагин дальше был переработан и продолжает активно развиваться - modplus.org
Я был молод и глуп :D
Забыл добавить - не работает после указания точки вставки. Т.е. на курсоре все отрисовывается
Всем доброго времени суток. Не работает вставка в текущий чертеж из другого чертежа. Код был найден на просторах инета (с отрисовкой на курсоре):
public static void InsertFromDwgFile(string fileName) { try { SetFocus(Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Window.Handle); Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument; Editor ed = doc.Editor; Point3d ptNew = Point3d.Origin; using (doc.LockDocument()) { Database currentDb = doc.Database; ObjectIdCollection ids = new ObjectIdCollection(); IdMapping idMap = new IdMapping(); using (Transaction tr = doc.TransactionManager.StartTransaction()) { BlockTable currBt = (BlockTable)tr.GetObject(currentDb.BlockTableId, OpenMode.ForRead); BlockTableRecord currBtr = (BlockTableRecord)tr.GetObject(currBt[BlockTableRecord.ModelSpace], OpenMode.ForRead); using (Database sourceDb = new Database(false, false)) { sourceDb.ReadDwgFile(fileName, System.IO.FileShare.ReadWrite, false, ""); using (Transaction sourcetr = sourceDb.TransactionManager.StartTransaction()) { ObjectIdCollection sourceIds = new ObjectIdCollection(); using ( BlockTableRecord sourceBtr = (BlockTableRecord)sourcetr.GetObject(sourceDb.CurrentSpaceId, OpenMode.ForRead) ) { if (sourceBtr != null) { sourceIds = new ObjectIdCollection(); foreach (ObjectId id in sourceBtr) { if (!id.IsNull && id.IsValid) //optional sourceIds.Add(id); } sourcetr.Commit(); } if (sourceIds.Count != 0) idMap = new IdMapping(); sourceDb.WblockCloneObjects(sourceIds, currBtr.ObjectId, idMap, DuplicateRecordCloning.Ignore, false); } } } foreach (IdPair ip in idMap) { if (ip.IsPrimary) ids.Add(ip.Value); } var copied = new ObjectId[ids.Count]; ids.CopyTo(copied, 0); ed.SetImpliedSelection(copied); PromptSelectionResult psr = ed.SelectImplied(); if (psr.Status == PromptStatus.OK) { var ppr = ed.Drag( psr.Value, "\nУкажите точку вставки: ", delegate(Point3d pt, ref Matrix3d mtx) { if (ptNew == pt) { return SamplerStatus.NoChange; } mtx = Matrix3d.Displacement( ptNew.GetVectorTo(pt) ); return SamplerStatus.OK; } ); if (ppr.Status == PromptStatus.OK) { var mtx = Matrix3d.Displacement( ptNew.GetVectorTo(ppr.Value) ); foreach (SelectedObject sobj in psr.Value) { var en = tr.GetObject(sobj.ObjectId, OpenMode.ForRead, false) as Entity; if (en != null) { en.UpgradeOpen(); en.TransformBy(mtx); en.DowngradeOpen(); } } } else { foreach (SelectedObject sobj in psr.Value) { var en = tr.GetObject(sobj.ObjectId, OpenMode.ForWrite, false) as Entity; if (en != null) { en.Erase(true); } } } ed.SetImpliedSelection(new ObjectId[] { }); tr.Commit(); } } } } catch (Autodesk.AutoCAD.Runtime.Exception ex) { Autodesk.AutoCAD.ApplicationServices.Application.ShowAlertDialog(ex.Message + "\n" + ex.StackTrace + "\n" + ex.TargetSite); } }
Вся фишка в том, что у меня работает, а у человека в другом городе - нет. И я не могу понять почему.
Скрин ошибки прилагаю. Надеюсь на свежие идеи)
Всем привет! Случилась со мной оказия!
Понравилась очень сильно девушка. Но сегодня я напортачил и теперь она не хочет ни слышать, ни видеть меня ((( И мои прощения тоже не хочет слышать
Это мой крик души о помощи! Отправьте, пожалуйста, ей смс с текстом "город просит: прости его!", где вместо город укажите Ваш город. А завтра я буду ловить ее с цветами и на коленях!
Вот номер - 8-915-552-55-20
Всем заранее огромное спасибо! И желаю Вам не ссориться!
Актуально с 12 на 13 марта 2013
Саня, а есть такие ветки форумов, где твои монологи не продублированы?
Андрюх, ты так говоришь, как-будто я тут везде :D А я только в двух ветках с подходящим названием ;)
Вышла новая версия!
Теперь с поддержкой AutoCad 2009!
...
Новая версия 4.0!
1. Прекращение поддержки AutoCad 2009!
...
Ну да - было дело :) Изначально не было поддержки 2009 и зря я за него брался
Я уже пришел к выводу "забить" на эту идею :)
Андрей, спасибо что откликнулся
Интересно, а если сделать так:
1. Добавить путь
2. Загрузить типы линий
3. Убрать путь
автокад съест это? И сработает ли это в рамках одной функции?
1. Если использовать относительный путь, то для всех своих приблуд можно ограничиться добавлением лишь одной директории
А надо ограничится отсутствием добавления путей
2. С каких пор их нужно подгружать?
Я если честно уже забыл как ими пользоваться :oops:
Здравствуйте. Порыскал по интету - не нашел. Уж простите, но два вопроса объединил:
1. Как загружать типы линий в принципе нашел
AcApp.DocumentManager.MdiActiveDocument.Database.LoadLineTypeFile("*", file);
однако встал ребром вопрос - что делать с файлами .shx, .shp? Возможно ли подгрузить их НЕ ДОБАВЛЯЯ директорию в пути загрузки автокада?
2. Ну собственно - как подгружать типы штриховок .pat?
Я не ушел на двж :) Хотя там посетителей реально больше, но кладезь полезной информации по программированию (особенно Net) именно тут!
Почему-же? Должен быть тот
как же найти запись о моем экземпляре блока в базе данных чертежа
Надо знать его ObjectId
Пожалуйста )
везде стоит copylocal=true;
А для акадовских библиотек должно стоять false!!!!
Хотя, если погуглить - вроде твой код виноват :)
Поставил CopyLocal = false? В свойствах проекта стоит AnyCPU (на всякий случай)?
Ого! Я бы на твоем месте сначал снес автокад под чистую, а затем поставил бы заново :)
У тебя в ошибке четко написано, что проблема в этом файле! Дословно - "Комментарии XML не могут содержать символы "--", и символ "-" не может быть последним в строке. Линия 7, позиция 3".
Когда ты открываешь файл с помощью VS (можешь еще браузером любым открыть), то он открывается именно как xml-файл. И в случае ошибки в тексте - тебе об этом сообщится!
А еще - лучше открой файл acad.exe.Config не блокнотом, а через VS
я знаю)) но v4.0 от v4.0.30319 ничем не отличается
Лучше писать v4.0
А я тебе не так писал :)
Кусок твоей ошибки:
at MS.Internal.AvTrace..ctor(GetTraceSourceDelegate getTraceSourceDelegate, ClearTraceSourceDelegate clearTraceSourceDelegate)
at MS.Internal.TraceDependencyProperty..cctor()
InnerException: System.Configuration.ConfigurationErrorsException
Message=An XML comment cannot contain '--', and '-' cannot be the last character. Line 7, position 3. (C:\Program Files\Autodesk\AutoCAD 2013\acad.exe.Config line 7)
Source=System.Configuration
BareMessage=An XML comment cannot contain '--', and '-' cannot be the last character. Line 7, position 3.
Filename=C:\Program Files\Autodesk\AutoCAD 2013\acad.exe.Config
Line=7
StackTrace:
at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal)
at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(ConfigurationSchemaErrors schemaErrors)
at System.Configuration.BaseConfigurationRecord.ThrowIfInitErrors()
Может все-же косяк в файле acad.exe.Config? Покажи его
На всякий случай и это обнови http://www.microsoft.com/ru-ru/download … x?id=17851
Для 2013 акада 4 фреймворк "родной" :)
Я вот так и не пойму - эта ошибка просто при открытии акада, или при запуске модуля?
З.Ы. Может стоит все-же сервиспак поставить? ;)
Форумы CADUser → Сообщения от Modis
Форум работает на PunBB, при поддержке Informer Technologies, Inc