|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Проектировщик ВК. LISP-любитель. Регистрация: 15.12.2003
Москва
Сообщений: 1,192
|
Цитата:
Вообще с курсору можно задать цвет, можно изменить размер, наверное, но это все. Сделать с ним то, возможность чего не предусмотрели разработчики, нельзя. Можно наверное пойти другим путем, брать некий примитив, или набор, и таскать его за курсором, наложив на него. Вроде бы это возможно. Вот тут можно делать что угодно, и вес и тип и т.п. Но алгоритмов такого решения я не знаю. нужно грызть. |
|||
|
||||
конструктор Регистрация: 28.08.2003
Мос. область
Сообщений: 119
|
А как Вам это?
;;------------------> Рисование пробных линий <--------- ;;------------------------------------------------------------------- (defun c:t_line (/ p1 p2 DS) (setq DS (getvar "dimscale") p1 (getpoint "\nspecify first point:") p2 (polar p1 0 (* ds 50.0)) ) (setvar "lwdisplay" 1) (command "line" p1 p2 "") (command "delay" 300) (command "erase" "single" "l") (command "delay" 300) (command "line" p1 p2 "") (command "delay" 300) (command "erase" "single" "l") (command "delay" 300) (command "line" p1 p2 "") (command "delay" 300) (command "erase" "single" "l") (command "line" p1) ) |
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Вот и хорошо
Осталось добить последние косяки и багги Ну насколько я понимаю с цветом экрана ничего не выйдет ну да ладно. Косяк: Цвет слоя = 250 цвет курсора = 84,84,84 Не могли бы вы что нибудь сделать? Чтобы было Цвет слоя = 250 цвет курсора = 250 Я конечно понимаю что это для черного экрана так сделано, но как я уже говорил у меня экран уже несколько лет белый. От черного экрана глаза болят, а серенький курсор на белом тоже не очень В Лиспе я как Apelsinov в реакторах |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Взявшись за дело на свежую голову, внимательней вникнув и основательней потыкав, я-таки заставил эту штуку работать. Все оказалось просто: лиспы из #11 и 12 надо добавить в автозагрузку, а строку
Код:
Цитата:
Цитата:
|
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Сколько лет сколько зим.
Тоже когдато сильно захотел эту примочку. Все что представлено выше уже немного технически устарело. Если не ошибаюсь он использует 256 цветов, реактор не очень стабильный и модель & лист плоховато проработаны. Я сделал свой
Сделал очень давно и исходники к сожалению уже потерял. Распакуйте файлы из архива куда нибудь на пути поддержки При загрузке первым должен загрузиться LibFunctionsSamoCAD.fas. CursorColor=ClayerColor.VLX должен загрузиться вторым. Это связано с тем что реактор начинает немедленную работу и если он не найдет библиотечные функции то начнет вылетать. И ввиду того что реактор начинает мгновеннно работать при запуске AutoCAD. Рекомендуется подгружать их из функции s::startup |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
mmax, а чего только компилированный вариант предоставил?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Цитата:
Третий день активно работаю - не заметил никакой нестабильности в "устаревшей" версии, работает как часики. Вот только подсказал бы кто, как изменить код из #11, чтоб при выборе слоя с цветом №250 курсор бы тоже становился №250 - частенько приходиться пользовать этот цвет при работе по растру. |
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Цитата:
Если кто подскажет по какому принципу происходит инверсия для цветов отличных от черного и белого, попробую подправить. Например черный меняется на белый, белый на черный, а на какой менять например сине-зеленый какой-то (136-й)? А еще старый вариант не меняет цвет курсора если изменить цвет слоя не меняя самого текущего слоя Также у меня цвет слоя = 250 делает цвет курсора = 250. Нашел я исходники. Попробую опубликовать. Не спрашивайте у меня почему все так замудрено. Это связано с тем что здесь используется два реактора и в процессе инициализации AutoCAD происходит много всякого такого что заставило меня сделать именно так. Сначала грузятся библиотечные функции После библиотечных функций должен подгрузиться файл LayerColor-CursorColorReactorSamoCAD.lsp Код:
LayerColor-CursorColorSamoCAD.lsp подгружается предыдущим LayerColor-CursorColorReactorSamoCAD.lsp его в автозагрузку не надо Код:
Ну и собственно сами библиотечные функции которые должны загрузиться перед предыдущими лиспами: Боюсь что сюда они все не влезут, поэтому кладу их в архив. В этой библиотеке много лишних, не относящихся именно к этой программе функций, разберетесь сами где нужные где не нужные. Бибилиотека небольшая. Последний раз редактировалось mmax, 09.05.2009 в 16:53. |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Слои такого цвета, коим окрашено мое рабочее пространство (цвет №136), я еще не встречал за свою, пускай недолгую, практику. Но для удовлетворения бушующего любопытства решаю проверить одну вещь. Ставлю цвет слоя соответствующим цвету моего рабочего пространства модели. И что вы думаете? Объекты и курсор становятся цветом заметно темнее рабочего пространства, не сливаются. Иду дальше - пробую те же телодвижения с другими цветами: 80, 74, 154... Начинает сливаться всё, курсора не видно, видны только объекты - чуууть темнее. На 125-м цвете снова не сливаются... Закономерность неясна, но ясно, что некоторые цвета инверсии не требуют.
|
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Извиняюсь за нескромность, но всетаки предлагаю использовать мой вариант. Он более современный и расширеный. А то что инверсии нет так это ничего страшного, навряд ли вы когда нибудь захотите использовать цвет слоя равный цвету экрана.
|
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Поставил. Действительно, всё так и есть - версия более современная и расширенная. При черном цвете слоя - черный курсор и
Цитата:
Я вот ненужные "книги из библиотеки", подчистил, прилагаю архив с необходимыми и достаточными файлами. |
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Ну а я в свою очередь, снова скажу спасибо, Apelsinov!!!,
Еще тогда 4 года назад он на этом форуме ответил на большинство моих вопросов про LISP. У меня тоже есть косячок. Я в те времена никак не мог разобраться как перевести цвета из RGB в OLE, и изобрел какойто очень странный способ перевода. Он правильный но очень громоздкий. Поэтому рекомендую заменить библиотечную функцию rgb->ole-samocad на Код:
счисления. Последний раз редактировалось mmax, 11.05.2009 в 16:07. |
|||
|
||||
Инженер по теплоснабжению Регистрация: 10.04.2010
РБ, г. Могилев
Сообщений: 25
|
Для начала хочу поблагодарить mmax... Спасибо.
а теперь ложку дегтя... Не так давно вплотную работаю в автокаде, поэтому не ругайте сильно, если глупость спрошу... Вот взял лиспы, установил, на 2008 enu все вроде хорошо... цвет меняется... красота... но я много использую инструментальные палитры... Причем различные варианты блоков с вставкой в различные слои или в текущий слой... оказалось, что лиспы каким-то образом влияют на их вставку... я в лиспах не силен, тем более в таких замудренных... т.е. блоки не вставляются с палитры в слой отличный от текущего... в коммандной строке маячит: Точка вставки или [Базовая точка/Масштаб/X/Y/Z/ПОворот]: *Прервано* Если же блок вставляется в текущий слой - все идет на ура... Проверил на чистом автокаде без всяких обвесов... можно ли решить эту проблему ? Причем еще раз повторю, проблема возникает именно после загрузки выше указанных лиспов. Заранее благодарен всем за любую помощь. |
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
Вот уже больше года прошло как я ушел из большого Автокада и за это время успел многое позабыть.
Объясни подробней как это вставить блок в слой отличный от текущего? Я так понимаю в блоке есть объекты имеющие слои не созданные в данном документе? А еще лучше абсолютно все подробно с файлом-примером с блоками и со слоями или без слоев |
|||
|
||||
Инженер по теплоснабжению Регистрация: 10.04.2010
РБ, г. Могилев
Сообщений: 25
|
Спасибо, что откликнулся...
У кнопки палитры инструментов в свойствах можно задать всякие опции вставки блока... Одна из них - слой, на который блок будет размещен... т.е. у меня большинство блоков в нулевом слое сделаны... а уже в палитрах некоторые направляю в нужный слой. Возможно эти лиспы как-то блокируют эту "временную смену" слоя для вставки блока в нужный .... поэтому операция прерывается... Насчет примеров, я могу, но уже не сегодня, но проверил не один раз на разных блоках, разных чертежах... с надстройками типа СПДС и без ... только убираю лиспы из автозагрузки - все начинает работать... Благодарю за внимание и помощь... |
|||
|
||||
Инженер по теплоснабжению Регистрация: 10.04.2010
РБ, г. Могилев
Сообщений: 25
|
я пока слабо разбираюсь, или совсем неразбираюсь в этих писулинах, ... куда мне использовать этот код, имея
LayerColor-CursorColorReactorSamoCAD.lsp LayerColor-CursorColorSamoCAD.lsp LibAcadObjectFunctionsSamoCAD.lsp LibColorFunctionsSamoCAD.lsp LibGetPutNameSamoCAD.lsp LibMathFunctionsSamoCAD.lsp LibOtherFunctionsSamoCAD.lsp LibRegistryFuntionsSamoCAD.lsp ? и еще вопрос не совсем в тему, но очень срочно нужно... <...> В отдельную тему /kpblc/ Последний раз редактировалось Кулик Алексей aka kpblc, 13.05.2010 в 21:45. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Как использовать лисп, опубликованный на форуме
Остальное - в отдельную тему.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||