Здравствуйте, коллеги!
Я только начинаю осваивать программирование на Python для AutoCAD.
Помогите, пожалуйста, со следующим вопросом.
Пытаюсь успользовать метод AutoCAD.Application.ActiveDocument.Utility.GetEntity().
Ни как не могу пользоваться им в IronPython.
Получилось только при использовании чистого питона с pywin32.
Правда, если пользователь ничего не выбирает, то всеравно получается ошибка.
>>> import win32com.client
>>> app = win32com.client.Dispatch("AutoCAD.Application")
>>> a = app.ActiveDocument.Utility.GetEntity(None, None, "Select object.")
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
a = app.ActiveDocument.Utility.GetEntity(None, None, "Select object.")
File "<COMObject <unknown>>", line 3, in GetEntity
File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 287, in _ApplyTypes_
result = self._oleobj_.InvokeTypes(*(dispid, LCID, wFlags, retType, argTypes) + args)
com_error: (-2147352567, '\xce\xf8\xe8\xe1\xea\xe0.', (0, None, None, None, 0, -2147352567), None)
Хотелось бы программировать на IronPython, поскольку им я пользуюсь для Revit.
В документации сказано, что GetEntity принимает три параметра: объект (как я понимаю, класса AcadObject, массив и строку.)
Как сформировать объект для передачи в метод???
При попытке создать объект "руками" появляется сообщение, что это не возможно т.к. класс AcadObject абстрактный класс. Что это такое я пока не понимаю. Может быть есть метод, который формирует такой объект?
Заранее благодарю за ответы,
Георгий