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

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

Можно ли вместо отрезков чертить сразу двумя паралельными линиями

Ответ
Поиск в этой теме
Непрочитано 01.05.2005, 17:06 #1
Можно ли вместо отрезков чертить сразу двумя паралельными линиями
bdfy
 
Регистрация: 30.04.2005
Сообщений: 141

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

PS: может у кого подобный чертежик завалялся? моя благодарность будет безмерной
[ATTACH]1114952804.gif[/ATTACH]

Последний раз редактировалось Солидворкер, 30.07.2009 в 08:56.
Просмотров: 44411
 
Непрочитано 01.05.2005, 21:52
#2
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Команда _mline позволяет чертить одновременно от 2 до 16 параллельных линий. Стили линий задаются в Format>Multiline Style. В вашем случае подойдет и изначально загруженный стиль Standard, придется только поменять мастаб линии.
{Smirnoff} вне форума  
 
Непрочитано 01.05.2005, 22:51
#3
Perezz!!

архитектор
 
Регистрация: 21.08.2003
Москва
Сообщений: 3,587


Цитата:
на чертеже присутствует множество стоек фиксированной ширины
Я бы показал Вам что такое "множество", но неохота возиться дома с чертежами
Perezz!! вне форума  
 
Непрочитано 01.05.2005, 23:19
#4
Neznayka


 
Регистрация: 24.03.2005
Сообщений: 320


А может все-таки[ b]Perezz!![/b] покажет народу :roll: .
А вот забор себе наколдовал с двух линий
Neznayka вне форума  
 
Непрочитано 02.05.2005, 00:53
#5
наблюдатель


 
Регистрация: 22.01.2005
Сообщений: 20


Рисуй одной линией затем командой Offset добавишь ей параллельную. Для такого несложного (для автокада) и единичного рисунка это самый простой и быстрый способ
наблюдатель вне форума  
 
Автор темы   Непрочитано 02.05.2005, 01:55
#6
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Я ж прикрепил только набросок Учитывая что с автокадом я знаком неделю ,для меня нехилая задачка. Впрочем уже подсказали : _mline потом "взорвать".
bdfy вне форума  
 
Автор темы   Непрочитано 03.05.2005, 22:06
#7
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Такой вопрос : создал я себе мультилинию кастомную из четырех линий. Почти вырисовал чертеж, потом понял что торцы забыл сделать ? Можно как нибудь изменить формат всех уже проведенных мультилиний(я их не взрывал) чтобы получить везде прямоугольные торцы?
bdfy вне форума  
 
Непрочитано 04.05.2005, 06:50
#8
виталич

конструктор
 
Регистрация: 04.09.2003
Новосибирск
Сообщений: 476


Цитата:
Сообщение от bdfy
Такой вопрос : создал я себе мультилинию кастомную из четырех линий. Почти вырисовал чертеж, потом понял что торцы забыл сделать ? Можно как нибудь изменить формат всех уже проведенных мультилиний(я их не взрывал) чтобы получить везде прямоугольные торцы?
А они бывают у мультилинии?
Кстати вопрос (интересный) что делает АКАД с мультилинией, когда делаешей ей closed? Кто-нибудь знает?
__________________
Не бывает так, чтобы не было никак. Как-нибудь да будет.
виталич вне форума  
 
Непрочитано 04.05.2005, 10:59
#9
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,917
<phrase 1=


Цитата:
Сообщение от виталич
А они бывают у мультилинии?
Кстати вопрос (интересный) что делает АКАД с мультилинией, когда делаешей ей closed? Кто-нибудь знает?
Есть, конешно :!:
В том-же самом Format>Multiline Style и есть.
А клозетом просто закрывает, причем под углом.
zenon вне форума  
 
Автор темы   Непрочитано 04.05.2005, 11:43
#10
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Format>Multiline Style
только вот после построения мультилний заданного формата ничего в этом диалоге уже не изменишь что делать ?
bdfy вне форума  
 
Непрочитано 04.05.2005, 12:20
#11
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Цитата:
только вот после построения мультилний заданного формата ничего в этом диалоге уже не изменишь Sad что делать ?
Думаю самый для тебя простой способ - создать другой стиль мультилиниии с "заглушенными" концами, а потом обвести свой чертеж поверху другим цветом в другом слое. Старый слой уничтожить.
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 04.05.2005, 13:55
#12
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Fantomas
да , пожалуй вы правы. я так и сделал. Только вот старый слой что-то не хочет удаляться все обьекты я с него снес, он не текущий, ссылок и пр не делал... Как его снести принудительно ? или просто стоит поискать этому слою другое применение ? ( размеры там в нем нанести и тп )
bdfy вне форума  
 
Автор темы   Непрочитано 04.05.2005, 14:12
#13
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Вот такой еще вопрос: чтобы показать пересечение мультилиний можно использовать команду _mledit . Вот только я подходящей для себя опции не нахожу. Нужно показать скрытый участок мультилинии штриховыми линиями , но такой фичи я не вижу. Есть закрытый крест, но он полностью скрывает нижний участок Может можно что-нибудь придумать ( полагаю не я первый с подобной задачей сталкиваюсь ) ?
Еще хотелось бы иметь возможность аналогично "закрывать" часть мультилинии и полилинией.
bdfy вне форума  
 
Автор темы   Непрочитано 06.05.2005, 01:45
#14
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Раз стандартной фичи все равно нет придеться извратиться.
Чертеж выполнен мультилиниями (внешн. линии сплошные, по центру осевая, с карю еще одна невидимая) как бы это все вшнешние границы преобразовать в полилинии , чтобы потом иметь возможность их выдавить?
т.е нужен лисп, который после того как я взорву все мультилинии найдет все замкнутые контуры из сплошных лнний и преобразует их в полилинии , области - в общем, чтобы можно было выдавить.
bdfy вне форума  
 
Автор темы   Непрочитано 06.05.2005, 01:46
#15
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Раз стандартной фичи все равно нет придеться извратиться.
Чертеж выполнен мультилиниями (внешн. линии сплошные, по центру осевая, с карю еще одна невидимая) как бы это все вшнешние границы преобразовать в полилинии , чтобы потом иметь возможность их выдавить?
т.е нужен лисп, который после того как я взорву все мультилинии найдет все замкнутые контуры из сплошных лнний и преобразует их в полилинии , области - в общем, чтобы можно было выдавить. потом в 3д порядок следования примитивов я уже как нить задам...
bdfy вне форума  
 
Непрочитано 06.05.2005, 03:44
#16
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Вы хочите фичей? Их есть у меня! Кидайте емелю - отошлю.
Лентяй вне форума  
 
Автор темы   Непрочитано 06.05.2005, 13:07
#17
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


bdfy11[at]yandex.ru
очень жду...
bdfy вне форума  
 
Непрочитано 07.05.2005, 09:47
#18
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Из фичей в наличии есть сопрягалово заданным радиусом. Пересечка пунктиром - требует немногой возни. Так что просьба потерпеть до завтра.
Лентяй вне форума  
 
Автор темы   Непрочитано 07.05.2005, 11:38
#19
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


ОК. На всякий вот чертеж что я мучаю
http://redhammer.h14.ru/opora35.rar

BTW, компас подобных фич не имеет , никто не знает? Нарыл тут диск поставить правда пока не могу
bdfy вне форума  
 
Непрочитано 08.05.2005, 11:07
#20
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Уфф, наконец наваял. Держите сопрягалку и пересекалку. Ежели проблемы - спрашивайте.
Ограничения в пересекалке: Невидимая часть балки изображена ОТДЕЛЬНЫМИ ОТРЕЗКАМИ типА "Hidden2" на том же слое и тем же цветом. В принуипе. их можно тоже сделать мультилиниями, но возиться - лень. Да вроде это и не требуется.
Лентяй вне форума  
 
Автор темы   Непрочитано 08.05.2005, 13:51
#21
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


вот незадача - автокад то у меня русский по тому и не работает видимо просит первую линию выбрать , кликаешь и вce Какие команды может поменять можно на аналоги из локализации ?
Надеюсь вы не возражаете , запостчу лисп сюда может кто подскажет как под 2004рус подогнать.
Код:
[Выделить все]
;;Inttr.lsp ©2001 Alexey Sheinkman
;;Single line trimming at intersection point
;;
;
(defun *error* (msg)
  (if (= msg "Function cancelled") (princ msg)(princ));if
  (setvar "OSMODE" sn) (setvar "CMDECHO" cm) (redraw ln 4)   
);*error*
;
(defun C:MlinInt ( / m off pt1 pt2 bl ln)
 (setvar "CMDECHO" 0)
 (setq 	cm (getvar "CMDECHO")
	sn (getvar "OSMODE")
	ln (car (entsel "\nSelect line above: "))
	adoc (vla-get-activedocument (vlax-get-acad-object))
	lts (vla-get-LineTypes adoc)
	mlstd (vla-item (vla-get-Dictionaries adoc) "ACAD_MLINESTYLE")
	csp (vlax-invoke adoc "ObjectIDtoObject" (vla-get-ownerID ln0))
 );setq
 (redraw ln 3)
 (terpri)
 (prompt "\nSelect line(s) below: ")
 (setq ssln (ssget))
 (setq m (1- (sslength ssln)))
 (princ (strcat "\nSelected " (itoa (sslength ssln)) " lines"))
 (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-item (list lts "Hidden2")))
    (vla-load lts "Hidden2" "acad.lin"))
 (while (<= 0 m)
   (setq ln1 (ssname ssln m))
   (command "-mledit" "cc" ln1 ln "")
   (setq ln0 (vlax-ename->vla-object ln1))
   (vlax-for rec mlstd (setq mlst (entget (vlax-vla-object->ename rec)))
     (if (= (cdr (assoc 2 mlst)) (vla-get-StyleName ln0))
       (foreach n mlst (cond ((= (car n) 49) (setq ofs (cons (cdr n) ofs)))
			     ((= (car n) 70) (setq jst (cdr n)))))))
   (setq off (- (car ofs) (last ofs))
	 cc (vlax-get ln0 'coordinates)
	 pt1 (list (car cc) (cadr cc) (nth 2 cc))
	 pt2 (list (nth 3 cc) (nth 4 cc) (nth 5 cc))
	 bl (vla-addLine csp (vlax-3d-point pt1) (vlax-3d-point pt2)));setq
   (vla-put-linetype bl "Hidden2")
   (command "TRIM" ln "" (vlax-vla-object->ename bl) pt1 pt2 "")
   (setq sp (vlax-get bl 'StartPoint) ep (vlax-get bl 'EndPoint))
   (if (= jst 1) (mapcar (lambda (x) vla-offset bl (* off x)) '(0.5 -0.5))
     (vla-offset bl (* off (cond ((= jst 0) 1) ((= jst 2) -1)))));if
   (setq m (1- m))
  );while
  (redraw ln 4)
  (setvar "OSMODE" sn)
  (setvar "CMDECHO" cm)
  (princ)
);end
bdfy вне форума  
 
Автор темы   Непрочитано 09.05.2005, 21:48
#22
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


все еще актуально...
bdfy вне форума  
 
Непрочитано 09.05.2005, 22:05
#23
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Странно (command "-mledit" "_cc" ln1 ln "") убивает мой AutoCAD 2005. Причем даже в "ручном" режиме - закрытие без объяснений. А вообще до этого исполнение программы даже не доходит. Неговоря о типичном отсутствии _. и _ для локализованных версий, отсутствии там типа линии Hidden2 есть другие ошибки. К примеру программа пытается получить "владельца объекта" csp (vlax-invoke adoc "ObjectIDtoObject" (vla-get-ownerID ln0)) когда переменной ln0 еще в помине нет. И еще пару штук нашел пока добраляся до убийственной строчки. Пусть автор исправляет.

Ну ты и Лентяй!!! Поленился проверить работоспособность! Хотя возможно она у тебя и работает при проверке. ln0- глобальная и остается с прошлого запуска. А у меня почему то AutoCAD закрывается без предупреждения на указанном COMMAND при работе программы и через FATAL ERROR при "ручном" прогоне той же команды...
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 09.05.2005, 23:34
#24
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


обидно, товарищи... что мне самому лисп садиться изучать ? я конечно с удовольствием, но не хватит уже времени
bdfy вне форума  
 
Непрочитано 10.05.2005, 00:41
#25
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от bdfy
обидно, товарищи... что мне самому лисп садиться изучать ? я конечно с удовольствием, но не хватит уже времени
За это время уже вручную можно было сделать!!!
А по существу, я проанализировал программу, нашел те же ошибки, которые отметил уважаемый Fantomas и даже подправил их. Но в логике программы есть ошибки, которые я так и не понял...
Код:
[Выделить все]
;;Inttr.lsp c2001 Alexey Sheinkman 
;;Multyline trimming at intersection point 
;; 
          ; 
(defun *error* (msg)
  (if (= msg "Function cancelled")
    (princ msg)
    (princ)
  )         ;if 
  (setvar "OSMODE" sn)
  (setvar "CMDECHO" cm)
  (redraw ln 4)
)         ;*error* 
          ; 
(defun C:MlineInt (/ m off pt1 pt2 bl ln)
  (vl-load-com)
  (setvar "CMDECHO" 0)
  (setq cm    (getvar "CMDECHO")
        sn    (getvar "OSMODE")
        ln    (car (entsel "\nSelect line above: "))
        adoc  (vla-get-activedocument (vlax-get-acad-object))
        lts   (vla-get-LineTypes adoc)
        mlstd (vla-item (vla-get-Dictionaries adoc) "ACAD_MLINESTYLE")
        ln0   (vlax-ename->vla-object ln)
        csp   (vlax-invoke adoc "ObjectIDtoObject" (vla-get-ownerID ln0))
  )         ;setq 
  (redraw ln 3)
  (terpri)
  (prompt "\nSelect line(s) below: ")
  (setq ssln (ssget))
  (setq m (1- (sslength ssln)))
  (princ (strcat "\nSelected " (itoa (sslength ssln)) " lines"))
  (if (vl-catch-all-error-p
  (vl-catch-all-apply 'vla-item (list lts "невидимая2"))
      )
    (vla-load lts "невидимая2" "acad.lin")
  )
  (while (<= 0 m)
    (setq ln1 (ssname ssln m))
    (command "_-mledit" "_cc" ln1 ln "")
    (setq ln0 (vlax-ename->vla-object ln1))
    (vlax-for rec mlstd
      (setq mlst (entget (vlax-vla-object->ename rec)))
      (if (= (cdr (assoc 2 mlst)) (vla-get-StyleName ln0))
       (foreach n mlst
         (cond
           ((= (car n) 49) (setq ofs (cons (cdr n) ofs)))
           ((= (car n) 70) (setq jst (cdr n)))
         )
       )
      )
    )
    (setq off (- (car ofs) (last ofs))
      cc  (vlax-get ln0 'coordinates)
      pt1 (list (car cc) (cadr cc) (nth 2 cc))
      pt2 (list (nth 3 cc) (nth 4 cc) (nth 5 cc))
      bl  (vla-addLine csp (vlax-3d-point pt1) (vlax-3d-point pt2))
    )         ;setq 
    (vla-put-linetype bl "невидимая2")
    (command "_TRIM" ln "" (vlax-vla-object->ename bl) pt1 pt2 "")
    (setq sp (vlax-get bl 'StartPoint)
          ep (vlax-get bl 'EndPoint)
    )
    (if (= jst 1)
      (mapcar (lambda (x) vla-offset bl (* off x)) '(0.5 -0.5))
      (vla-offset
         bl
         (* off
            (cond ((= jst 0) 1)
            ((= jst 2) -1)
            )
         )
      )
    )         ;if 
    (setq m (1- m))
  )         ;while 
  (redraw ln 4)
  (setvar "OSMODE" sn)
  (setvar "CMDECHO" cm)
  (princ)
)         ;end
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 10.05.2005, 01:10
#26
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Александр Ривилис
в таком виде лисп уже что-то делает ... только непонятно что и уж точно не то что надо...
Цитата:
За это время уже вручную можно было сделать!!!
Люди должны думать машины - работать (c)
Лучше полчаса потерять потом за пять минут долететь (c)
мысль ясна ?
Не могу я тупую механическую работу делать - я скорее еще пару дней потрачу на то чтобы ее в 3д изобразить.
BTW, неужели таки нет способа выдавить мультилинии ? в полилинии преобразовать перед этим ? это бы решило все проблемы.
bdfy вне форума  
 
Непрочитано 10.05.2005, 01:20
#27
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от bdfy
Люди должны думать машины - работать (c)
Лучше полчаса потерять потом за пять минут долететь (c)
мысль ясна ?
Не могу я тупую механическую работу делать - я скорее еще пару дней потрачу на то чтобы ее в 3д изобразить.
Мысль очень понятна. Одно не понятно - почему за тебя думать должны другие :?:
Цитата:
Сообщение от bdfy
BTW, неужели таки нет способа выдавить мультилинии ? в полилинии преобразовать перед этим ? это бы решило все проблемы.
Однозначно НЕТ. :!:
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 10.05.2005, 01:33
#28
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Цитата:
Одно не понятно - почему за тебя думать должны другие
вот не надо , я репу чешу как могу , только вот с автокадом я дай бог чтоб недели две знаком , так что многого у меня самостийно не получится
Ничего подобного на Мсэшную запись макроса в автокаде пока нет , следовательно с наскоку ничего не напишешь , вот я и обращаюсь за помощью.
Цитата:
Однозначно НЕТ
пессимист... Вот почему я могу руками взорвать мультилинию ,потом сделать область из ее крайних линий ( сплошные ) и выдавить , а вот скриптом тоже самое для всех мультилиний на чертеже почему то слабо ? Может все таки попытаетесь ради хотя бы спортивного интереса ?
bdfy вне форума  
 
Непрочитано 10.05.2005, 10:14
#29
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


bdfy: в таком виде лисп уже что-то делает ... только непонятно что и уж точно не то что надо...

:? Так эта, пересекалка тоись, она того... пересекает ежели млиния млинию где-нить посеред - тады да, а ежели, того, с краю, тады ой. А на опоре вышей ваще млинии все какие та замкнтые и отрезками эта, секутся тоись. Во она и того. не хвурыкаеть.
Лентяй вне форума  
 
Автор темы   Непрочитано 10.05.2005, 13:29
#30
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Лентяй
грустно...
Значит надо гнуть идею с выдавливанием. У кого нибудь есть идеи как обьеденить с области все четырехугольники ( они из сплошных отрезков получаются после взрыва )?

PS BTW , а что умеет библиотека метеллоконструкций компаса ? никто не пользовался ?
bdfy вне форума  
 
Автор темы   Непрочитано 13.05.2005, 19:28
#31
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Стоп, так все проще чем я думал... Взрываю чертеж , потом применяю _region ко всему чертежу ( эта команда находит и обьеденият в области все что мне нужно ) птом выдавливаю все получившиеся четырехугольники. Получаю как раз нужное мне псевдо 3д за пару кликов
в одном не могу разобраться - как изменить порядок следования 3д обьектов ? т.е опустить нужные на уровень ниже\выше ? Команды порядок и тп, что на панелях редактированя можно найти , что-то не видно чтобы давали какой то эффект.
Если не понятно о чем я , пример здесь
http://redhammer.h14.ru/testcad.rar
Как опустить одну из балок ниже остальных ( по оси Z) ?Только move?
так может лиспик дадите перемещающий выбранный обьетк на заданное в лиспе растояние по оси Z?
bdfy вне форума  
 
Автор темы   Непрочитано 15.05.2005, 00:12
#32
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


накропайте пожалуйста лиспик перемещающий выделенный обьект по оси Z на заданное растояние... я же замучаюсь _move, ткнуть , потом @0,0,50 ... я ведь почти добил этот курсач.
bdfy вне форума  
 
Непрочитано 15.05.2005, 07:47
#33
Torino


 
Регистрация: 21.08.2003
Штаб
Сообщений: 943
<phrase 1=


Повесь на кнопку такой макрос
Код:
[Выделить все]
^C^C^P(setq *ss (ssget))(vl-cmdf "_.move" "_p" "" "0,0,0" "@0,0,50")(setq *ss nil)(princ);
На LT работать не будет.
Torino вне форума  
 
Автор темы   Непрочитано 15.05.2005, 14:49
#34
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


спасибо, что такое LT я даже не знаю, так что неудобства мне похоже не грозит
Я вот не пойму - почему штриховыми невидимые части так и не отображаются ( после _OBSCUREDLTYPE 2)?
Нарисовал куб для теста : все равно все невидимые сплошными ? что еще натиснуть надо чтобы скрытые линии отображались как я хочу?
bdfy вне форума  
 
Непрочитано 15.05.2005, 15:10
#35
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


_HIDE не забыл сделать? Они же сами по себе не будут скрываться.
Кстати, а чем ты куб рисовал?
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 15.05.2005, 15:32
#36
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


забыл конечно... спасибо.
работает, только почему так тормозит после этого ? после регенерации не рабоате ни зум, ни пан , только 3д орбитой можно это сбросить.
Что-то в хелпе про такие "приколы" ни слова... Это так должно быть ( т.е _hide нужно делать перед самой печатью и динамический автокад выполнять данную операцию не умеет ) или у меня что-то настроено не так ?
аппартное ускорение через wopengl8.hdi включено.
а рисовал я скорее паралелипипед ( просто я такие слова не выпечатываю ) рисование - 3м поверхности.
bdfy вне форума  
 
Автор темы   Непрочитано 15.05.2005, 16:33
#37
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


а как все таки лисп сделать для перемещения обькта ? удобней все таки пользоваться будет.
Пробовал вот так - ничего не работает
Цитата:
(defun C:up (*ss)
(vl-load-com)
(setq *ss (ssget))
(command "_.move" "_p" "" "0,0,0" "@0,0,50""")
(setq *ss nil)
(princ (strcat "\nПередвинули ")
) ;_ end of defun
bdfy вне форума  
 
Непрочитано 15.05.2005, 16:48
#38
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Код:
[Выделить все]
(defun C:UP ( / ss) 
 (setq ss (ssget)) 
 (command "_.move" ss "" '(0 0 0) '(0 0 50)) 
 (princ "\nПередвинули ") (princ) 
)
Александр Ривилис вне форума  
 
Непрочитано 15.05.2005, 16:51
#39
Torino


 
Регистрация: 21.08.2003
Штаб
Сообщений: 943
<phrase 1=


...повтор...
Torino вне форума  
 
Непрочитано 15.05.2005, 17:03
#40
Огурец

Profan
 
Регистрация: 27.04.2005
Москва
Сообщений: 6,761
Отправить сообщение для Огурец с помощью Skype™


Уважаемый bdfy!
Если у Вас вдруг престали работать PAN и ZOOM то может Вы просто перешли где-то в перспективные проекции? Для них характерно, что работает только 3D ORBIT (без сахара), и только нем же в меню правой кнопки Projection=>Parallel опцию Perspective можно покинуть.
Огурец вне форума  
 
Автор темы   Непрочитано 15.05.2005, 18:21
#41
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Огурец
нет, проверил - паралельная проекция стоит... пан и зум обрубаются аккурат после команды _hide (_.hide тоже пробовал ) и работать начинают только если вкл. 3д орбиту и чуть крутануть.
Еще идеи ?

Александр Ривилис
спасибо, надо мне хоть синтаксис лиспов выучить...
bdfy вне форума  
 
Непрочитано 15.05.2005, 18:31
#42
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от bdfy
пан и зум обрубаются аккурат после команды _hide (_.hide тоже пробовал ) и работать начинают только если вкл. 3д орбиту и чуть крутануть.
Еще идеи ?
Так и должно быть - realtime команды _ZOOM/_PAN работать не должны (только обычные _ZOOM/_PAN с регенерацией). Работать начинает не после 3DORBIT, а после регенерации. Проще вызвать _REGEN или _REGENALL.
Цитата:
Сообщение от bdfy
Александр Ривилис
спасибо, надо мне хоть синтаксис лиспов выучить...
Да уж не мешало бы...
Александр Ривилис вне форума  
 
Непрочитано 15.05.2005, 20:15
#43
Огурец

Profan
 
Регистрация: 27.04.2005
Москва
Сообщений: 6,761
Отправить сообщение для Огурец с помощью Skype™


Уважаемые коллеги!
Обьясните, почему у меня все работает ( в смысле pan @zoom realtime without regeneration in hide mode). AutoCAD 2004. И всегда всё работало. Может быть речь о чём-то другом идёт? Прикреплю на всякий случай, на чем сейчас пробовал.
[ATTACH]1116173751.dwg[/ATTACH]
Огурец вне форума  
 
Автор темы   Непрочитано 15.05.2005, 20:52
#44
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Огурец
ваш пример и у меня работает отлично.
а вот на прикрепленном уже никакого пана\зума до регена.
В чем разница действительно может кто обьяснить ?
[ATTACH]1116175953.dwg[/ATTACH]
bdfy вне форума  
 
Непрочитано 15.05.2005, 20:56
#45
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Огурец
Уважаемые коллеги!
Обьясните, почему у меня все работает ( в смысле pan @zoom realtime without regeneration in hide mode).
Речь шла о ситуации с SHADEMODE -> 2D wireframe. После команды _HIDE требуется регенерация. В случае с SHADEMODE -> Hidden все работает нормально. Собственно говоря не требуется команда _HIDE.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 15.05.2005, 21:15
#46
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Точно , выполнил _SHADEMODE -> Скрытие - заработал динамический пан\зум при отображении скрытых линий пунктиром. Только подтормаживает ...
В чем дело в моем примере всего то пара областей , а чертеж "лагает" после SHADEMODE -> Hidden, в то время как в примере Огурца фигуры достаточно шустро крутятся...
bdfy вне форума  
 
Непрочитано 15.05.2005, 21:17
#47
Огурец

Profan
 
Регистрация: 27.04.2005
Москва
Сообщений: 6,761
Отправить сообщение для Огурец с помощью Skype™


Уважаемый bdfy!
Ваш у меня тоже работает, но со странностями. Анизотропные у вас поверхности... Да и зачем Вы виртуальный принтер из Acrobat Distiller`а включили? Это уже к script`ам близко. Вроде не похоже, что рисунок к публикации готовится... Буду разбираться. Сам в таких ситуациях предпочитаю начать всё сначала.
Старый анекдот: спрашивают двоечника: В чём причина Полярных сияний? - Знал, да забыл. - Вспомни, безумец! Ты единственный, кто знал!
Был случай, описаный на форуме: у кого-то деталь при экструзии вывернулась винтом, сочли за глюк и забыли. А у меня так и осталось ощущение, что сейчас догадаюсь, как винтовые линии в акаде чертить - достаточно одного исключения, чтобы невозможность стала мнимой.
Огурец вне форума  
 
Автор темы   Непрочитано 15.05.2005, 22:08
#48
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Цитата:
Да и зачем Вы виртуальный принтер из Acrobat Distiller`а включили?
Как зачем ? других то не имею кое -что уже в пдф распечатывал ( эскизы в А4 - никто с автокадом из-за такой мелочи маятся не будет ) и готовый возможно тоже в пдф заверну ( мало ли шрифтов на месте не будет, версия када не та )
Цитата:
Анизотропные
это откуда там неоднородность ? как получены : мультилиния - взорвать - _region

Так откуда тормоза при SHADEMODE -> Hidden может кто сказать ? это при двух то линиях , что будет на основном чертеже где их пара сотен ?
bdfy вне форума  
 
Непрочитано 15.05.2005, 22:21
#49
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от bdfy
Так откуда тормоза при SHADEMODE -> Hidden может кто сказать ? это при двух то линиях , что будет на основном чертеже где их пара сотен ?
Тормоза - потому-что идет динамичесой пересчет для скрытия объектов.
P.S. У меня тормозов нет. Очень шустренько двигается...
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 15.05.2005, 22:36
#50
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Нашел, аппаратное ускорение скажем так не совсем ускоряло.. поставил програмное все уладилось. Но это же ненормально ?
Может еще тесты провести какая видеокарта реально быстрее в автокаде ?

Цитата:
Тормоза - потому-что идет динамичесой пересчет для скрытия объектов.
ага, халва вторая бегает, а перекрытие пары линий посчитать система не тянет ?

Еще вопрос : штрих-пунктирные осевые линии при скытии автокадом превращаются в простые штриховые - этого избежать можно ? осевые то и африке осевые...
bdfy вне форума  
 
Непрочитано 16.05.2005, 05:51
#51
Fogel

люблю мастерить
 
Регистрация: 21.01.2005
Челябинск
Сообщений: 10,332


А может не извращаться с выдавливанием и воспользоваться WIPEOUT (маскировка)? И по мне, так быстрее повыстригать ненужные куски...
Fogel вне форума  
 
Автор темы   Непрочитано 17.05.2005, 04:54
#52
bdfy


 
Регистрация: 30.04.2005
Сообщений: 141


Цитата:
А может не извращаться с выдавливанием
выдавливание и не понадобилось - области куда эффективней просто перемещать.

Нарисовалось тут пару проблем...
shademode - его ведь на каждой машине надо выставлять ? по крайней мере переменной такой я не нашел ...

Вывел на печать в пдф заметил еще проблемку - Автокад скрывая толстые линии делает их вес ни изменяет, т.е рисует толстую невидимую, но ведь нет таких по ГОСТу АФАИК ! Как бороться ?
bdfy вне форума  
 
Непрочитано 05.05.2009, 11:18
#53
Irihka


 
Регистрация: 05.05.2009
Тольятти
Сообщений: 1
<phrase 1=


У меня в AutoCAD LT 2009 мультилиния рисует только одной линией, а мне надо 2-я с определенным растоянием. Подскажите пожалуйста, где можно поменять?
Irihka вне форума  
 
Непрочитано 05.05.2009, 11:41
#54
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,917
<phrase 1=


Цитата:
Сообщение от Irihka Посмотреть сообщение
У меня в AutoCAD LT 2009 мультилиния рисует только одной линией, а мне надо 2-я с определенным растоянием. Подскажите пожалуйста, где можно поменять?
_mlstyle
и как надо что надо и сколько надо!!!!!!!!!!
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 06.05.2009, 15:43
#55
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


Offtop: молодец,Irihka, первое сообщение, и не полезла создавать новую тему, а раскопала такую древнюю ! Последнему сообщению 4 года!!
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 27.07.2009, 22:17
#56
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Я уже давно хочу перейти к использованию мультилиний, да нехватка средств нормальной работы с мультилиниями не позволяет. Я себе это вижу в виде небольшой палетки с кнопками: разрезать мультилинию на две, сшить (а не создать вид сшитости!), заменить мультилинии на другие, заменить на полилинию, создать выборку мультилиний по списку их названий, регенерировать мультилинии, взорвать с сохранением заливки. Сейчас все это либо вообще невозможно, либо делается долго==неудобно.
Не подскажете, как бы это реализовать?
АлексЮстасу вне форума  
 
Непрочитано 29.07.2009, 10:31
#57
VVA

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


1. Набери _mledit и посмотри, все ли устраивает.
2. Можно чертить от 2 до 16 полилиниями. LISP. Одновременное вычерчивание 2 - 16 полилиний. Удобно для вычерчивания кабелей
3. Еще проштудируй
Как узнать длину мультилинии?
Список площадей выделенных полилиний в тектовое окно (файл)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 30.07.2009, 03:09
#58
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
Я с мультилиниями работаю примерно год. Они для меня почти незаменимы. В том числе и возможность заливки их площади цветом.

mledit дает определенные отличные возможности, но "сшивание" и "разрезание" его средствами есть только создание видимости. Настоящего сшивания в одну мультилинию и разрезания на две ведь не происходит.

Я перечислил в своем исходном посте (#56) действия, которые mledit не обеспечивает, но без которых использование мультилиний весьма неудобно.

Лисп замены мультилиний на др. мультилинии (ML1) я скачал на этом (?) форуме год назад. Замена мультилинии на полилинию есть в TOOL PACK.
Взрывание мультилиний с сохранением Hatch (заливок цветом) и собиранием всех отрезков в полилинии пишут наши "умельцы". Но, когда допишут, я, похоже, уже выйду на пенсию.

п. 3 проштудировал, возможно пригодится - пока работаю без статистики. Но поражаюсь объему и скорости работы.

Уверен, если 2-3-n линий на нужных расстояниях, нужного стиля каждая, с заливкой цветом и т.п. будет можно не только рисовать, но и редактировать , и будет также как обычные полилиние просто их нормально выбирать, заменять, взрывать и т.п., то мультилинии станут так же востребованы, как и обычные полилинии. А во многих случаях - просто незаменимы. Производительность при этом повысится в эти самые "n" раз. А на самом деле (ведь еще и заливки, вымеренные расстояния и пр.) - в "m" раз

Если же взрывалку мультилиний сделать интеллектуевой - чтобы для каждой линии можно было бы задавать еще и нужные толщины, линиям и заливке цветом задавать нужные слои, а "пустым" мультилиниям при желании задавать маски (Wipeout), то вообще было бы круто. Не будет проблем ни в исправлении топологической чистоты чертежей, ни при конвертациях в другие форматы.

Последний раз редактировалось АлексЮстасу, 30.07.2009 в 22:03.
АлексЮстасу вне форума  
 
Непрочитано 31.07.2009, 19:22
1 | #59
VVA

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


Вот нашел еще такую штуку:
PL2ML - convert polylines (LWPOLYLINE) to multilines (MLINE) - LISP/VLX
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 31.07.2009, 23:06
#60
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
Вот нашел еще такую штуку:
PL2ML - convert polylines (LWPOLYLINE) to multilines (MLINE) - LISP/VLX
Мерси большое за стремление помочь
Проверил - работает! Она еще и отрезки (Line) в мультилинии преобразует.
Кстати, ML1-замену стилей мультилиний я скачал с caduser, и это был Ваш лисп!
http://www.caduser.ru/forum/index.ph...#message184000

Он тоже нормально работает, и я его с удовольствием использую.

Общее пожелание (если хотите - их недостаток) к этим прогам - не хватает окна со списком всех доступных мультилиний.
Их работа идет только с активным стилем мультилиний, а гораздо удобнее выбрать из списка. Когда приходится работать быстро, то раздражает необходимость активизировать нужную, да и слишком много при этом действий. И все время забываешь это сделать.

Только что увидел там же Ваш же лисп выбора мультилиний из списка (SELML)!
Именно то, что нужно - есть окно выбора из списка стилей мультилиний!!
До сих пор приходилось выбирать мультилинии в Quick Select по стилю, что мучительно - нужно руками вбивать название (сначала запомнив-записав на бумажку).

Было бы в ML1 и в PL2ML окошко со списком стилей мультилиний и (совсем хорошо бы) c их описаниями (Description) - было бы гораздо удобнее. Описания на человеческом языке оч. желательны, т.к. названия стилей мультилиний сокращенные-зашифрованные.

Последний раз редактировалось АлексЮстасу, 31.07.2009 в 23:41.
АлексЮстасу вне форума  
 
Непрочитано 03.08.2009, 20:27
#61
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Не подскажете, насколько еще сложно написать оч. похожий на SELML (выбор стилей мультилиний) лисп для задания активного стиля мультилиний?

Тогда было бы гораздо удобнее делать стиль текущим - прямо из макроса замены мультилиний или макроса замены полилиний на мультилинии и т.п. Да и просто удобнее чертить мультилиниями.

И также общий к лиспам вопрос: можно ли выводить сообщения об итогах работы? Обычные отчетные сообщения в текстовом окне вроде: найдено столько-то, такие-то, заменено столько-то, не найдено ничего и т.п.?

Последний раз редактировалось АлексЮстасу, 03.08.2009 в 21:36.
АлексЮстасу вне форума  
 
Непрочитано 04.08.2009, 10:03
#62
VVA

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


АлексЮстасу, Нисколько не сложно.
Код:
[Выделить все]
(defun SETML (/ ml_st dict)
;;; Из диалогового  окна выбираем стиль МЛИНИИ
;;; И устанавливаем его текущим
;;; http://forum.dwg.ru/showthread.php?t=3127&page=3  
  (defun mydcl (zagl info-list / fl ret dcl_id)
    (vl-load-com)
    (if (null zagl)
      (setq zagl "Выбор")
    ) ;_ end of if
    (setq fl (vl-filename-mktemp "mip" nil ".dcl"))
    (setq ret (open fl "w"))
    (mapcar
      '(lambda (x) (write-line x ret))
      (list "mip_msg : dialog { "
            (strcat "label=\"" zagl "\";")
            " :list_box {"
            "alignment=top ;"
            "width=51 ;"
            (if (> (length info-list) 26)
              "height= 26 ;"
              (strcat "height= " (itoa (+ 3 (length info-list))) ";")
            ) ;_ end of if
            "is_tab_stop = false ;"
            "key = \"info\";}"
            "ok_cancel;}"
      ) ;_ end of list
    ) ;_ end of mapcar
    (setq ret (close ret))
    (if (setq dcl_id (load_dialog fl))
      (if (new_dialog "mip_msg" dcl_id)
        (progn
          (start_list "info")
          (mapcar 'add_list info-list)
          (end_list)
          (set_tile "info" "0")
          (setq ret (car info-list))
          (action_tile
            "info"
            "(setq ret (nth (atoi $value) info-list))"
          ) ;_ end of action_tile
          (action_tile
            "cancel"
            "(progn(setq ret nil)(done_dialog 0))"
          ) ;_ end of action_tile
          (action_tile "accept" "(done_dialog 1)")
          (start_dialog)
        ) ;_ end of progn
      ) ;_ end of if
    ) ;_ end of if
    (unload_dialog dcl_id)
    ret
  ) ;_ end of defun
  (vl-load-com)
  (if (and
        (setq
          dict (mapcar 'cdr
                       (vl-remove-if-not
                         '(lambda (x) (= 3 (car x)))
                         (dictsearch (namedobjdict) "ACAD_MLINESTYLE")
                       ) ;_ end of vl-remove-if-not
               ) ;_ end of mapcar
        ) ;_ end of setq
        (setq ml_st (mydcl "Выбор стиля мультилинии" dict))
      ) ;_ end of and
    (setvar "CMLSTYLE" ml_st)
  ) ;_ end of if
  (princ)
) ;_ end of defun
(defun C:SETML ()(SETML))
Там команда и функция. Можно вызывать как (C:SETML) так и (setml)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 04.08.2009, 13:41
#63
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
АлексЮстасу, Нисколько не сложно.
А еще в детстве меня обманывали - говорили, что волшебников не существует

Существует возможность добавить в эти окна выбора стилей мультилиний еще и их описания (Description)? Чтобы можно было выбирать не только по шифрованным названиям, но и по человекоподобным описаниям.

Последний раз редактировалось АлексЮстасу, 04.08.2009 в 18:05.
АлексЮстасу вне форума  
 
Непрочитано 05.08.2009, 22:36
#64
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
Вот нашел еще такую штуку:
PL2ML - convert polylines (LWPOLYLINE) to multilines (MLINE) - LISP/VLX
Кстати, в этой замене полилиний на мультилинии не хватает выбора вариантов: удалять исходные полилинии или сохранять их. (Как в ML1). Очень полезный вариант. В той же ML1 он позволяет создавать на одной мультилинии дубликат в виде другой - когда нужно, чтобы оси двух разных мультилиний совпадали.
АлексЮстасу вне форума  
 
Непрочитано 06.08.2009, 10:28
1 | #65
VVA

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


Вариант с Description
Код:
[Выделить все]
(defun SETML (/ ml_st dict opis)
;;; Из диалогового  окна выбираем стиль МЛИНИИ
;;; И устанавливаем его текущим
;;; http://forum.dwg.ru/showthread.php?t=3127&page=3
 (defun mydcl (zagl info-list / fl ret dcl_id)
    (if (null zagl)
      (setq zagl "Выбор")
    ) ;_ end of if
    (setq fl (vl-filename-mktemp "mip" nil ".dcl"))
    (setq ret (open fl "w"))
    (mapcar
      '(lambda (x) (write-line x ret))
      (list "mip_msg : dialog { "
            (strcat "label=\"" zagl "\";")
            " :list_box {"
            "alignment=top ;"
             "tabs=\"28\";"
            "width=51 ;"
            (if (> (length info-list) 26)
              "height= 26 ;"
              (strcat "height= " (itoa (+ 3 (length info-list))) ";")
            ) ;_ end of if
            "is_tab_stop = false ;"
            "key = \"info\";}"
            "ok_cancel;}"
      ) ;_ end of list
    ) ;_ end of mapcar
    (setq ret (close ret))
    (if (setq dcl_id (load_dialog fl))
      (if (new_dialog "mip_msg" dcl_id)
        (progn
          (start_list "info")
          (mapcar 'add_list info-list)
          (end_list)
          (set_tile "info" "0")
          (setq ret (car info-list))
          (action_tile
            "info"
            "(setq ret (nth (atoi $value) info-list))"
          ) ;_ end of action_tile
          (action_tile
            "cancel"
            "(progn(setq ret nil)(done_dialog 0))"
          ) ;_ end of action_tile
          (action_tile "accept" "(done_dialog 1)")
          (start_dialog)
        ) ;_ end of progn
      ) ;_ end of if
    ) ;_ end of if
    (unload_dialog dcl_id)
    ret
  ) ;_ end of defun
  (vl-load-com)
  (if (and
        (setq
          dict (mapcar 'cdr
                       (vl-remove-if-not
                         '(lambda (x) (= 3 (car x)))
                         (dictsearch (namedobjdict) "ACAD_MLINESTYLE")
                       ) ;_ end of vl-remove-if-not
               ) ;_ end of mapcar
        ) ;_ end of setq
        (setq
          opis (mapcar 'cdr
                       (vl-remove-if-not
                         '(lambda (x) (= 350 (car x)))
                         (dictsearch (namedobjdict) "ACAD_MLINESTYLE")
                       ) ;_ end of vl-remove-if-not
               ) ;_ end of mapcar
        )
        (setq opis (mapcar '(lambda(x)(cdr(assoc 3 (entget x)))) opis))
        (setq dict (mapcar '(lambda(x y)(strcat x "\t" y )) dict opis))
        (setq ml_st (mydcl "Выбор стиля мультилинии" dict))
      ) ;_ end of and
    (setvar "CMLSTYLE"
    (if (setq opis (VL-STRING-SEARCH "\t" ml_st))
        (substr ml_st 1 opis)
        ml_st
      )
     )
  ) ;_ end of if
  (princ)
) ;_ end of defun
(defun C:SETML ()(SETML))
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 06.08.2009 в 16:53.
VVA вне форума  
 
Непрочитано 06.08.2009, 13:57
#66
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
Вариант с Description
Работает! Описания (Description) подсказываются!
Меня сначала напугала толщина и размер букв, но, методом сравнительного тыка, убрав строку
"fixed_width_font=true;"
получил такие же тонкие буквы, как и в прежнем варианте.
Тонкие читаются лучше, а, главное, больше похожи на стили текстов в других, привычных окнах.
Надеюсь, при этом ничего не испортил?

А в старую SELML добавить описания (Description) возможно? Я попытался из последнего лиспа выделить нужный фрагмент, но SELML написана немного по-другому, и я не нашел аналогичных мест...

Последний раз редактировалось АлексЮстасу, 06.08.2009 в 17:04.
АлексЮстасу вне форума  
 
Непрочитано 06.08.2009, 17:21
#67
VVA

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


АлексЮстасу, Лучшее враг хорошего. Убрал "fixed_width_font=true;" из #65
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 06.08.2009, 21:58
#68
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
АлексЮстасу, Лучшее враг хорошего. Убрал "fixed_width_font=true;" из #65
Еще раз спасибо!
Я еще у себя сразу заменил название окна с "Выбор стиля мультилинии" на "Назначить активный стиль мультилинии" - так по-моему понятнее.
И расширил окно с помощью замены 51 на 71:
"width=71 ;"
Это чтобы описания почти полностью помещались в окно.

Для проектируемой панельки работы с мультилиниями сочинил три иконки для кнопок - прилагаю.

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

Осталось только научиться мультилинии разрезать, сшивать и взрывать - все с учетом сделанных декоративных разрывов и примыканий средствами _.mledit.
Взрывание - самое сложное, т.к. взрывать нужно так, чтобы сохранялись штриховки как отдельный элемент, а каждой составляющей можно было назначить нужный слой и толщину (цвет и стиль уже заданы). Последнее лучше сделать с помощью текстового файла-описания элементов - какими они должны быть после взрывания.
И еще - было бы замечательно иметь возможность после взрывания образовывать границу штриховки (она же контур площади мультилинии) и создавать маску (Wipeout) в площади мультилиний.
Вложения
Тип файла: rar иконки_для_мультилиний.rar (837 байт, 109 просмотров)
АлексЮстасу вне форума  
 
Непрочитано 12.08.2009, 14:19
#69
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
АлексЮстасу, Лучшее враг хорошего.
Еще возникла небольшая проблема - после макроса, назначающего активную мультилинию (SETML), выбирающего заменямый стиль (SELML) и самой замены (ML1) часто происходит потеря установок всех привязок.
Макрос:
^C^C_SETML SELML;ML1;Y;
При раздельном запуске каждой из этих прог потери назначенных привязок вроде бы не наблюдалось.
С чем это может быть связано?
АлексЮстасу вне форума  
 
Непрочитано 12.08.2009, 15:04
#70
VVA

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


АлексЮстасу,
Цитата:
При раздельном запуске каждой из этих прог потери назначенных привязок вроде бы не наблюдалось.
С чем это может быть связано?
В этом случае виноваты только звезды, магнитные бури и синоптики (последние виноваты всегда )
Могу предложить только запоминать привязку и восстанавливать ее снова.
Что-то типа такого (пишу без Автокада со всеми вытекающими )
Код:
[Выделить все]
^C^C(setq osm(getvar "OSMODE"));SETML;SELML;ML1;Y;(setvar "OSMODE" osm)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 12.08.2009, 16:55
#71
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
АлексЮстасу,
В этом случае виноваты только звезды, магнитные бури и синоптики (последние виноваты всегда )
Могу предложить только запоминать привязку и восстанавливать ее снова.
Что-то типа такого (пишу без Автокада со всеми вытекающими )
Код:
[Выделить все]
^C^C(setq osm(getvar "OSMODE"));SETML;SELML;ML1;Y;(setvar "OSMODE" osm)
Спасибо, сейчас попробую!
Т.е. эти потери настроек привязки не лечатся? В целом спонтанны?
У меня было подозрение, что это как-то связано с ref-файлами...

Правильно, что в результате OSMODE запомнятся все установленные настройки привязок?
АлексЮстасу вне форума  
 
Непрочитано 12.08.2009, 17:36
#72
VVA

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


Цитата:
Т.е. эти потери настроек привязки не лечатся? В целом спонтанны?
Чтобы что-то утверждать, нужно посмотреть на код SELML и ML1
Цитата:
Правильно, что в результате OSMODE запомнятся все установленные настройки привязок?
В результате сохранения значения OSMODE запомнятся все установленные настройки привязок.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 12.08.2009, 17:43
#73
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от VVA Посмотреть сообщение
Чтобы что-то утверждать, нужно посмотреть на код SELML и ML1
тем более, что их автор VVA хорошо известен
АлексЮстасу вне форума  
 
Непрочитано 12.08.2009, 18:15
#74
VVA

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


Я много чего писал, всего уже не помню
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 12.08.2009, 18:54
#75
andery


 
Регистрация: 27.12.2007
Сообщений: 132
<phrase 1=


Как сделать чтоб мультилиния всегда в любом файле начиналась с центра? А то в каждом новом файле приходится менять расположение.
andery вне форума  
 
Непрочитано 12.08.2009, 18:58
#76
VVA

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


andery, Отредактируй стандартную кнопку или создай свою
Код:
[Выделить все]
^C^C_mline;_j;_z;
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 12.08.2009, 21:09
#77
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от andery Посмотреть сообщение
Как сделать чтоб мультилиния всегда в любом файле начиналась с центра? А то в каждом новом файле приходится менять расположение.
создай тулпалетку для мультилиний, в которой можно для каждой мультилинии описать не только привязки к оси, но и масштаб, слой, цвет, толщину и стиль.
АлексЮстасу вне форума  
 
Непрочитано 04.10.2009, 14:41
#78
faeto1982


 
Регистрация: 30.03.2009
Сообщений: 53
Отправить сообщение для faeto1982 с помощью Skype™


а цвет у уже нарисованной мультилинии можно поменять?

у меня слой меняется нормально, а цвет я никак не могу поменять
faeto1982 вне форума  
 
Непрочитано 04.10.2009, 15:28
#79
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


faeto1982, если в стиле мультилинии цвет элементов задать "По Слою", то при изменении цвета слоя цвет м.линии будет изменяться.
Хмурый вне форума  
 
Непрочитано 04.10.2009, 15:50
#80
faeto1982


 
Регистрация: 30.03.2009
Сообщений: 53
Отправить сообщение для faeto1982 с помощью Skype™


Хмурый я пробовал и "По Слою" и "По Блоку" видимо какой-то глюк завтра на работе попробую проверить. Главное это возможно, значит буду пытаться исправить.

Попробовал в 2007 и в 2009 пока нифига.
В стандартной мультилинии по умолчанию вроде стоит "По Слою", значит должна меняться.

Последний раз редактировалось faeto1982, 04.10.2009 в 16:00.
faeto1982 вне форума  
 
Непрочитано 04.10.2009, 21:20
#81
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от faeto1982 Посмотреть сообщение
а цвет у уже нарисованной мультилинии можно поменять?

у меня слой меняется нормально, а цвет я никак не могу поменять
По-моему, цвет у мультилинии зрительно заменить нельзя. В свойствах - какой угодно, а на экране останется таким, какой изначально описан у мультилинии.

Кстати, в тулпалетке для каждой мультилинии нужно вписать макрос:
^C^C_mline style <название мультилинии> j <вид привязки> scale <поперечный масштаб>
Вид привязки - например, zero - по оси.
Поперечный масштаб - чаще всего - 1.
Например: ^C^C_mline style STANDARD j zero scale 1.
АлексЮстасу вне форума  
 
Непрочитано 04.10.2009, 21:24
#82
faeto1982


 
Регистрация: 30.03.2009
Сообщений: 53
Отправить сообщение для faeto1982 с помощью Skype™


если зрительно не меняется, то какой цвет будет выведен на печать?
faeto1982 вне форума  
 
Непрочитано 04.10.2009, 22:01
#83
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от faeto1982 Посмотреть сообщение
если зрительно не меняется, то какой цвет будет выведен на печать?
Вопрос хороший Подозреваю, что напечатается так, как на экране...
Но лучше бы проверить...
АлексЮстасу вне форума  
 
Непрочитано 05.10.2009, 08:10
#84
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


Цитата:
Сообщение от faeto1982 Посмотреть сообщение
я пробовал и "По Слою" и "По Блоку" видимо какой-то глюк завтра на работе попробую проверить. Главное это возможно, значит буду пытаться исправить.

Попробовал в 2007 и в 2009 пока нифига.
В стандартной мультилинии по умолчанию вроде стоит "По Слою", значит должна меняться.
А вот это следует проверить.
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 131
Размер:	45.2 Кб
ID:	26825  
Хмурый вне форума  
 
Непрочитано 05.10.2009, 14:42
#85
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от Хмурый Посмотреть сообщение
А вот это следует проверить.
Точно - цвет мультилинии на экране меняется, если цвет элементов мультилинии описан по слою, а у мультилинии поменять слой!
Пардон, невнимательно читал

Последний раз редактировалось АлексЮстасу, 05.10.2009 в 14:49.
АлексЮстасу вне форума  
 
Непрочитано 25.08.2010, 18:35
#86
buildex


 
Регистрация: 25.08.2010
Сообщений: 24


Цитата:
Сообщение от наблюдатель Посмотреть сообщение
Рисуй одной линией затем командой Offset добавишь ей параллельную. Для такого несложного (для автокада) и единичного рисунка это самый простой и быстрый способ
согласен насчёт Offset, да и зеркалом можно пол работы упростить
buildex вне форума  
 
Непрочитано 26.08.2010, 09:56
#87
tanash

системы кондиционирования
 
Регистрация: 01.06.2009
Израиль
Сообщений: 27


Нет времени пересматривать все 5 страниц с ответами, может кто-то уже предлагал, есть лисп DLINE именно для двух линий с разными опциями.
Вложения
Тип файла: lsp DLINE.LSP (66.8 Кб, 166 просмотров)
tanash вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Можно ли вместо отрезков чертить сразу двумя паралельными линиями



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно в Автокаде чертить сразу в масштабе? Student AutoCAD 199 23.07.2010 17:09
Москва не сразу строится Perezz!! Разное 20 21.04.2009 23:52
ЮМОР 2006 =) Perezz!! Разное 1122 04.01.2007 00:46