Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2Vtzqx6kV7S
IPB IPB
Проектирование, монтаж, наладка, сервис


Здравствуйте, гость ( Вход | Регистрация )

- Стандарт НП «АВОК» 7.11-2024
«Рекомендации по проектированию инженерных систем
дошкольных образовательных организаций»

АВОК в соц. сетях
ИНН: 7714824045 | erid: 2VtzqwzKQiU
20 страниц V  « < 16 17 18 19 20 >  
Добавить ответ в эту темуОткрыть тему
> Создание спецификации автоматически (Дубль2), Рассматриваются технология и ее реализация по автоматическому создани
Гость_Supermax_*
сообщение 25.10.2007, 13:09
Сообщение #484





Guest Forum






Kpblc, вот файл с безимянным блоком. Его редактором не откроешь. Есть два вопроса. Первый - можно ли ему присвоить имя и всетаки открыть редактором? Второй - хочу динамический блок с виртуальным изделием сделать безимянным. КАК?
Это очень хорошая защита от ламеров. Я готов пожертвовать содержимым блока (в смысле вложенных pdf файлов, инструкций и рекламы) Рекламу я просто доп. свойством сделаю типа свойства "Представление" а служебную инфоримацию ссылкой.

Сообщение отредактировал Supermax - 25.10.2007, 13:10
Прикрепленные файлы
Прикрепленный файл  Блок_без_имени.dwg ( 27,71 килобайт ) Кол-во скачиваний: 36
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 25.10.2007, 16:10
Сообщение #485


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Вообще-то, похоже, это объект окна ADT-шного, экспортированный в кад. Ему имя присвоить нельзя (vla-put-name не сработает), но скопировать содержимое в новый блок можно. Примерно так:
Код
(defun test (/ adoc ent ent_def name blk lst)
  (vl-load-com)
  (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
  (if
    (and
      (=
        (type (setq
                ent (vl-catch-all-apply
                      '(lambda () (car (entsel "\nБезымянный блок <Отмена> : ")))
                      );_ end of vl-catch-all-apply
                );_ end of setq
              );_ end of type
        'ename
        );_ end of =
      (= (strcase (cdr (assoc 0 (entget ent)))) "INSERT")
      (setq ent (vlax-ename->vla-object ent))
      (equal (vla-get-isdynamicblock ent) :vlax-false)
      (wcmatch (vla-get-name ent) "`**")
      (=
        (type (setq
                name (vl-catch-all-apply
                       '(lambda () (getstring t "\nНовое имя блока <Отмена> : "))
                       );_ end of vl-catch-all-apply
                );_ end of setq
              );_ end of type
        'str
        );_ end of =
      (/= name "")
      );_ end of and
     (progn
       (setq
         ent_def (vla-item (vla-get-blocks adoc) (vla-get-name ent))
         blk     (vla-add (vla-get-blocks adoc) (vla-get-origin ent_def) name)
         lst     ((lambda (/ res)
                    (vlax-for subent ent_def
                      (setq res (cons subent res))
                      );_ end of vlax-for
                    (reverse res)
                    );_ end of lambda
                  )
         );_ end of setq
       (vla-copyobjects
         adoc
         (vlax-make-variant
           (vlax-safearray-fill
             (vlax-make-safearray vlax-vbobject (cons 0 (1- (length lst))))
             lst
             );_ end of vlax-safearray-fill
           );_ end of vlax-make-variant
         blk
         );_ end of vla-copyobjects
       );_ end of progn
     );_ end of if
  );_ end of defun

На предоставленном варианте попытки вставить блок могут вызвать ощущение, что сработало неверно. На самом деле исходный блок вставлен не в мировой системе координат, а состав скопирован полностью.
Дин.блок лично мне сделать анонимным не удалось. Имя поменять ему невозможно; тупое копирование примитивов ничего не дает (динамика сносится моментально).
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 25.10.2007, 17:26
Сообщение #486





Guest Forum






Чем же они тогда отличаются? Ну нет имени, я в каде читал, что можно создавать блоки анонимные. Сейчас буду рыться.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 25.10.2007, 17:38
Сообщение #487





Guest Forum






Да, это ADT сделано и в кад перекачевало, НО!
Вот у меня 2006 кад. Вот файл с непонятной штукой в нутри. Как редактировать? - а фиг его знает. Но кад, хоть и 2006, понимает что это. Посмотри в свойства и увидишь странный тип элемента.
Если взорвать желитинький, или зелененький объект, появляются блоки с окнами, такой, какой я тебе на опознание дал. Такого не может быть, чтобы в программе небыло подхода к доступу в элемент.
Прикрепленные файлы
Прикрепленный файл  Drawing5.dwg ( 92,57 килобайт ) Кол-во скачиваний: 37
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 25.10.2007, 20:36
Сообщение #488


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



создание описания анонимного блока:
Код
(setq blk_def (vla-add (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) (vlax-3d-point '(0. 0. 0.)) "*U"))

Насчет "странного" вида объекта. Хотя у меня и ADT2006 установлен, но, запущенный как acad, он распознал объект как proxy-объект. Формат представления proxy-объектов закрыт и доступен только членам ADN (почему Ривилис, входящий в ADN, и написал explodeproxy). ADT2006 вывалил сообщение об объектах более новой версии (кстати, explode не проворачивал - и без него все стало понятно).
Я не стал заморачиваться с ADT 2007 и попробовал открыть в AA2008Rus. Там все нормально открылось - стена 2-слойная, окно прямоугольное 8-створчатое (хотя на самом деле обычное глухое окно, просто профиль ему сделали). Вдобавок стена вставлена черт-те как. Для нормального отображения (как это делается в ADT) поменял нормаль объекта - все стало понятно.
Прикрепленные файлы
Прикрепленный файл  2007_10_25_212652.jpg ( 31,91 килобайт ) Кол-во скачиваний: 35
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 9:50
Сообщение #489





Guest Forum






А теперь угадай, как я это сделал.
Прикрепленные файлы
Прикрепленный файл  Блок_без_имени2.dwg ( 31,66 килобайт ) Кол-во скачиваний: 38
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 26.10.2007, 10:07
Сообщение #490


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



А он что, динамический? Был бы динамический - было бы интересно. Такого-то результата, как у тебя, я тоже добивался, только толку с этого...
Как сделал? Могу только предположить: вставил дин.блок, потом элементы его вхождения скопировал в только что созданный анонимный блок - и удалил исходник. Так?

Сообщение отредактировал kpblc - 26.10.2007, 10:07
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 10:13
Сообщение #491





Guest Forum






Нет.
Я положил рядом с этим блоком динамический блок с трубой. Растянул его. Посмотрел, какой у него DXF-2 и далее сделал так:
(setq a1 (entget (car (entsel))))
(setq a2 (subst '(2 . "*U3") '(2 . "*U1") a1))
(entmake a2)

С начала я ткнул в блок с окном и переписал все его коды в переменную а1. Затем заменил DXF-2 на ... ну ты видишь. Создал новый элемент. Вместо окна появилась труба. Причем той длинны, которую я вытянул перед перемещением. Если копировать начинку - скопируется базовое значение длинны, а так - афигеть.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 26.10.2007, 10:25
Сообщение #492


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Запаришься на файле с хотя бы 3-4 сотнями таких блоков вручную делать. И потом, особого смысла, если честно, я не вижу.
О, вопрос: а что у тебя там помимо блоков еще 51 примитив делает? Видимость, конечно, у них, отключена, но это не мешает им существовать smile.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 10:36
Сообщение #493





Guest Forum






Дык это все заблудилось однако.
Сделал обратный процесс. Списал все DXF реквизиты с динамического блока, а 2-ой код подставил *U1 то есть от окна. При создании появился безимянный блок с окном на месте моего динамического, точкой вставки и положением точь, в точь, как динамический. Вывод - графика из базы берется по 2-му коду и только.
Щас я еще один экспремент сбацаю.

Так включи им видимость, у меня ничего не включается. Может это дин. свойства висят?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 10:55
Сообщение #494





Guest Forum






Взял два нормальных динамических блока. Один - труба, другой - линия. Списал данные с линии, заменил ей 2-ой код на код 2 из трубы и сделал объект. Полученный объект, несмотря на то, что оба родителя имели имена стал безимянным. Сделал ему attsync появились у этого безимянного блока атрибуты. Вот есть теперь у нас безимянный блок с атрибутами, однако.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 11:49
Сообщение #495





Guest Forum






Я знаю, что это за элементы ты видишь. Это в динамическом блоке графика из других представлений лежит. В настоящем дин. блоке в разных окнах лежат: оболочка и торцы другого диаметра, моя реклама (тоже много элементов). Поскольку доступа к этим представлением теперь нет они и не видны и включить их врядли получится. Хотя сам факт наличия в базе блока "левых" деталей может пригодится.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 26.10.2007, 12:17
Сообщение #496


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Код
(defun show ()
  (vlax-for ent
            (vla-get-modelspace (vla-get-activedocument (vlax-get-acad-object)))
    (vl-catch-all-apply '(lambda () (vla-put-visible ent :vlax-true)))
    );_ end of vlax-for
  );_ end of defun

Вот и вся любовь. Примитивы открыты (проверял на ADT2006 as acad; ACAD2007)
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 12:24
Сообщение #497





Guest Forum






К сожалению ADT на этом компе не имею. А в каде ничего не произошло. Может скажешь что ты видишь?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 13:00
Сообщение #498





Guest Forum






Цитата
Вообще-то, похоже, это объект окна ADT-шного, экспортированный в кад. Ему имя присвоить нельзя (vla-put-name не сработает)


Код
(vla-ConvertToStaticBlock (vlax-ename->vla-object (car (entsel))) "qqq")


и обратно

Код
(vla-ConvertToAnonymousBlock (vlax-ename->vla-object (car (entsel))))


Только вот одна фигня осталась не разрешенная. В блоке как я и предполагал лежит остальная графика, но она выключенная для пространства модели и включенная для пространства редактора блоков. Если в блок зайти и выйти, то спросит сохранить или нет. Если ответить сохранить - графика станет видна и в модели.
Помнишь базар на счет выключения элементов в блоке. Так вот они - выключенные, только как это сделать специально?

Сообщение отредактировал Supermax - 26.10.2007, 13:01
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 13:11
Сообщение #499





Guest Forum






У Полещука маленькую недочипятку нашел. Он пишет, что vla-ConvertToStaticBlock "конвертация динамического блока в статический с именем" а он и анонимные блоки конвертирует однако.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 26.10.2007, 14:49
Сообщение #500


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Разговор насчет "выключения", конечно, помню. Но для дин.блоков надо смотреть словари их описаний, а я там не очень разбирался. vla-converttostaticblock - метод, появившийся только в 2006 версии (где и были дин.блоки запущены). То, что оно анонимные блоки обрабатывает, мало о чем говорит - vla-put-name для описания анонимного блока тоже сработает. Только файл будет испорчен, даже _audit его не всегда поднимет.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 26.10.2007, 17:59
Сообщение #501





Guest Forum






Что-то ты совсем "зачах" я смотрю. Прямо сквозит унынием в твоих ответах. Надо тебе "угольку" подкинуть.
Динамические блоки, или нет, тут не причем. У тебя блок совсем не динамический, а простой. Он в анонимный перешел вместе со всей графикой, а потом его обратно именованным сделали. Ну и что, что он свойства потерял? Разве о них речь? Речь об объектах, которые не видны в модели, но есть в блоке. В простом блоке. Надо сравнить их потроха с такими же но только видимыми и узнать, что их видимость нарушает. Потом попробовать сделать это специально. Да там простой текст лежит от моей рекламы. Что в нем может быть такого необычного? А ить не видно его в модели однако.

VVA совсем заработался. Равнялку блоков никак не доделает, хотя я ему отстег обещал за это дать. Я длины в дин. блоках проиндексировал и без макроса. Но равнялка нужна все равно. Дальше вопрос застрял с позициями и нумерацией. Застрял также вопрос с модернизацией включения видимости объектов.

Ты скользкий тип, ни разу не сказал мне изменилось твое отношение к этой затее или нет. Судя по тому, что ты меня еще не бросил, изменилась. Ну тогда давай обсуждать заново идеологию. Я например многое пересмотрел в своих взглядах на мир. Ты ведь видишь, что виртуальное изделие это не только данные о товаре, а еще и возможность быстрого изменения объекта. Возьмем скажем болт. Динамический блок, содержащий в себе графику всего госта "легким поглаживанием" становится любой длинны и диаметра. ОДИН блок и все болты навсегда исчезли как отдельные элементы. Один блок ФБС и навсегда отпала необходимость рисовать ФБС-ки. Ну и данные тоже весьма полезны.
Короче, резюмируй свое отношение к идее в настоящий момент.

Со счетом ты разберешься, я в тебя верю.

Осталось совсем немного. Создать набор элементов в которых проставлены и позиции и номера и стадии строительства и разделы проекта. Так, а их-то кто проставлять будет?

Я тут скачал прогу, так она мне идею подкинула. Начинается с панели кнопок. Они все одинакового размера и текст внутри. "Выравнивание длин"; "Аудит состава атрибутов"; "Аудит состава свойств"; "Настройка альтернативных имен свойств и атрибутов"; "Простановка позиций"; "Простановка номеров"; "Настройка таблицы очередности"; ну и еще что-нибудь и "Расчет спецификации".

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 26.10.2007, 21:48
Сообщение #502


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Насчет смены видимости - я полагаю (подробно не исследовал), что это как раз связано с потерей динамичности блока. То есть с потерей словаря, который и отвечает за соответствие "значение параметра <-> значение видимости элемента". Простой текст или не текст - дело десятое. А вот для "полного" копирования и "перевставки" блока можно попробовать сделать так (вдобавок без работы со словарями wink.gif):
Код
(defun test (/ adoc ent blk lst ins)
  (vl-load-com)
  (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
  (if
    (and
      (= (type (setq ent (vl-catch-all-apply
               '(lambda () (car (entsel "\nУкажите блок <Отмена> : ")))
               );_ end of vl-catch-all-apply
             );_ end of setq
           );_ end of type
     'ename
     );_ end of =
      (setq ent (vlax-ename->vla-object ent))
      (= (vla-get-objectname ent) "AcDbBlockReference")
      );_ end of and
     (progn
       (vla-startundomark adoc)
       (setq blk (vla-add (vla-get-blocks adoc)
              (vla-get-origin
                (vla-item (vla-get-blocks adoc) (vla-get-name ent))
                );_ end of vla-get-origin
              "*U"
              );_ end of vla-add
         lst ((lambda (/ res)
            (vlax-for subent
                  (vla-item (vla-get-blocks adoc) (vla-get-name ent))
              (if (equal (vla-get-visible subent) :vlax-true)
            (setq res (cons subent res))
            );_ end of if
              (reverse res)
              );_ end of vlax-for
            );_ end of lambda
          )
         );_ end of setq
       (vla-copyobjects
     adoc
     (vlax-make-variant
       (vlax-safearray-fill
         (vlax-make-safearray
           vlax-vbobject
           (cons 0 (1- (length lst)))
           );_ end of vlax-make-safearray
         lst
         );_ end of vlax-safearray-fill
       );_ end of vlax-make-variant
     blk
     );_ end of vla-copyobjects
       (setq ins (vla-insertblock
           (vla-objectidtoobject adoc (vla-get-ownerid ent))
           (vla-get-insertionpoint ent)
           (vla-get-name blk)
           (vla-get-xeffectivescalefactor ent)
           (vla-get-yeffectivescalefactor ent)
           (vla-get-zeffectivescalefactor ent)
           (vla-get-rotation ent)
           );_ end of vla-InsertBlock
         );_ end of setq
       (foreach    prop '("normal" "insertionpoint")
     (vlax-put-property ins prop (vlax-get-property ent prop))
     );_ end of foreach
       (vla-update ins)
       (vla-erase ent)
       (vla-regen adoc acallviewports)
       (vla-endundomark adoc)
       );_ end of progn
     );_ end of if
  );_ end of defun

---
Я тоже заработался smile.gif VB вкупе с .NET подвесил меня конкретно. Ну да ладно, это не особо интересно.
С остальными задачами - разбираюсь, как только время появляется.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 27.10.2007, 12:39
Сообщение #503





Guest Forum






Kpblc, ты часом не валиком макросы пишешь?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 27.10.2007, 12:51
Сообщение #504





Guest Forum






Еще вопрос, пока ты не забыл что тут в лиспе написал.
Есть такая штука в дин. блоке как lookup. Я заметил, что если даже убить все Stretch параметры, на которые завязаны строки этого lookup-a, то они все равно остаются видны в самом lookup-e, правда появляется восклицательный знак.
Скопировать lookup в другой блок, как есть, ничего не меняя - вот это было бы достижение. Ими вся таблица свойств делается и каждый раз ее набивать - мучение. Атрибуты копируются, а эти lookpop-ы нет.
Ты вот блок скопировал, а обменяться свойствами между блоками как?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 27.10.2007, 15:51
Сообщение #505





Guest Forum






Еще появилась зараза. Как лиспом нажать стрелку вниз? Хочу сделать макрос (вынужден) заполняющий lookup-ы из экселя. Для этого надо из буфера вставлять данные (Ctrl-v) и давить на стрелку вниз. Идеалогия такова:
Запускаю макрос. В нем реатор на двойной и одинарный щелчки мыши. Двойной щелчек - это я открываю lookup, одинарный - это я ставлю курсор в ту позицию, с которой хочу начать заполнение lookup-a. Макрос включить при открытом lookup-e нельзя, но если он уже работает, то кто его остановит?
Дальше происходит автоматическое открытие нужного файла экселя и из ячейки А1 и в низ, то есть А2, А3 и так до первой пустой ячейки, считываются данные. Считал ячейку - Ctrl-v и стрелку в низ, считал следующую и опять Ctrl-v и стрелку вниз и т.д. считал ячейку - пусто - стоп.
Видимо надо копаться в системных переменных Windows. Там наверное должен быть буфер клавиатуры, куда записывать можно номер кнопки?

О-хо-хо, как мне пло-о-хо!

Сообщение отредактировал Supermax - 27.10.2007, 15:56
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 27.10.2007, 20:49
Сообщение #506


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Цитата(Supermax @ 27.10.2007, 13:39) [snapback]181792[/snapback]
Kpblc, ты часом не валиком макросы пишешь?

Не, я под Маяковского кошу smile.gif
Насчет lookup'a не догнал.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 28.10.2007, 0:36
Сообщение #507


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



По lookup'у. Получить-то я все смог, но вот с изменениями что-то не срастается пока. Ни в какую:( Понятно, что надо делать через entmod, но повторяющиеся записи меня нервируют.
На всякий случай вариант получения:
Код
(defun getlookup (name / _kpblc-conv-list-to-sublist dict lst)
            ;|
*    Получение списка возможных lookup-действий дин.блока
*    Параметры вызова:
    name    эффективное (Effective) имя блока
|;

  (defun _kpblc-conv-list-to-sublist (lst count / res loc_count)
                                ;|
*    Преобразование списка в список подсписков заданной длины
*    Параметры вызова:
    lst    обрабатываемый список
    count    длина подсписков
|;
    (cond
      ((not lst) nil)
      ((not count) lst)
      ((< (length lst) count) lst)
      (t
       (setq loc_count 0)
       (while (< loc_count count)
         (setq res       (append res (list (car lst)))
               lst       (cdr lst)
               loc_count (1+ loc_count)
               );_ end of setq
         );_ end of while
       (setq res (append (list res) (_kpblc-conv-list-to-sublist lst count)))
       res
       )
      );_ end of cond
    );_ end of defun

  (vl-load-com)
  (vlax-for item
            (vla-getextensiondictionary
              (vla-item
                (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
                name
                );_ end of vla-item
              );_ end of vla-getextensiondictionary
    (setq lst (cons (vlax-vla-object->ename item) lst))
    );_ end of vlax-for
  (mapcar
    '(lambda (dict)
       (cons
         (cdr (assoc 300 (entget dict)))
         (_kpblc-conv-list-to-sublist
           (mapcar 'cdr
                   (vl-remove-if-not '(lambda (x) (= (car x) 302)) (entget dict))
                   );_ end of mapcar
           (cdr (assoc 93 (entget dict)))
           );_ end of _kpblc-conv-list-to-sublist
         );_ end of cons
       );_ end of lambda
    (vl-remove-if-not
      '(lambda (x) (wcmatch (strcase (cdr (assoc 0 (entget x)))) "*LOOKUPACT*"))
      (mapcar
        'cdr
        (apply
          'append
          (mapcar '(lambda (a)
                     (vl-remove-if-not '(lambda (x) (= (car x) 360)) (entget a))
                     );_ end of lambda
                  (vl-remove-if-not
                    '(lambda (x)
                       (wcmatch (strcase (cdr (assoc 0 (entget x)))) "*EVAL*")
                       );_ end of lambda
                    lst
                    );_ end of vl-remove-if-not
                  );_ end of mapcar
          );_ end of apply
        );_ end of mapcar
      );_ end of vl-remove-if-not
    );_ end of mapcar
  );_ end of defun

Пример вызова:
Код
(getlookup (vla-get-EffectiveName (vlax-ename->vla-object(car(entsel)))))


Сообщение отредактировал kpblc - 28.10.2007, 0:44
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 29.10.2007, 11:50
Сообщение #508





Guest Forum






Все прочел, спешу в налоговую, решай проблему со счетом.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 29.10.2007, 12:22
Сообщение #509





Guest Forum






К стати, установил себе DOSLib 7,8. Теперь могу и команды DOS-a из под лиспа запускать.
Код
http://download.mcneel.com/download.asp?email=lazebny@pelisker.ru&DownloadFileID=433&ID=doslib&LANGUAGE=en&CDKEY=

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 29.10.2007, 13:10
Сообщение #510


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



DOSLib вообще-то не только для выполнения dos-команд предназначен. Библиотека удобная, но до определенного момента.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 29.10.2007, 16:56
Сообщение #511





Guest Forum






Вау! Нам рекламку налепили, видать мы притягиваем внимание чье-то.
Открыл на DWG.RU тему про эмулирование нажатия клавиш из под Lisp-а. Ясно с помошью delphi или чего-нибудь еще. Если получится кого-нибудь раскрутить на такую прибамбасину, круто будет.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kpblc
сообщение 29.10.2007, 22:11
Сообщение #512


CAD Developer


Группа: Участники форума
Сообщений: 409
Регистрация: 6.2.2006
Из: C.-Петербург, Россия
Пользователь №: 2062



Какую рекламку? Куда??
Насчет нажатия клавиш - ИМХО нереально, учитывая, что внутренние имена контролов окна lookup'a неизвестны, то есть обратиться к ним (ЯТД) по меньшей мере очень трудно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Supermax_*
сообщение 30.10.2007, 8:54
Сообщение #513





Guest Forum






О! А рекламку сняли. Вчера красовалась в заголовке темы Sanyo, видать денег мало дали, всего на один день и хватило.
На счет клавиш - реально! Прочти первый пост на dwg.ru внимательно. Я делаю реактор на двойной клик мышкой. Первый двойной клик - смотрю в переменную, где я флажек ставлю, если его нет - устанавливаю и жду дальше, второй двойной клик - опять смотрю на переменную, а там уже флажок установлен (к примеру буква Т), вот тогда я начинаю работу с программой на Delphi написанной. Дальнейшее развитие событий распишу как только найду того, кто это сможет сделать.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

20 страниц V  « < 16 17 18 19 20 >
Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274



ООО "Русич" ИНН 9721068883 / ЕРИД 2VtzqvMjLF8


ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqxXgvJi

Реклама: ООО «СибСтронг» | ИНН 6670013662 | ERID: 2VtzqwyM2dc
Реклама: ООО «СЛ-ЛАЗЕР» ИНН 7727447267 | erid: 2VtzquvhFWx

Последние сообщения Форума






RSS Текстовая версия Сейчас: 31.7.2025, 1:11
Политика ООО ИИП «АВОК-ПРЕСС» в отношении обработки персональных данных