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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Эмуляция нажатия клавиш из под AutoLisp-a

Эмуляция нажатия клавиш из под AutoLisp-a

Ответ
Поиск в этой теме
Непрочитано 27.10.2007, 20:38
Эмуляция нажатия клавиш из под AutoLisp-a
Supermax
 
Руководитель фирмы
 
Москва
Регистрация: 28.03.2007
Сообщений: 1,831

Хочу автоматизировать заполнение lookup параметров динамических блоков в AutoCAD-e из под AutoLisp-a.
Макрос запустить можно только в редакторе блоков. Как только заходишь в lookup, все, баста карапузики.
У меня есть колонка в экселе, которую мне надо перенести в lookup. Я хочу запустив марос в редакторе, сделать следующее: В макросе есть реактор на двойное нажатие левой кнопки мыши (это когда я в lookup вошел и второй раз, когда установил курсор в нужной ячейке). После второго срабатывания реактора запускается процесс копирования значения ячейки в таблице экселя и вставки этого значения в текущую позицию курсора.

мне нужно нажать Сtrl+V, потом стрелку вниз, после этого я скопирую в буфер следующую ячейку и опять надо Ctrl+V и стрелку вниз. Лисп это делать не умеет, но у него есть возможность читать и записывать системные переменные Windows. Вот если бы кто-нибудь на delphi сварганил такую штуку, которая будучи запущена с определенным именем читала системную переменную и нажимала ту кнопку (или коомбинацию) которая в ней записана, а при запуске этой же проги, но с другим именем - опять читала эту переменную и отжимала кнопку, или коомбинацию, которые там указаны. Или что-то в этом роде. Все эмуляторы нажатия клавиш пересмотрел, а нужного и нет совсем.
Для всех AutoLisp-чиков это был бы большой подарок.

Добалю: Из под AutoLisp-a можно запускать любые приложения.
Просмотров: 22049
 
Автор темы   Непрочитано 02.11.2007, 18:06
#41
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Все начилось с того, что я по пьяне вместо одной DXF пары вставил другую. Машина естественно не поняла, но как могла выкрутилась. Я нашел, где сделал хомут, но с покореженным блоком "поигрался чуток", в результате чего появился блок с линией и тремя параметрами видимости. Вот я тебе его и дал. Между этими группами можно переключаться и они будут доступны для редактирования в редакторе. Можно сделать такой покореженный блок как заготовку и в последствии его "надстраивать".
Supermax вне форума  
 
Непрочитано 02.11.2007, 18:18
#42
Shoorup


 
Регистрация: 16.09.2006
Минск
Сообщений: 1,587
<phrase 1= Отправить сообщение для Shoorup с помощью Skype™


Все гениальные вещи рождались случайно (например кока-кола просто супер!
надо дома поэксперементировать и понять как это все работает. чувствую будут свои проблемки... но это такназываемо окупиться потому как теперь с помощью таких блоков можно вытворять гениальные весчи (сказал shoorup почесывая руки)
__________________
Поезд который устал от ржавого здравомыслия рельсов...
Shoorup вне форума  
 
Автор темы   Непрочитано 02.11.2007, 18:22
#43
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Самая крутая весч, это то, что такие блоки простым юзерам для редактирования не доступны, пока какой-нибудь сумасшедший программер не написал программку для этих выкрутасов. Можно клепать блоки как товар и радоваться жизни.
Ты хоть в лиспе шаришь?
Supermax вне форума  
 
Непрочитано 02.11.2007, 18:50
#44
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от Supermax Посмотреть сообщение
Самая крутая весч, это то, что такие блоки простым юзерам для редактирования не доступны, пока какой-нибудь сумасшедший программер не написал программку для этих выкрутасов. Можно клепать блоки как товар и радоваться жизни.
Ты хоть в лиспе шаришь?
Я бы не был так категоричен...
вы просто, добавили в словарь "ACAD_EVALUATION_GRAPH" дополнительные параметры, причем, как ни странно, случайно. На самом деле, эта часть автокада, работает с ошибками - не очищаются словари, удаление неиспользуемых больше объектов не делается автоматически, большая часть хвостов, от экспериментов с динамическими блоками, остается в файле...
Видимо, скоро появится потребность писать программу, для очистки динамических блоков от ненужной информации.
Елпанов Евгений вне форума  
 
Автор темы   Непрочитано 02.11.2007, 19:17
#45
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Да е-кы-лы-мы-ны! Давай тна ТЫ! А то у меня фрака нет.
Ничего я не добавлял. Теперь все добавляется само. Да поламал чуток, но знаю где. Очищать конечно надо, но гораздо интереснее все разобрать до конца и использовать полученные сведения с пользой. В этих поломках кроется большая польза, только ломать надо с умом, зная последствия.
Я про защиту не зря говорю. Если блок переполняется графикой и прочим мусором, в результате его редактирования - с одной стороны плохо, а с другой - не лезь, не для редактирования сделан. Первую линию с динамическим параметром я знаю как получил. А теперь уже нельзя сделать ни одного динамического свойства. Только через гастроном (это для клиентов разумеется).
Stretch к примеру если коснуться - выбъет кад, а если выделить любой графический элемент, а потом уж попытаться его потрогать - дает передвинуть и прочее.
Хотел Grundfos защитить данные - пожалуйста. Графика есть, а динамика новая не вставляется, а старая не редактируется (на уровне пользователя естественно).
Supermax вне форума  
 
Непрочитано 02.11.2007, 19:25
#46
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Supermax
У меня твой блок нифига не работает. При открытии файла, кад матюкается, а открыв с этим блоком ничего не делает (он не работает как динамический). В редактор блоков не заходит, а при попытке вставить (insert) вылетает с ошибкой.
ACAD2007eng
Krieger вне форума  
 
Автор темы   Непрочитано 02.11.2007, 19:35
#47
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Так файл откылся или нет? То он не открывается, то открывается.
Перезагрузись. У всех все открывается (правда ты не сказал чем ты файл открываешь).
Как и было сказано, открывать надо только через правую кнопку мыши и пункт block editor.
Supermax вне форума  
 
Автор темы   Непрочитано 02.11.2007, 19:41
#48
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Аудит кстати показывает, что ошибок 0.
А динамические штуки в свойствах и ручках от Visibility.
Правда только тех, что слева. А правые - старые, убить надо однако.
Supermax вне форума  
 
Непрочитано 02.11.2007, 20:05
#49
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Он открывается, но вот с таким сообщением, см.картинку. Нажимаю "нет" - открывается, при выделении видны параметры, но манипулирование ими ни к чему не приводит. Выделяю блок жму правой кнопкой, выбираю редактор блоков и блок просто исчезает без входа в редактор.

О! После открытия сделал Audit исправил одну ошибку, и, о чудо, он заработал!
Миниатюры
Нажмите на изображение для увеличения
Название: Обрезать_8.jpg
Просмотров: 146
Размер:	23.0 Кб
ID:	530  
Krieger вне форума  
 
Автор темы   Непрочитано 02.11.2007, 20:15
#50
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Как это можно использовать?
Ну к примеру самое верхнее - это глобальная картина. когда ее изменяешь все подробности исчезают. Имеет несколько вариантов. Второе с верху - уточнения №1 к глобальной картине Когда их меняешь - должны исчезать все нижележащие уточнения.
И третье сверху - самые последние уточнения общей картины модели. Их в самую последнюю очередь делают. Линия - это динамические свойства вставленные в самом начале создания блока и доступ к их изменению закрыт.
Supermax вне форума  
 
Автор темы   Непрочитано 02.11.2007, 20:18
#51
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Еще одна полезная вещь. Если сделать Explode - исчезает графика 2-го и всех вышележащих уровней Visibility.
Supermax вне форума  
 
Автор темы   Непрочитано 02.11.2007, 20:40
#52
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Хочу отдать должное Kpblc-у и Елпанову Евгению.
Это их заслуга. Kpblc, своим упрямством в поисках "корня" заставил меня бросить работу и ковырять структуру дин. блоков. А Евгений, вернул меня обратно к эти эксперементам, когда я уже плюнул и собрался заняться другим вариантом редактирования дин. блоков.
МОЛОДЦЫ!

Только вот теперь надо бы до конца все разрыть, но боюсь дружное рытье ямы, где должен быть зарыт клад, при появлении первых признаков оного, может привести к братоубийственной ситуации, когда каждый сам за себя.
Supermax вне форума  
 
Непрочитано 03.11.2007, 08:09
#53
Shoorup


 
Регистрация: 16.09.2006
Минск
Сообщений: 1,587
<phrase 1= Отправить сообщение для Shoorup с помощью Skype™


Цитата:
Сообщение от Supermax Посмотреть сообщение
Ты хоть в лиспе шаришь?
Неаеще только учусь...
__________________
Поезд который устал от ржавого здравомыслия рельсов...
Shoorup вне форума  
 
Непрочитано 03.11.2007, 08:47
#54
Shoorup


 
Регистрация: 16.09.2006
Минск
Сообщений: 1,587
<phrase 1= Отправить сообщение для Shoorup с помощью Skype™


Цитата:
Сообщение от Krieger Посмотреть сообщение
Он открывается, но вот с таким сообщением, см.картинку. Нажимаю "нет" - открывается, при выделении видны параметры, но манипулирование ими ни к чему не приводит. Выделяю блок жму правой кнопкой, выбираю редактор блоков и блок просто исчезает без входа в редактор.

О! После открытия сделал Audit исправил одну ошибку, и, о чудо, он заработал!
На работе как ни странно все работало... Дома на 2008 выдало тоже самое, так же исправил.

Блок конечно фантастический... Есть свои недостатки конечно... но я думаю эту тему надо развивать до победного конца.
Все изменения в блоке нужно вносить сверху вниз. т.е. с последнего параметра видимости. иначе приходиться обновлять параметры. Редактировать (убирать\изменять параметры видимости) такой блок в редакторе блоков (через правый тык) потом уже низя, а иногда хочеться и придеться переделывать заново.
И ваще пошел уже оффтопик и предлагаю эту тему развивать в другом месте
__________________
Поезд который устал от ржавого здравомыслия рельсов...
Shoorup вне форума  
 
Непрочитано 03.11.2007, 09:27
#55
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Не, не оффтопик - достаточно переименовать тему и чуток подправить первый пост
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.11.2007, 09:42
#56
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Так я не понял, с созданием кучи записей в таблице параметра lookup разобрались? Может кто функцию замутит?
Krieger вне форума  
 
Автор темы   Непрочитано 03.11.2007, 11:07
#57
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Да мы - разведчики. Поползли, все разузнали, вынюхали, главнокомандующему доложили и на боковую. А воевать мы не умеем. Ни одной функции до конца довести так и не довелось. Как только секрет раскрыт интерес к нему пропадает. Удел всех любознательных. Ну пару пленных (я в смысле пару простых лиспов, без окон) мы еще приволочь можем, а так чтобы массово, с криками "банзай" - не.
Вот за деньги - наверное сможем, но со срывом графика производства работ и с очень кислой рожей.
Supermax вне форума  
 
Автор темы   Непрочитано 03.11.2007, 11:10
#58
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


А про эмуляцию нажатия клавишь - так я уже все организовал после праздников выложу, на чем тема и будет исчерпана.
Supermax вне форума  
 
Непрочитано 03.11.2007, 11:17
#59
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от Supermax Посмотреть сообщение
Да мы - разведчики. Поползли, все разузнали, вынюхали, главнокомандующему доложили и на боковую. А воевать мы не умеем. Ни одной функции до конца довести так и не довелось. Как только секрет раскрыт интерес к нему пропадает. Удел всех любознательных. Ну пару пленных (я в смысле пару простых лиспов, без окон) мы еще приволочь можем, а так чтобы массово, с криками "банзай" - не.
Вот за деньги - наверное сможем, но со срывом графика производства работ и с очень кислой рожей.
Да, за деньги это можно сделать. Вся проблема не в сложности задачи, а в огромном объеме данных, которые нужно структурировать, документировать, анализировать...
По сути дела, необходимо задокументировать 20 - 30 объектов автокада, которых нет ни в каких описаниях модели использования. Все только методом тыка. Даже исследуя ежедневно по два объекта, это месяц работы. Я не могу позволить себе, потратить столько времени на исследования, которые сегодня и сейчас, моему работодателю или мне лично, не требуются...
Елпанов Евгений вне форума  
 
Автор темы   Непрочитано 03.11.2007, 11:39
#60
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Значит вся проблема, это как сброситься и заставить того, кто может месяц заниматься этой работой.
Я думаю, тендер надо провести 3000$ гринов - это не мало. Но вот беда, за месяц не получится. Только оформление "записок сумасшедшего" в удобочитаемый вид займет не меньше недели. С AutoDesk-ом могут начаться трения. Надо у него с начала испросить разрешения.
Надо составить список задач и его сюда выложить. Оценить время на их реализацию и я думаю 300р. за человеко-час - достойная плата за весьма высокоинтеллектуальный труд. Спонсоров - хоть ешь одним местом. Одни захотят рекламу, другие право на публикацию, третьи потребуют помощь в решении своих проблем.
Сайт этот уже весьма известный и читают его многие, в том числе и граждане иностранного подданства.
Так что могу предложить свои скромные услуги по организации финансирования этой безусловно нужной акции.

Последний раз редактировалось Supermax, 03.11.2007 в 11:47.
Supermax вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Эмуляция нажатия клавиш из под AutoLisp-a

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фундамент "ригель по столбам" под сруб и печь &amp;Rey Основания и фундаменты 25 27.08.2010 19:53