Имя файла формы SHAPE
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Имя файла формы SHAPE

Имя файла формы SHAPE

Ответ
Поиск в этой теме
Непрочитано 29.07.2009, 20:34 #1
Имя файла формы SHAPE
kserg
 
Регистрация: 22.04.2004
Сообщений: 269

Как (через entget ?) для вставленной в чертеж формы (SHAPE) определить имя shx-файла ее библиотеки?
Спасибо.
Просмотров: 2875
 
Автор темы   Непрочитано 31.07.2009, 17:13
#2
kserg


 
Регистрация: 22.04.2004
Сообщений: 269


Предположим, хотя бы вытащу через entget имя формы. Тогда как получить списки форм, загруженных в рисунок? Т.е. типа
"файл_форм-1.shx" - ("имя_формы11" "имя_форма12" ....)
"файл_форм-2.shx" - ("имя_формы21" "имя_форма22" ....)
...........
Это возможно?
kserg вне форума  
 
Непрочитано 01.08.2009, 17:06
#3
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


ObjectARX тебе в руки. И вот эта ссылка: http://www.caduser.ru/forum/index.ph...#message185655
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 04.08.2009, 12:21
#4
kserg


 
Регистрация: 22.04.2004
Сообщений: 269


> Александр Ривилис
Спасибо, но это (ObjectARX) нам не по зубам.

А по-простому, по рабоче-крестьянски что-то накропал. Тупо, грубо, некрасиво и противно, мыргая, но всеж работает (по крайней мере в AutoCAD2005):
Код:
[Выделить все]
(setq LfPatch (getvar "logfilepath")
      DwgPref (getvar "dwgprefix"))
(setvar "logfilepath" DwgPref)
(setq LfName (getvar "logfilename")
      QaFlag (getvar "qaflags"))
(setvar "qaflags" 2)
(vl-cmdf "_.LOGFILEON" "_.SHAPE" "?" "*" "_.LOGFILEOFF")
(graphscr)
(setvar "qaflags" QaFlag)
(setvar "logfilepath" LfPatch)
(setq LfNameFind (findfile LfName)
      LfName nil
      LfPatch nil
      DwgPref nil
      QaFlag nil
      Descriptor (open LfNameFind "r")
      LfLine (read-line Descriptor))
(while LfLine
  (cond
    ((= LfLine "")
      (if ShapesFile
       (setq ShapesFile (append ShapesFile (list NamesShapes))
             LsLoadShapes (append LsLoadShapes (list ShapesFile))
             ShapesFile nil NamesShapes nil)
      )
    )
    ((= (strcase (substr LfLine (- (strlen LfLine) 3))) ".SHX")
      (setq ShapesFile (list
        (substr LfLine (+ (vl-string-search " " LfLine) 2))))
    )
    (ShapesFile
      (while (wcmatch LfLine "~ ")
        (setq LfLine (vl-string-left-trim " " LfLine)
              PozSpace (vl-string-search " " LfLine)
              NameShape (substr LfLine 1 PozSpace)
              NamesShapes (append NamesShapes (list NameShape))
              LfLine (substr LfLine (1+ PozSpace)))
      )
    )
    (t nil))
  (setq LfLine (read-line Descriptor))
)
(close Descriptor)
(setq Descriptor nil
      PozSpace nil
      NameShape nil)
(vl-file-delete LfNameFind)
(setq LfNameFind nil)
(princ LsLoadShapes)
Выдает список LsLoadShapes типа (("Имя_1файла_shx" ("форма11" "форма12" ...)) ("Имя_2файла_shx" ("форма21" "форма22" ...)) ...)

Последний раз редактировалось kserg, 04.08.2009 в 12:28.
kserg вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Имя файла формы SHAPE



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание нового типа линий Apelsinov AutoCAD 915 08.07.2022 12:36
Изменить имя сохраняемого файла в обработчике события сохранения Ax3 Программирование 2 25.12.2007 12:45
Вариация моделей в SCAD - проблемы с РСУ UIII SCAD 2 04.10.2007 13:35
структурированный список Holon Программирование 22 11.09.2007 14:09
Имя инсталяционного файла ToolPac подскажите !!! ERN AutoCAD 1 26.03.2005 14:56