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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Окна и проемы в стенах

Окна и проемы в стенах

Ответ
Поиск в этой теме
Непрочитано 17.04.2008, 00:02
Окна и проемы в стенах
glav_spec
 
Регистрация: 16.04.2008
Сообщений: 2

Доброго времени суток, я начинающий пользователь автокада, ищу пути сокращения времени разработки чертежа. Можете ли вы ответить на такие вопросы:
я начинаю чертить план: в своем слое наношу оси, создаю соответствующий тип мультилинии и используя привязку веду по осям несущие стены, потом другим стилем перегородки и т.д. (параллельный вопрос — может быть есть способ лучше???). Когда стены прорисованы встает вопрос с проемами, задача: вставить в несущие стены оконные проемы таким образом, что бы толщина линий образующих стены в местах оконных проемов была тоньше (для наглядности) а линии несущих стен в местах дверных проемов просто исчезли. Как такого результата можно добиться наименьшими усилиями??? (очень надеюсь, что никого не запутал)
Просмотров: 9921
 
Непрочитано 28.04.2008, 22:54
#21
Кулик Алексей aka kpblc
Moderator

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


Я пас. Порядок отрисовки придется "ковырять" напрямую в словарях, а я в них "плаваю" слишком капитально
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.04.2008, 08:59
#22
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Жаль.
Я так понял проблема в том, чтобы добавить вхождение дин. блока в набор (с фильтром по имени).
ssget это не делает. Но неужели нет другого способа? Ведь задача-то насущная.
Makswell вне форума  
 
Непрочитано 29.04.2008, 09:53
#23
Кулик Алексей aka kpblc
Moderator

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


Ну командными-то методами (в смысле - вручную) работает...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.04.2008, 10:35
#24
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Я вот подумал. А может попробовать ssadd. Типа такого:

(setq selset (ssadd))
;1 - Находим блок где есть wipeout
;2 - Получаем vla-указатель (obj) на этот блок
;потом...
(ssadd (vlax-vla-object->ename obj) selset)
;3 - повторяем п.1
;а дальше просто...
(command "_.draworder" selset "" "_f")

Как думаешь?

Последний раз редактировалось Makswell, 29.04.2008 в 10:47.
Makswell вне форума  
 
Непрочитано 29.04.2008, 10:38
#25
Кулик Алексей aka kpblc
Moderator

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


Удалил, чушь была написана.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.

Последний раз редактировалось Кулик Алексей aka kpblc, 29.04.2008 в 10:58.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.04.2008, 10:57
#26
Кулик Алексей aka kpblc
Moderator

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


Во, попробуй так:
Код:
[Выделить все]
(defun c:wipeout-front (/ adoc *error* blk_cont blk_lst selset _cmdecho)
  (defun *error* (msg)
    (if _cmdecho
      (setvar "cmdecho" _cmdecho)
      ) ;_ end of if
    (vla-endundomark adoc)
    (princ msg)
    (princ)
    ) ;_ end of defun

  (vl-load-com)
  (vla-startundomark
    (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
    ) ;_ end of vla-startundomark
  (vlax-for blk_def (vla-get-blocks adoc)
    (if
      (and (equal (vla-get-islayout blk_def) :vlax-false)
          ;(not (wcmatch (vla-get-name blk_def) "`**"))
           (if (vlax-property-available-p blk_def 'isdynamicblock)
             (equal (vla-get-isdynamicblock blk_def) :vlax-false)
             (wcmatch (vla-get-name blk_def) "`**")
             ) ;_ end of if
           (setq
             blk_cont
              (vl-remove-if-not
                '(lambda (x)
                   (wcmatch (strcase (vla-get-objectname x))
                            "*WIPEOUT*"
                            ) ;_ end of wcmatch
                   ) ;_ end of lambda
                ((lambda (/ res)
                   (vlax-for sub blk_def (setq res (cons sub res)))
                   ) ;_ end of lambda
                 )
                ) ;_ end of vl-remove-if-not
             ) ;_ end of setq
           ) ;_ end of and
       (setq blk_lst (cons
                       (cond ((wcmatch (vla-get-name blk_def) "`**") "`**")
                             (t (vla-get-name blk_def))
                             ) ;_ end of cond
                       blk_lst
                       ) ;_ end of cons
             ) ;_ end of setq
       ) ;_ end of if
    ) ;_ end of vlax-for
  (if blk_lst
    (progn
      (setq blk_lst  ((lambda (/ res)
                        (foreach item blk_lst
                          (if (not (member item res))
                            (setq res (cons item res))
                            ) ;_ end of if
                          ) ;_ end of foreach
                        res
                        ) ;_ end of lambda
                      )
            selset   (ssget
                       "_X"
                       (list
                         '(0 . "INSERT")
                         (cons
                           2
                           ((lambda (/ res)
                              (strcat
                                (car blk_lst)
                                (apply
                                  'strcat
                                  (mapcar '(lambda (x) (strcat "," x))
                                          (cdr blk_lst)
                                          ) ;_ end of mapcar
                                  ) ;_ end of apply
                                ) ;_ end of strcat
                              ) ;_ end of lambda
                            )
                           ) ;_ end of cons
                         ) ;_ end of list
                       ) ;_ end of ssget
            _cmdecho (getvar "cmdecho")
            ) ;_ end of setq
      (setvar "cmdecho" 0)
      (command "_.draworder" selset "" "_f")
      (vla-regen adoc acallviewports)
      ) ;_ end of progn
    ) ;_ end of if
  (if _cmdecho
    (setvar "cmdecho" _cmdecho)
    ) ;_ end of if
  (vla-endundomark adoc)
  (princ)
  ) ;_ end of defun
Честно скажу, полной проверки не выполнял, ограничения как и в #9. Обычные wipeout'ы, которые не входят в блоки, обрабатывать не будет. Вроде как обрабатывает и простые, и динамические блоки
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.04.2008, 11:21
#27
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Ты всё таки это сделал! Круто!
Спасибо, Алексей. Я твой должник.
Makswell вне форума  
 
Непрочитано 09.06.2008, 12:54
#28
Volodich

проектировщик-электрик
 
Регистрация: 20.12.2007
Челябинск
Сообщений: 475


Странно, а я слои и размораживал и замораживал и включал и отключал, но почему-то все прекрасно срабатывает
Volodich вне форума  
 
Непрочитано 09.06.2008, 12:56
#29
Кулик Алексей aka kpblc
Moderator

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


Volodich, это про что?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Окна и проемы в стенах



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Устройство проемов в несущих стенах 4атланин Конструкции зданий и сооружений 42 07.04.2016 13:53
Окна или люки в подвале slimmy Прочее. Архитектура и строительство 21 17.12.2012 16:53
Диалоговые окна FILE klopius AutoCAD 2 21.11.2007 10:36
Размеры на листе и видовые окна с разними масштабами Pave1 AutoCAD 4 18.07.2006 11:55