|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Регистрация: 28.10.2019
Сообщений: 57
|
Задам еще вопрос. Решил все же сделать вариацию с RGB вариантом и завис
В общем не могу адекватно считать RGB код Пример. 1. У меня есть команда установки цвета. Прикручивается к отдельной кнопке. Код:
Для примера немного измененный код из сообщения 13 Код:
Пролистал замечательную книжку Николая Полещука AutoLisp и не нашел то, что могло бы мне помочь. Ответ скорей всего банален, но я в ступоре. Последний раз редактировалось Nikilin, 01.08.2023 в 11:25. |
|||
![]() |
|
||||
Регистрация: 15.08.2005
г. Норильск
Сообщений: 616
|
Метод (vla-setrgb ...) требует четыре параметра, а Вы пытаетесь скормить ему только два.
Разбейте переменные PER3 и PER4 на три отдельных значения (каждую) - и будет счастье. А как - обсуждалось здесь же. Тема: "Как в автолиспе перевести строку с пробелами в список?"
__________________
Счастливо, Алексей! |
|||
![]() |
|
||||
setrgb должна получить прямые цветовые координыты перечислением, соответственно per3 и per4 должны быть списками , а передача цвета в setrgb должна выглядеть как-то так (vla-SetRGB color1 (car PER3) (cadr per3) (caddr per3))
__________________
K Lisp |
||||
![]() |
|
||||
Регистрация: 28.10.2019
Сообщений: 57
|
Цитата:
Возвращает ошибку к сожалению. Не понял почему. Нету сообщения, есть только подсветка этого фрагмента. На работе отладка криво работает. Вечером попробую проверить на домашнем. На работе работает тока вариант (setq PER3R (atoi *GE-COL-R*)) ; (setq PER3G (atoi *GE-COL-G*)) ; (setq PER3B (atoi *GE-COL-B*)) ; (setq PER4R (atoi *GE-BCOL-R*)) ; (setq PER4G (atoi *GE-BCOL-G*)) ; (setq PER4B (atoi *GE-BCOL-B*)) ; Задать все переменные по отдельности и преобразовать каждый в число из текста. Минус такого способа в том что надо вызывать 3 программы для задания цвета, а не одну. ----- добавлено через ~5 мин. ----- Изучу спасибо. |
|||
![]() |
|
||||
если хочется и индексный цвет и rgb или вдруг книжный, то лучше сделать небольшой диалог на запрос всех параметров штриховки. в выборе цвета очень удобна функция (acad_truecolordlg...), правда она возвращает rgb цвет в dxf коде и в десятичном числе, которое нужно расшифровывать для извлечения R, G, B.
__________________
K Lisp |
||||
![]() |
|
||||
Регистрация: 28.10.2019
Сообщений: 57
|
Цитата:
Объясню логику, что я делаю. Кнопка допусти на штриховку будет такая. ^C^CSET-LAY;СЛОЙ;^C^CSET-COLOR-RGB;"70 70 70";....По аналогии другие переменные^C^CGEO-HATCH-RGB Таким образом при желании повторить и нажать enter переменные уже установлены глобально и работает только часть GEO-HATCH-RGB В общем криво, но логику объяснил. Именно поэтому усложнять слишком не стоит. Для макроса лучше оставить как есть. Если доведу до ума может и выложу исходники, где нибудь в сообщение. Мало ли кто решит заморочиться тем же. Уже были топорные команды для всего, которые в каждой команде задавали вопросы и устанавливали локальные переменные. Оказалось не так удобно, как выглядело вначале. Последний раз редактировалось Nikilin, 02.08.2023 в 05:03. Причина: Дополнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Найди в коде строку
Цитата:
Цифры 3 и 1 - это ACI (Autocad Color Index) зеленый и красный соотвественно Вместо них могут быть цифры от 1 до 256. Таблица ACI цветов ----- добавлено через ~10 мин. ----- Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 28.10.2019
Сообщений: 57
|
Цитата:
Я прекрасно понимаю что цвет определяется таблицей ACI, но Мне интересна DXF группа цвета заливки штриховки, и именно ее я в справочниках не нашел. 62 группа отвечает за цвет самой штриховки и она прекрасно работает. Думал что если группа 70 установленная на "1" , то 63 может поменять цвет фона, но не работает (в справочнике описана как "For MPolygon, pattern fill color as the ACI") А группа 70 как "Solid fill flag (solid fill = 1; pattern fill = 0); for MPolygon, the version of MPolygon" Последний раз редактировалось Nikilin, 02.08.2023 в 18:47. |
|||
![]() |
|
||||
Цитата:
зато она есть в расширенных данных, опять же в десятичном числе.
__________________
K Lisp |
||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание и восстановление профиля Автокад с помощью файла reg | olga87 | AutoCAD | 3 | 27.12.2020 19:22 |
Масштаб штриховки, указанный в свойствах, не соответствует масштабу на чертеже | wepp | AutoCAD | 10 | 31.08.2016 09:16 |
Макрос VBA Excel для извлечения таблиц из линий, полилиний, текста из DWG файлов в Excel с помощью NanoCAD/AutoCAD | JZY | Готовые программы | 8 | 14.07.2016 06:31 |
Как отключить вкладку "Редактор штриховки" при выборе штриховки? | EvilBraiN | AutoCAD | 5 | 13.07.2016 09:35 |