Последние сообщения

Последние сообщения

Страницы: [1] 2 3 ... 10
1
ObjectARX / Re: Разделение текста
« Последний ответ от Tever 03-07-2022, 14:13:38 »
Я делал вот так:
Код - C++ [Выбрать]
  1. AcString readString = L"", readAll  = L"";
  2. AcDbObjectId objId;
  3. acdbGetObjectId(objId, ss0);
  4. AcDbObject* tmpObj;
  5. if (acdbOpenAcDbObject(tmpObj, objId, AcDb::kForRead, true)== Acad::eOk)
  6. {
  7.         if(tmpObj->isKindOf(AcDbMText::desc()))
  8.         {
  9.                 AcDbMText *pMText = AcDbMText::cast(tmpObj);
  10.                 AcDbVoidPtrArray allMtext;
  11.                 pMText->explode(allMtext);
  12.                 if (allMtext.length() > 0)
  13.                 {
  14.                         for (int i=0; i < allMtext.length(); i++)
  15.                         {              
  16.                                 AcDbText *pText = (AcDbText *)allMtext[i];
  17.                                 pText->close();
  18.                                 readString = L"";
  19.                                 if (pText->isKindOf(AcDbText::desc()))
  20.                                 {
  21.                                         readString.format(L"%s",pText->textString());
  22.                                         readAll  = readAll  + readString;
  23.                                 }
  24.                         }
  25.                 }
  26.                 pMText->close();
  27.         }
  28.         tmpObj->close();
  29. }      
  30.  
2
Ihar,
Сообщение говорит о том, что имеется несколько владельцев у объекта с меткой "13" (у меня правда говорит про объект с меткой "11"). По содержимому файла обнаружил, что структура не совпадает со стандартной AutoCAD'овской. Возможно проблема в этом. Точнее ничего сказать не могу.
P.S.: Непонятно какое отношение этот вопрос имеет к разделу AutoCAD .NET API.
3
ObjectARX / Re: Разделение текста
« Последний ответ от Александр Ривилис 01-07-2022, 22:25:07 »
Я так понимаю задача непростая
Очень непростая и в общем случае не имеющая решения.
4
AutoCAD .NET API / Ошибки в созданном программно DXF файле.
« Последний ответ от Ihar 01-07-2022, 17:32:55 »
Файл создаётся нормально, но при попытке копирования элементов пишет
Цитировать
*Warning* Multiply owned object, handle "13"
Command:
Command:
Command: _pasteclip *Invalid*

Я не могу разобраться, где необходимо указывать принадлежность элементов.
Приложил созданный файл.
5
ObjectARX / Разделение текста
« Последний ответ от VLADIMIRnext 01-07-2022, 16:03:36 »
Еще раз здравствуйте))
Из чертежа получаю текст AcDbMText без разделителей, но автокад его делит на строки.
Как можно восстановить полностью исходный текст с переносами, где они есть в автокаде, но без управляющих символов?

Знаю что есть ограничивающие точки, но не приходит в голову правильного решения с использованием их. Я так понимаю задача непростая
6
Да вроде никаких проблем с этим нет, много раз так делал. Распаковал, поменял что-то вручную, запаковал как ZIP-архив, переименовал в CUIX - и автокад его читает и распознаёт без проблем.
Кстати, перенос текста кнопки можно сделать через интерфейс. Надо в месте переноса вставить спецсимвол. Только уже не помню какой... Если найду у себя - дополню.
P.S. Спецсимвол: \n
7
Inventor API / Re: Замена элемента из СС
« Последний ответ от mikazakov 30-06-2022, 17:26:36 »
В среде сборки для выделенного элемента из СС можно вызвать замену, нажав кнопку Replace from Content Center...
Можно ли вызвать эту команду из API? - пробовал отследить ее в событиях активкоманд, но там что-то не то выводиться....
Ну видимо эта команда не проведена через менеджер команд.

P. S. Как правильно следует идентифицировать элементы на принадлежность СС?
https://adndevblog.typepad.com/manufacturing/2018/01/inventor-api-detect-a-content-center-part-is-inserted-as-standard-or-custom.html
8
Inventor API / Re: ScreenUpdating как с ним работать
« Последний ответ от mikazakov 28-06-2022, 13:13:19 »
на время обработки можно вызвать стандартный прогресс-бар через АПИ
9
Inventor API / ScreenUpdating как с ним работать
« Последний ответ от filat18 28-06-2022, 08:05:29 »
Казалось бы возможность отключения обновления экрана хорошая штука, позволяющая избавить пользователя от мельтешения на время обработки кода...
Но вот реализация ScreenUpdating, на мой взгляд, сильно подкачала - похоже вместо окна АИ на экране остается только рисунок окна. И в случае нажатия курсора - пользователь выполняет действия над объектами, которые находились под окном АИ (то ли это рабочий стол, то ли какие-то иконки, то ли окна других программ...).
Я вот думаю может лучше ставить свою картину, которая бы закрывала только область моделирования и оставляла в доступности интерфейс АИ?
10
Подскажу еще один реально работающий способ, без регистрации и смс. Гугел называется :)
https://www.google.com/search?channel=crow5&q=autodesk+net+developer+guide

Разве там книга??? Хотя можно и сам гугл в каком то смысле наверное книгой назвать.
Страницы: [1] 2 3 ... 10