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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание более длинных линий

Создание более длинных линий

Ответ
Поиск в этой теме
Непрочитано 20.06.2008, 09:49 #1
Создание более длинных линий
Seryj_Wolk
 
Инженер-электрик
 
Псков
Регистрация: 04.03.2008
Сообщений: 59

Подскажите можно ли как то решить следующую проблему.
Регулярно приходится чертить линии которые должны быть короче или длиннее заданного растояния на определенное количество единиц, обычно на 100. Например, есть стена до нее черчу линию, а потом ее нужно удилннять либо укорачивать на 100 единиц. Можно ли как-то автоматизировать этот процесс.
С сеткой всего скорее не получиться, т.к. работать приходится на архитектурных планах, которые трудно подогнать под сетку.
Просмотров: 10457
 
Непрочитано 20.06.2008, 10:02
#2
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,626


Посмотри сюда:
http://www.caduser.ru/cgi-bin/f1/board.cgi?t=19521dI
Profan вне форума  
 
Автор темы   Непрочитано 20.06.2008, 11:16
#3
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от Profan Посмотреть сообщение
Благодарю, а как это все в автокаде реализовать, не подскажешь, а то я в этом деле полный Profan =)))
Seryj_Wolk вне форума  
 
Непрочитано 20.06.2008, 11:21
#4
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,626


Все хорошо расписано здесь:
http://dwg.ru/art/8
P.S. Только не надо себя отождествлять с Profan.
Profan вне форума  
 
Автор темы   Непрочитано 20.06.2008, 11:28
#5
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


благодарю, с этим я уже разобрался. Интерисует, как все это дело сделать в виде кнопочки.
и еще одна проблема. Эта команда удлиняет линию на заданное значение сразу с двух сторон, а нужно только с одной, это возможно?
С кнопкой тоже разобрался. С командой помогите.

Последний раз редактировалось Seryj_Wolk, 20.06.2008 в 11:41.
Seryj_Wolk вне форума  
 
Непрочитано 20.06.2008, 11:41
#6
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,626


Только с одной стороны:
Код:
[Выделить все]
 
(defun C:L_L ( / delta flag ob line)
    (setvar "CMDECHO" 0)
    (setq delta (getreal "\n Величина удлинения линии (ENTER-отказ): "))
    (if delta
        (progn
        (setq flag T)
        (while flag
        (setq ob (entsel "\n Выберите отрезок (ENTER-завершить): "))
        (if ob
            (progn
            (setq line (entget (car ob)))
                  (if (= (cdr (assoc 0 line)) "LINE")
                  (command "_LENGTHEN" "_delta" delta ob "")
                  ); if
             ); progn
                  (setq flag nil)
          ); if
        ); while
        ); progn
        (princ "\n Отказ.")
    ); if
(princ)
)
Profan вне форума  
 
Автор темы   Непрочитано 20.06.2008, 11:58
#7
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Это, к сожалению не то. Удлиняется готовый отрезок заданной длины, что гораздо быстрее сделать мышкой. А нужно чтобы при начертании отрезка он удлинялся (или укорачивался) на заданную длину в одном направлении (в котором он чертится). Вообщем все как по первой ссылке, но там отрезок удлинняется сразу с 2ух сторон. А с одной реально?
Seryj_Wolk вне форума  
 
Автор темы   Непрочитано 20.06.2008, 12:09
#8
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Код:
[Выделить все]
;***********l_line.lsp — Отрисовка отрезка с последующим
;                        удлинением его на заданную величину.
;   Freeware. Автор Владимир Громов. Август 2005 г.
;             Небольшая правка. Александр Ривилис.
;   Если величину удлинения задать со знаком минус (-), то
;   вместо удлинения получим укорочение.

(defun C:L_LINE ( / p1 p2 flag_begin delta)
  (setvar "CMDECHO" 0)
  (if (null (numberp L_LINE_DELTA_EXTEND)) (progn
    ;; Задаем начальное значение для удлинения
    (setq L_LINE_DELTA_EXTEND 3.0)
  )) ;; (if (progn
  (while (null flag_begin)
    (initget 128 "У U _ U U")
    (setq p1 (getpoint (strcat "\nНачальная точка линии [Удлинение <"
          (rtos L_LINE_DELTA_EXTEND 2 0)
          ">] (ENTER — завершение): "))
    )
    (cond
      ((= p1 "U")
        (setq delta (getdist (strcat "\nУдлинение <" (rtos L_LINE_DELTA_EXTEND 2 0) ">: ")))
        (if delta (setq L_LINE_DELTA_EXTEND delta))
      )
      ((and (= (type p1) 'STR) (distof p1))
       (setq L_LINE_DELTA_EXTEND (distof p1))
      )
      (T
       (setq flag_begin T)
      )
    ) ;; (cond

  ) ;; endof (while

  (if p1 (progn
    (initget 6)
    (setq p2 (getpoint p1 "\nКонечная точка линии: "))
    (command "_.LINE" "_none" p1 "_none" p2 "")
    (command "_.LENGTHEN" "_delta" L_LINE_DELTA_EXTEND
              "_none" (list (entlast) p1)
              "_none" (list (entlast) p2) "")
  ))
  (princ)
)
вот, но это с 2ух сторон

http://www.caduser.ru/cgi-bin/f1/board.cgi?t=19521dI отсюда

Последний раз редактировалось Кулик Алексей aka kpblc, 20.06.2008 в 13:24.
Seryj_Wolk вне форума  
 
Непрочитано 20.06.2008, 12:14
#9
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,626


Мой вариант (отрисовка линии с удлинением с конечной стороны):
Код:
[Выделить все]
 
(defun C:L_LINE ( / tn tk delta flag)
    (setvar "CMDECHO" 0)
    (setq delta (getreal "\n Величина удлинения линии (ENTER-отказ): "))
    (if delta
        (progn
        (setq flag T)
        (while flag
        (initget 6)
        (setq tn (getpoint "\n Начальная точка линии (ENTER-завершение): "))
              (if tn
                  (progn
                  (setq tk (getpoint tn "\n Конечная точка линии: "))
                  (command "_LINE" tn tk "")
                  (command "_LENGTHEN" "_delta" delta tk "")
                  ); progn
                  (setq flag nil)
              ); if
        ); while
        ); progn
        (princ "\n Отказ.")
    ); if
(princ)
)
Profan вне форума  
 
Автор темы   Непрочитано 20.06.2008, 12:19
#10
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


благодарю, работает пока отлично, а усовершенствовать можешь?
Seryj_Wolk вне форума  
 
Непрочитано 20.06.2008, 12:23
#11
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,626


Не гарантирую.
Profan вне форума  
 
Автор темы   Непрочитано 20.06.2008, 12:33
#12
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Если тебе не трудно, попробуй сделать так чтобы было как в примере. Вводилась сначала длина при нажатии буквы У, и потом она сохранялась по умолчанию. А не так чтобы ее нужно было прописывать каждый раз.
И возможноли сделать, чтобы не нужно было каждый раз вводить команду, а за начальную точку принималась конечная точка предыдущего отрезка. Вобщем как стандартная команда отрезок. Попытаться не мог бы?
Seryj_Wolk вне форума  
 
Непрочитано 20.06.2008, 13:03
#13
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,626


Не знаю. Ленивый я стал...
Profan вне форума  
 
Автор темы   Непрочитано 20.06.2008, 13:28
#14
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Народ, кто-нибудь еще сталкивался с это й проблемой, есть у кого-то что-нибудь?
Seryj_Wolk вне форума  
 
Непрочитано 20.06.2008, 17:17
#15
alex_AW

КЖ
 
Регистрация: 23.03.2005
С-Пб
Сообщений: 79


Я в таких случаях пользуюсь объектной привязкой со смещением.

Опа... Пардон. С первого разу не разглядел, что вопрос по програмированию.

Последний раз редактировалось alex_AW, 20.06.2008 в 17:35.
alex_AW вне форума  
 
Автор темы   Непрочитано 23.06.2008, 09:10
#16
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от alex_AW Посмотреть сообщение
Я в таких случаях пользуюсь объектной привязкой со смещением.

Опа... Пардон. С первого разу не разглядел, что вопрос по програмированию.
а это как? может и без программирования обойтися можно
Seryj_Wolk вне форума  
 
Непрочитано 23.06.2008, 09:30
#17
SMI

конструктор Лего
 
Регистрация: 14.04.2008
Санкт-Петербург
Сообщений: 104
Отправить сообщение для SMI с помощью AIM


Цитата:
Сообщение от Seryj_Wolk Посмотреть сообщение
а это как? может и без программирования обойтися можно
а простая кнопочка в панели с командами автокада...хотя нет, там еще линию надо чертить до которой это все чертить надо....
есть вариант с кнопочкой удлинить.....работает и не только для отрезков....
ну еще можно просто потянуть за конец и ввести нужную длину полную для полилинии, а для отрезка просто длину на которую надо увеличить или уменьшить....

ЗЫ. Названий официальных этих команд не знаю, так что объянила как смогла.....пыталась попонятнее написать)))))
__________________
Нет ничего такого, что может быть лучше чем нормально.....
SMI вне форума  
 
Непрочитано 23.06.2008, 10:01
#18
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


По моему в идеале было бы -
рисуем линию как обычно;
нажимаем контрол, тыкаем вторую точку - получаем удлинненную линию, следующая линия начинается из удлиненной точки;
нажимаем контрол+чето еще, тыкаем вторую точку - получаем укороченную линию, следующая линия начинается из укороченной точки;
если ниче не жмем, линии рисуются как обычно
или бругие кнопки заюзать, которые в лиспе удобней обрабатывать. ну и чтоб длину вылета\недострела можно было не выходя из команды менять

Последний раз редактировалось zamtmn, 23.06.2008 в 10:16.
zamtmn вне форума  
 
Автор темы   Непрочитано 23.06.2008, 12:24
#19
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от SMI Посмотреть сообщение
а простая кнопочка в панели с командами автокада...хотя нет, там еще линию надо чертить до которой это все чертить надо....
есть вариант с кнопочкой удлинить.....работает и не только для отрезков....
ну еще можно просто потянуть за конец и ввести нужную длину полную для полилинии, а для отрезка просто длину на которую надо увеличить или уменьшить....

ЗЫ. Названий официальных этих команд не знаю, так что объянила как смогла.....пыталась попонятнее написать)))))
да вообщето суть вопроса и стоит в том, чтобы каждый раз вот так вот не делать =)))
Цитата:
Сообщение от zamtmn Посмотреть сообщение
По моему в идеале было бы -
рисуем линию как обычно;
нажимаем контрол, тыкаем вторую точку - получаем удлинненную линию, следующая линия начинается из удлиненной точки;
нажимаем контрол+чето еще, тыкаем вторую точку - получаем укороченную линию, следующая линия начинается из укороченной точки;
если ниче не жмем, линии рисуются как обычно
или бругие кнопки заюзать, которые в лиспе удобней обрабатывать. ну и чтоб длину вылета\недострела можно было не выходя из команды менять
да, это было бы вообще круто, только ктобы это еще смог в жизнь воплотить...
Seryj_Wolk вне форума  
 
Непрочитано 23.06.2008, 13:02
#20
alex_AW

КЖ
 
Регистрация: 23.03.2005
С-Пб
Сообщений: 79


Цитата:
Сообщение от Seryj_Wolk Посмотреть сообщение
а это как? может и без программирования обойтися можно
Если без програмирования, то порядок дейсвий такой:
1- Выбираем команду (_line)
2- На панели объектных привязок или в контекстном меню (shift+ правая кнопка) выбираем привязку со смещением
3- Указываем щелчком базовую точку, смещаем курсор в требуемом направлении и вводим с клавиатуры величину смещения (100).

В результате получим первую точку линии, отстоящую от указанной точки на заданную величину.
и т.д.
Изображения
 

Последний раз редактировалось alex_AW, 23.06.2008 в 13:15.
alex_AW вне форума  
 
Автор темы   Непрочитано 23.06.2008, 13:23
#21
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от alex_AW Посмотреть сообщение
Если без програмирования, то порядок дейсвий такой:
1- Выбираем команду (_line)
2- На панели объектных привязок или в контекстном меню (shift+ правая кнопка) выбираем привязку со смещением
3- Указываем щелчком базовую точку, смещаем курсор в требуемом направлении и вводим с клавиатуры величину смещения (100).

В результате получим первую точку линии, отстоящую от указанной точки на заданную величину.
и т.д.
респект, не знал такого
Seryj_Wolk вне форума  
 
Непрочитано 23.06.2008, 18:00
#22
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


>>да, это было бы вообще круто, только ктобы это еще смог в жизнь воплотить...
Уважаемые лисповцы и арикссовцы, не не проходите мимо, этим вы здорово облегчите жизнь тем кто кладет свои коммуникации вдоль стенок, вам будет респект и уважуха))
zamtmn вне форума  
 
Непрочитано 25.06.2008, 00:28
#23
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


zamtmn, Если я правильно все понял
Код:
[Выделить все]
;;;
;;;Теперь на запрос " Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "
;;;Можно набирать с клавиатуры:+ (удлинить); - (укоротить); 0 (сбросить на 0)
(defun C:LL ( / tn tk delta flag)
  (setvar "CMDECHO" 0)
  (if (null *LL_LENGTH*)(setq *LL_LENGTH* (getvar "USERR5")))
  (princ "\nАбсолютная величина удлинения линии < ")
  (princ *LL_LENGTH*)(princ " >: ")
  (initget "Удлинение Length _L L")
  (if (null(setq delta (getdist)))(setq delta *LL_LENGTH*))
  (setvar "USERR5" (setq *LL_LENGTH* delta))
  (initget 1)
  (setq tn (getpoint "\n Начальная точка линии : "))
  (setvar "USERR4" 0)
  (initget "уДлинить уКоротить Ноль + - 0 = _+ - 0 + - 0 +")
  (while
    (progn
      (princ "\nТекущее удлинение = ")(princ (getvar "USERR4"))(princ " ")
    (setq tk (getpoint tn " Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "))
    )
    (cond
      ((= tk "0")(setvar "USERR4" 0))
      ((or (= tk "+")(= tk "="))(setvar "USERR4" (abs(getvar "USERR5"))))
      ((= tk "-")(setvar "USERR4" (* -1.0 (abs(getvar "USERR5")))))
      ((listp tk)
       (setq tk (polar tn (angle tn tk)(+ (distance tn tk) (getvar "USERR4"))))
       (command "_.LINE" "_non" tn "_non" tk "")
       (setq tn tk)
       )
       (t nil)
      )
  (initget "уДлинить уКоротить Ноль + - 0 = _+ - 0 + - 0 +")
    )
  (princ)
  )
По поводу "нажал ctrl - +100" "отпустил ctrl - 0" можно задействовать клавиши временной замены. Там можно вставлять макросы на нажатие и отпускание клавиши. В команде абсолютное значение хранится в пользовательской переменной USERR5 (например 100), а текущее - в переменной USERR4 (например 100, 0 , -100)
Макросы могут быть такого вида:
для увеличения нажатие - (setvar "USERR4" (abs(getvar "USERR5")))
для увеличения отпуск - (setvar "USERR4" 0)
для уменьшения нажатие - (setvar "USERR4" (* -1.0 (abs(getvar "USERR5"))))
для уменьшения отпуск - (setvar "USERR4" 0)
Завтра попробую. Должно получится
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 25.06.2008 в 12:25. Причина: Модификация
VVA вне форума  
 
Непрочитано 25.06.2008, 01:18
#24
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


С помощью клавиш временной замены не получилось, остается с помощью опций
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 25.06.2008, 09:05
#25
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от VVA Посмотреть сообщение
С помощью клавиш временной замены не получилось, остается с помощью опций
большущий респект тебе. Ты не представляешь как помог. Этот код уже супер, там в принципе и клавиши не нужны. С клавишами цены ему не будет =)))

Последний раз редактировалось Seryj_Wolk, 25.06.2008 в 09:10.
Seryj_Wolk вне форума  
 
Непрочитано 25.06.2008, 09:44
#26
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


VVA
Огромное спасибо! работает.
В лиспе больше нет возможности организовать диалог с пользователем во время работы кроме как командная строка? может можно не модальное окошко вывести с парой чекбоксов если с клавиатурой невыходит?
zamtmn вне форума  
 
Непрочитано 25.06.2008, 12:09
#27
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Немного модифицировал #23 Теперь в ответ на запрос
" Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "
Можно набирать с клавиатуры:
  • + (удлинить)
  • - (укоротить)
  • 0 (сбросить на 0)
Если задействовать numpad получается быстрее
zamtmn, Организовать диалог в Лиспе можно с помощью диалоговых окон (DCL). Однако в плане организации диалога DCL остался на примитивном уровне. Как говорится: "Овчинка выделки не стоит".
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 25.06.2008, 12:14
#28
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от VVA Посмотреть сообщение
Немного модифицировал #23 Теперь в ответ на запрос
" Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "
Можно набирать с клавиатуры:
  • + (удлинить)
  • - (укоротить)
  • 0 (сбросить на 0)
Если задействовать numpad получается быстрее
zamtmn, Организовать диалог в Лиспе можно с помощью диалоговых окон (DCL). Однако в плане организации диалога DCL остался на примитивном уровне. Как говорится: "Овчинка выделки не стоит".
вообще круто =)))
а можешь сделать версию где вместо + нужно нажимать =, так удобнее для меня. Или лучше скажи что нужно поменять. Просто везде заменить + на =???
Seryj_Wolk вне форума  
 
Непрочитано 25.06.2008, 12:18
#29
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Seryj_Wolk, Нужный текст в #23 выделил красным. Осталось везде аккуратно заменить + на =. Но мне кажется использовать NumPAD (это там, где клавиша Num Lock) гораздо удобнее.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 25.06.2008, 12:21
#30
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от VVA Посмотреть сообщение
Seryj_Wolk, Нужный текст в #23 выделил красным. Осталось везде аккуратно заменить + на =. Но мне кажется использовать NumPAD (это там, где клавиша Num Lock) гораздо удобнее.
благодарю.
Насчет нумпада согласен, но если работаешь не на ноутбуке
Seryj_Wolk вне форума  
 
Непрочитано 25.06.2008, 12:27
#31
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Сообщение от Seryj_Wolk Посмотреть сообщение
благодарю.
Насчет нумпада согласен, но если работаешь не на ноутбуке
Еще раз модифицировал #23. Тепеть + и = воспринимаются как +
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 25.06.2008, 13:24
#32
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от VVA Посмотреть сообщение
Еще раз модифицировал #23. Тепеть + и = воспринимаются как +
еще раз благодарю
Seryj_Wolk вне форума  
 
Непрочитано 25.06.2008, 18:23
#33
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


VVA
т.е. от нажатия enter никак не уйти?
zamtmn вне форума  
 
Непрочитано 25.06.2008, 19:40
#34
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


По крайней мере я не знаю как. Есть еще вариант с grread, но признанный мастер в этой области Евгений Елпанов.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 25.06.2008, 23:26
#35
Donhuan

Проектировщик СС
 
Регистрация: 24.06.2008
Минск
Сообщений: 134
<phrase 1=


Попробовал соорудить нечто с grread. В принципе у меня работает.
Код:
[Выделить все]
;;;Теперь на запрос " Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "
;;;Можно набирать с клавиатуры:+ (удлинить); - (укоротить); 0 (сбросить на 0); Enter - выйти, без подтверждения опции вводом
;;;Минус - работает только привязка к узлам. Привязка не визуализируется.
(defun C:LL ( / tn tk delta flag)
  (setvar "CMDECHO" 0)
  (if (null *LL_LENGTH*)(setq *LL_LENGTH* (getvar "USERR5")))
  (princ "\nАбсолютная величина удлинения линии < ")
  (princ *LL_LENGTH*)(princ " >: ")
  (initget "Удлинение Length _L L")
  (if (null(setq delta (getdist)))(setq delta *LL_LENGTH*))
  (setvar "USERR5" (setq *LL_LENGTH* delta))
  (initget 1)
  (setq tn (getpoint "\n Начальная точка линии : "))
  (setvar "USERR4" 0)
  (while
    (progn
      (princ "\nТекущее удлинение = ")(princ (getvar "USERR4"))(princ " ")
      (princ "\n Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: ")
      (while
	(progn
	  (setq tk (grread t 4 0))
	  (redraw)
	  (cond
	    ((= (cadr tk) 13) (not (setq tk "enter")))
	    ((= (cadr tk) 43) (not (setq tk "+")))
	    ((= (cadr tk) 45) (not (setq tk "-")))
	    ((= (cadr tk) 48) (not (setq tk "0")))
	    ((and (listp (cadr tk)) (= (car tk) 3)) (not (setq tk (if (osnap (cadr tk) "_end")
					                            (osnap (cadr tk) "_end")
					                            (cadr tk)
					                          ))))
	    (t (not (grdraw tn (cadr tk) 3 1)))
	  )
	)
      )
      (if (= "enter" tk) nil t)
    )
    (cond
      ((= tk "0")(setvar "USERR4" 0))
      ((or (= tk "+")(= tk "="))(setvar "USERR4" (abs(getvar "USERR5"))))
      ((= tk "-")(setvar "USERR4" (* -1.0 (abs(getvar "USERR5")))))
      ((listp tk)
       (setq tk (polar tn (angle tn tk)(+ (distance tn tk) (getvar "USERR4"))))
       (command "_.LINE" "_non" tn "_non" tk "")
       (setq tn tk)
       )
       (t nil)
      )
  (initget "уДлинить уКоротить Ноль + - 0 = _+ - 0 + - 0 +")
    )
  (princ)
  )
Donhuan вне форума  
 
Непрочитано 26.06.2008, 02:29
#36
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Donhuan, Все верно, только на мой взгляд потерь больше (визуализация привязки, полярная трассировка, горячие клавиши F8 например) чем приобретений (не нужно жать enter)
Возникла идея задействовать для этих целей левую руку, и клавишу пробел вместо enter. Для того, чтобы не тянуться за определенными кнопками для позиций + - 0 выделены ряды кнопок (на клаве из как раз 3)
Итак:
+ - равносильно нажатию любой кнопки из ряда QWERTY в любой раскладке
- - равносильно нажатию любой кнопки из ряда ZXCVBN в любой раскладке
0 - все остальное (ASDFGH и цифры)
И сама реализация
Код:
[Выделить все]
;;;
;;;Теперь на запрос " Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "
;;;Можно набирать с клавиатуры:+ (удлинить); - (укоротить); 0 (сбросить на 0)
(defun C:LL ( / tn tk delta lst_+ lst_- )
  (setvar "CMDECHO" 0)
  (setq lst_+ '("+" "=" "Q" "W" "E" "R" "T" "Y" "U" "I" "O" "P" "{" "}" "[" "]"
		"Й" "Ц" "У" "К" "Е" "Н" "Г" "Ш" "Щ" "З" "Х" "Ъ"))
  (setq lst_- '("-" "Z" "X" "C" "V" "B" "N" "M" "," "." "/" "<" ">" "?" 
		"Я" "Ч" "С" "М" "И" "Т" "Ь" "Б" "Ю"))
  (if (null *LL_LENGTH*)(setq *LL_LENGTH* (getvar "USERR5")))
  (princ "\nАбсолютная величина удлинения линии < ")
  (princ *LL_LENGTH*)(princ " >: ")
  (initget "Удлинение Length _L L")
  (if (null(setq delta (getdist)))(setq delta *LL_LENGTH*))
  (setvar "USERR5" (setq *LL_LENGTH* delta))
  (initget 1)
  (setq tn (getpoint "\n Начальная точка линии : "))
  (setvar "USERR4" 0)
  (initget 128 "уДлинить уКоротить Ноль + - 0 = _+ - 0 + - 0 +")
  (while
    (progn
      (princ "\nТекущее удлинение = ")(princ (getvar "USERR4"))(princ " ")
    (setq tk (getpoint tn " Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "))
    )
    (cond ((and (= (type tk) 'STR) ;_  +
		(setq tk (substr (strcase tk) 1 1))
		(member tk lst_+)
		)
	   (setvar "USERR4" (abs(getvar "USERR5")))
	   )
	  ((and (= (type tk) 'STR) ;_  -
		(setq tk (substr (strcase tk) 1 1))
		(member tk lst_-)
		)
	   (setvar "USERR4" (* -1.0 (abs(getvar "USERR5")))))
	  ((listp tk)
	   (setq tk (polar tn (angle tn tk)(+ (distance tn tk) (getvar "USERR4"))))
	   (command "_.LINE" "_non" tn "_non" tk "")
	   (setq tn tk)
	   )
	  (t (setvar "USERR4" 0)))
  (initget 128 "уДлинить уКоротить Ноль + - 0 = _+ - 0 + - 0 +")
    )
  (princ)
  )
PS Старый вариант через опции или 0 + - тоже остался
PPS Потестировал с левой рукой. Получалось работать не глядя на клавиатуру.
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 26.06.2008 в 02:31. Причина: Добавление
VVA вне форума  
 
Непрочитано 26.06.2008, 08:11
#37
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


VVA, я прочитал посты, мне показалось что этот лисп нужен для прорисовки осей элементов, но почему первая точка линии не удлиняется, после выполнения удлинения со второй точкой, мы можем знать направление удлинения первой, хотел спросить можно ли привязать к масштабу чертежа это удлиннение, если да, то лисп имеет место быть, если не, то не имеет

Что я имел ввиду что для каждого масштаба свое удлинение, можно просто вставить коэфициент удлинения к примеру...
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 26.06.2008, 08:12
#38
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Seryj_Wolk, а в электрике где можно использовать данный лисп?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 26.06.2008, 08:55
#39
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


2 dextron3
не нужно ничего удлинять с 2ух сторон. Цель изначально была: удлинение с одной стороны без всяких масштабов на заданное количество единиц.
Благодаря этому лиспу скорость работы по начертанию электропроводок вдоль стен возрастет, считаю, раза в 2 как минимум (особенно если много поворотов). Если ты никогда не сталкивался с такой задачей, то ты врятли поймешь все удобство этого лиспа =))). Если нужно, то на удлинение начальной точки есть ссылка в начале темы.

2 VVA
вообще отлично!!!
Seryj_Wolk вне форума  
 
Непрочитано 26.06.2008, 09:06
#40
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


Donhuan
спасибо, но действительно без трассировки/привязки неполучится работать
VVA
последний вариант самый приемлимый, получается быстро переключать режимы
dextron3
В электрике - класть кабеля вдоль стенок с отступом
zamtmn вне форума  
 
Непрочитано 26.06.2008, 10:35
#41
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


zamtmn, можешь видеоролик выложить, я иногда просто электрику делаю, там в принципе схематично же проводка рисуется?, как и вотоплении,....


1. Считаешь ли ты потом длину нарисованных линий?
2. Как считаешь провода которые идут вертикально
3. Какие присадки для автокада еще можно использовать для электрика

Offtop: PS Просто у меня сестра электрик...
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 26.06.2008, 10:45
#42
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от dextron3 Посмотреть сообщение
zamtmn, можешь видеоролик выложить, я иногда просто электрику делаю, там в принципе схематично же проводка рисуется?, как и вотоплении,....


1. Считаешь ли ты потом длину нарисованных линий?
2. Как считаешь провода которые идут вертикально
3. Какие присадки для автокада еще можно использовать для электрика

Offtop: PS Просто у меня сестра электрик...
схематично то схематично. Но если все рисовать на планах с одинаковыми отступами (я привык работать аккуратно), а не как попало на глазок, то это незаменимый лисп.

1. Длина конечно же считается.
2. Вертикальные провода считаешь так же как и горизонтальные, но только без плана =)
Seryj_Wolk вне форума  
 
Непрочитано 26.06.2008, 12:26
#43
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


dextron3
нафиг видео. Подводишь курсор к стенке на привязку перпендикуляр - линия не дорисовывается на 1 мм, потом к следующей (перпендикулярной предидущей) и т.д. когда надо пройти сквозь стенку - линия наоборот длинее рисуется. в итоге ты аккуратно обошол все стенки и трасса сдвинута от них на 1 мм.

1. для шлейфов пожарной сигнализации - не считаю, считает програмка по координатам датчиков и соединительных коробок. отдельные кабели которых много меньше шлейфов - считаю на глаз или суммарную длину отрезков\полилиний.
2. добавляю ко всем кабелям\проводам скокото метров условно. в особо тяжких случаюх считаю точно с учетом всех подъемов опусков.
3. программ много, но реальной пользы от большинства мало. глянь продукты консистент софтвар тамже где качал тулпак
zamtmn вне форума  
 
Непрочитано 26.06.2008, 14:44
#44
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


zamtmn, про программу по координатам датчиков заинтересовало, есть ли точный алгоритм для подсчета проводов по координатам?

К примеру алгоритм работы программы:

1. Укажите координаты щитка
2. Укажите высоту монтажа
3. Укажите выключатели
4. Укажите высоту выключателей
5. Укажите остветительные приборы
6. Укажите высоту осветительных приборов
7. Укажите розетки
8. Кажите высоту розеток

Результат выдается в виде:

Количества проводов с определнным сечением
Количества светильников
Количества разеток
Количества выключателей

если ткое возможно то скажите...
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 26.06.2008, 15:25
#45
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от dextron3 Посмотреть сообщение
zamtmn, про программу по координатам датчиков заинтересовало, есть ли точный алгоритм для подсчета проводов по координатам?

К примеру алгоритм работы программы:

1. Укажите координаты щитка
2. Укажите высоту монтажа
3. Укажите выключатели
4. Укажите высоту выключателей
5. Укажите остветительные приборы
6. Укажите высоту осветительных приборов
7. Укажите розетки
8. Кажите высоту розеток

Результат выдается в виде:

Количества проводов с определнным сечением
Количества светильников
Количества разеток
Количества выключателей

если ткое возможно то скажите...
дану бред...
Seryj_Wolk вне форума  
 
Непрочитано 26.06.2008, 15:55
#46
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


dextron3
ты так запаришся всё указывать)). в пожарке проще, датчики в шлейфе пронумерованы, провод обычно идет от датчика к датчику по кратчайшей траектории паралельно стенам. т.е. зная координаты датчиков и соединительных коробок можно посчитать наикратчайшую длину шлейфа, если провод идет не по кратчайшей траектории, то нужно прикинуть скока метров добавить. глянь тут чтоб понятней было http://zcad.h17.ru/bpodcl/bpodcl.html
zamtmn вне форума  
 
Непрочитано 26.06.2008, 16:18
#47
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


ну я так предположил, хотел спросить есть специальны лисп программки именно для электриков которые не используют други разделы?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 26.06.2008, 17:39
#48
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от VVA Посмотреть сообщение
0 - все остальное (ASDFGH и цифры)
Будь добр, подправь вот этот момент. А то получается косяк. Поясняю. Начинаю чертить линию. Задаю абсолютною величину удлинения. Тыкаю начальную точку, а следующую точку я тыкаю не руками, а ввожу с клавиатуры цифровое значение, и ничего не получается =((( Автокад воспринимает это как "Текущее удлинение = 0.0". Можно подкоректировать?
Seryj_Wolk вне форума  
 
Непрочитано 26.06.2008, 20:41
#49
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


*** Удалено ***
Вопрос понял. Буду думать.
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 26.06.2008 в 21:27.
VVA вне форума  
 
Непрочитано 26.06.2008, 22:41
#50
Donhuan

Проектировщик СС
 
Регистрация: 24.06.2008
Минск
Сообщений: 134
<phrase 1=


Разбил запрос параметров и ввод точки на два этапа:
- сначала дается возможность определиться какой формат отрезка нужен.
- переход непосредственно к вводу точки происходит после нажатия правой кнопки мыши.
Конечно возрастает в 2 раза число нажатий на кнопки мыши, но иначе решить проблему можно по-моему только написав свою программу обработки привязок, а это я наверное не потяну еще

Код:
[Выделить все]
;;;Теперь на запрос " Выберите: (+ - 0 RightMouth) [уДлинить/уКоротить/Ноль/Следующая точка] <выход>: "
;;;Можно набирать с клавиатуры:+ (удлинить); - (укоротить); 0 (сбросить на 0); RightMouth (переход к вводу точи); Enter - выйти, 
;;;без подтверждения опции вводом
;;;Минус - возросло в 2 раза число кликов мышью.
(defun C:LL ( / tn tk delta flag)
  (setvar "CMDECHO" 0)
  (if (null *LL_LENGTH*)(setq *LL_LENGTH* (getvar "USERR5")))
  (princ "\nАбсолютная величина удлинения линии < ")
  (princ *LL_LENGTH*)(princ " >: ")
  (initget "Удлинение Length _L L")
  (if (null(setq delta (getdist)))(setq delta *LL_LENGTH*))
  (setvar "USERR5" (setq *LL_LENGTH* delta))
  (initget 1)
  (setq tn (getpoint "\n Начальная точка линии : "))
  (setvar "USERR4" 0)
  (while
    (progn
      (princ "\nТекущее удлинение = ")(princ (getvar "USERR4"))(princ " ")
      (princ "\n Выберите: (+ - 0 RightMouth) [уДлинить/уКоротить/Ноль/Следующая точка] <выход>: ")
      (while
	(progn
	  (setq tk (grread t 4 0))
	  (redraw)
	  (cond
	    ((= (cadr tk) 13) (not (setq tk "enter")))
	    ((= (cadr tk) 43) (not (setq tk "+")))
	    ((= (cadr tk) 45) (not (setq tk "-")))
	    ((= (cadr tk) 48) (not (setq tk "0")))
	    ((= (car tk) 25) (not (setq tk (getpoint tn " Конечная точка линии: "))))
	    ((= (car tk) 5) (not (grdraw tn (cadr tk) 3 1)))
	    (t)
	  )
	)
      )
      (if (= "enter" tk) nil t)
    )
    (cond
      ((= tk "0")(setvar "USERR4" 0))
      ((or (= tk "+")(= tk "="))(setvar "USERR4" (abs(getvar "USERR5"))))
      ((= tk "-")(setvar "USERR4" (* -1.0 (abs(getvar "USERR5")))))
      ((listp tk)
       (setq tk (polar tn (angle tn tk)(+ (distance tn tk) (getvar "USERR4"))))
       (command "_.LINE" "_non" tn "_non" tk "")
       (setq tn tk)
       )
       (t nil)
      )
  (initget "уДлинить уКоротить Ноль + - 0 = _+ - 0 + - 0 +")
    )
  (princ)
)
P.S.
Исправил ошибку в прошлом коде - вылет программы при клике на панелях AutoCad.
Могут быть проблемы с правой кнопкой мыши. У меня она возвращает код 25, но в описании функции grread этот код не упомянут, может другие мыши другой код будут возвращать.
Если будет такой косяк, то можно заменить:
Код:
[Выделить все]
(= (car tk) 25)
на
Код:
[Выделить все]
(= (car tk) 3)
, будет переходить к вводу точки по левому клику.

Последний раз редактировалось Donhuan, 26.06.2008 в 22:44. Причина: Дополнение.
Donhuan вне форума  
 
Автор темы   Непрочитано 27.06.2008, 09:00
#51
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


2 VVA
ну как процесс? получилось чего нибудь?

2 Donhuan
Цитата:
Разбил запрос параметров и ввод точки на два этапа:
чего то я не понял, не мог бы поподробнее объяснить что за изменения
Seryj_Wolk вне форума  
 
Непрочитано 27.06.2008, 10:50
#52
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Сообщение от Seryj_Wolk Посмотреть сообщение
2 VVA
ну как процесс? получилось чего нибудь?
Что делать понятно было с самого начала. Вопрос КАК ДЕЛАТЬ?
Если оставить арбитражный ввод (initget 128 ...), то запрос точки будет возвращать ввиде строки все, что ввел на клавиатуре (типа "@100<45" и т.п.). Дальше сам расхлебывай, чего не хочется. Если его исключить, то будет длинный initget со всеми возможными клавишами. Наверное, сделаю так: уберу арбитражный ввод и сокращу набор клавиш.
Исходя из анатомии левой руки удобнее нажимать клавиши QWERT чем OP{}.
Т.е. оставлю WERTYUI, SDFGHJ, XCVBN в русской и английской раскладках. Initget должен это "съесть"
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 27.06.2008 в 16:16. Причина: Орфография
VVA вне форума  
 
Автор темы   Непрочитано 27.06.2008, 11:09
#53
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от VVA Посмотреть сообщение
Что делать понятно было с самого начала. Вопрос КАК ДЕЛАТЬ?
Если отавить арбитражный ввод (initget 128 ...), то запрос точки будет возвращать ввиде строки все, что ввел на клавиатуре (типа "@100<45" и т.п.). Дальше сам расхлебывай, чего не хочется. Если его исключить, то будет длинный initget со всеми возможными клавишами. Наверное, сделаю так: уберу арбитражный ввод и сокращу набор клавиш.
Исходя из анатомии левой руки удобнее нажимать клавиши QWERT чем OP{}.
Т.е. оставлю WERTYUI, SDFGHJ, XCVBN в русской и английской раскладках. Initget должен это "съесть"
давай, ждем
Seryj_Wolk вне форума  
 
Непрочитано 27.06.2008, 14:18
#54
Donhuan

Проектировщик СС
 
Регистрация: 24.06.2008
Минск
Сообщений: 134
<phrase 1=


Цитата:
Сообщение от Seryj_Wolk Посмотреть сообщение
2 Donhuan

чего то я не понял, не мог бы поподробнее объяснить что за изменения
Чего непонятного, вроде же все описал. Сначала определяешься хочешь ты удлинить, укоротить, выйти, потом жмешь правую кнопку мыши и переходишь к вводу точки (с клавиатуры или левой кнопкой мыши со всеми привязками). Запусти программу и посмотри.
Donhuan вне форума  
 
Непрочитано 27.06.2008, 23:10
#55
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Получилось пока так
Код:
[Выделить все]
;;;
;;;Теперь на запрос " Конечная точка линии или (+ - 0) [уДлинить/уКоротить/Ноль] <выход>: "
;;;Можно набирать с клавиатуры:+ (удлинить); - (укоротить); 0 (сбросить на 0)
(defun C:LL ( / tn tk delta)
  (setvar "CMDECHO" 0)
  (if (null *LL_LENGTH*)(setq *LL_LENGTH* (getvar "USERR5")))
  (princ "\nАбсолютная величина удлинения линии < ")
  (princ *LL_LENGTH*)(princ " >: ")
  (initget "Удлинение Length _L L")
  (if (null(setq delta (getdist)))(setq delta *LL_LENGTH*))
  (setvar "USERR5" (setq *LL_LENGTH* delta))
  (initget 1)
  (setq tn (getpoint "\n Начальная точка линии : "))
  (setvar "USERR4" 0)
  (initget "Удлинить укороТить нОль + - = 0 W E R T Y U I Ц У К Е Н Г Ш
                S D F G H J K Ы В А П Р О Л X C V B N M Ч С М И Т Ь
                _+ - 0 + - 0 + + + + + + + + + + + + + + +
                0 0 0 0 0 0 0 0 0 0 0 0 0 0 - - - - - - - - - - - -")
  (while
    (progn
      (princ "\nТекущее удлинение = ")(princ (getvar "USERR4"))(princ " ")
    (setq tk (getpoint tn " Конечная точка линии или (+ - 0) [Удлинить/укороТить/нОль] <выход>: "))
    )
    (cond ((= tk "+")
	   (setvar "USERR4" (abs(getvar "USERR5")))
	   )
	  ((= tk "-")
	   (setvar "USERR4" (* -1.0 (abs(getvar "USERR5")))))
	  ((listp tk)
	   (setq tk (polar tn (angle tn tk)(+ (distance tn tk) (getvar "USERR4"))))
	   (command "_.LINE" "_non" tn "_non" tk "")
	   (setq tn tk)
	   )
	  (t (setvar "USERR4" 0)))
    (initget "Удлинить укороТить нОль + - = 0 W E R T Y U I Ц У К Е Н Г Ш
                S D F G H J L Ы В А П Р О Л X C V B N M Ч С М И Т Ь
                _+ - 0 + - 0 + + + + + + + + + + + + + + +
                0 0 0 0 0 0 0 0 0 0 0 0 0 0 - - - - - - - - - - - -")

    )
  (princ)
  )
Немного сократил кол-во допустимых клавиш
увеличить: WERTYUIЦУКЕНГШ+=
уменьшить: XCVBNMЧСМИТЬ-
ноль: SDFGHJKЫВАПРОЛ0(ноль)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 28.06.2008, 15:16
#56
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


2 VVA
я тут немного пороботал и как кому удобней не знаю, может еще и привычка нужна. Но я привык работать на Enter и мне в принципе хватает 0, -, =. Но это кто как больше привык. Не тянутся что-то у меня руки к пробелы =))
Seryj_Wolk вне форума  
 
Непрочитано 28.06.2008, 16:20
#57
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Seryj_Wolk, сегодня показал лисп электрику, сказали что это баловство, ведь обычно схематично показывают, ну пусть делают тапорную работу и дальше,

PS а у меня вопрос а нельзя рисовать полилинией и потом один раз офсетнуть?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 28.06.2008, 16:55
#58
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Не тянутся что-то у меня руки к пробелы =))
К пробелу должны тянуться пальцы , вернее один - большой левой руки.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 28.06.2008, 20:49
#59
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Seryj_Wolk, сегодня показал лисп электрику, сказали что это баловство, ведь обычно схематично показывают, ну пусть делают тапорную работу и дальше,

PS а у меня вопрос а нельзя рисовать полилинией и потом один раз офсетнуть?
некоторые ненужными считают и слои и привязки. лисп нужный и удобный, ваш электрик ошибается. бывают люди как чертили на кульмане - так и чертят на компе.

нельзя, офсетить нужно будет в разные стороны
zamtmn вне форума  
 
Автор темы   Непрочитано 30.06.2008, 08:44
#60
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Seryj_Wolk, сегодня показал лисп электрику, сказали что это баловство, ведь обычно схематично показывают, ну пусть делают тапорную работу и дальше,
Ну некоторые и руками до сих пор чертят и говорят что компьютер это баловство...
Seryj_Wolk вне форума  
 
Автор темы   Непрочитано 03.07.2008, 17:05
#61
Seryj_Wolk

Инженер-электрик
 
Регистрация: 04.03.2008
Псков
Сообщений: 59


2 VVA
Еще раз благодарю за лисп, народоваться и начертиться никак не могу =)
Seryj_Wolk вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание более длинных линий



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание нового типа линий Apelsinov AutoCAD 915 08.07.2022 12:36
Армирование монолитных колонн Assol Железобетонные конструкции 38 08.09.2016 19:10
Виснет компьютер при обработке длинных списков mmax Программирование 17 28.10.2010 12:17
Создание типа линий для обозначения кабелей связи Geon AutoCAD 1 04.11.2007 10:02