1. ВНИМАНИЕ! В течении пары дней +- будет переезд форума на более защищённый сервер. Возможны перебои в работе.
    Скрыть объявление

Нужна помощь в автокаде!

Тема в разделе "Autodesk", создана пользователем Erlen, 20 фев 2013.

  1. Андрей Р.

    Андрей Р. Форумчанин

    Вроде как тоже внезапно возник вопрос, вроде как и пролетало уже на форуме но никак не найду...
    Знатоки подскажите какой командой обьеденить кучу отрезков в одну линию...
     
  2. Qvinto

    Qvinto Форумчанин

    PlTools тебе в помощь. PL-JOIN
     
  3. Philin

    Philin Форумчанин

    Без всяких надстроек, стандартными средствами автокада это делается так:
    - одним из отрезков (или ломаной) должна быть полилиния (на скрине красным полилиния, белым линии), прочие отрезки могут быть линиями или полилиниями, а также полилинией из нескольких отрезков. Все отрезки должны находиться на одной высоте и стыковаться между собой без зазоров.
    1. либо двойной клик левой клавишей мыши на полилинии; далее добавить; далее выбираем все отрезки и два раза Enter
    2. либо второй вариант, вводим в командной строке автокад команду ПОЛРЕД; далее выбираем полилинию; далее добавить; далее выбираем все отрезки и два раза Enter
    До объединения:
    [​IMG]

    После объединения:
    [​IMG]

    Или ещё один из вариантов (полилиния в центре):
    До
    [​IMG]

    После
    [​IMG]
     
    chehoff, Андрей Р. и alexkrong нравится это.
  4. Qvinto

    Qvinto Форумчанин

    Philin, не соглашусь.
    Если отрезков несколько, то может быть и да.
    Прям сейчас эти и занимаюсь. Достался мне чертеж, после неизвестной программы. Там куча отрезков, они в разных местах, около 4000. Контуры дамбы, откосы, и прочая лабудень. Я просто всё выбрал, и мне объединило в полилинии. Корректировки совсем мало, где-то конец контура дамбы прилепился к штриху откоса. Причем, всё было в одном слоё и одним цветом и типом линии. Этими приблудами я разделил всё по слоям: откосы и контуры. Тем более, они бесплатные, и кроме того, там ещё много полезных функций, которых, ой как не хватает голому Автокаду.
     
  5. Андрей Р.

    Андрей Р. Форумчанин

    Раз пошла такая пьянка, то еще один вопрос, команда или утилита чтобы натыкала точек по концам выбранных отрезков, или изломов полилинии.
     
  6. Philin

    Philin Форумчанин

    Такой команды нет. А для чего это надо?
     
  7. Андрей Р.

    Андрей Р. Форумчанин

    Домик собака большой, осей куча, достало расставлять точки, думаю мож как ускорить процесс...
     
  8. АлексЮстасу

    АлексЮстасу Форумчанин

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

    А зачем вообще точки расставлять? Зачем эти точки нужны?
     
  9. Alexandr-GR

    Alexandr-GR Форумчанин

    Код:
    (defun C:ptovert (/ ob get-coor del-repeats)
      (setq    ob (ssget '((0 . "LWPOLYLINE,LINE")))
        ob (vl-remove-if 'listp (mapcar 'cadr (ssnamex ob)))
        get-coor
                (Lambda (o)
                  (mapcar (function cdr)
                      (vl-remove-if-not
                    (function (lambda (x) (or (= (car x) 10) (= (car x) 11))))
                    (entget o)
                      )
                  )
                )
        del-repeats
                (lambda (x / l)
                  (while x
                (setq l    (cons (car x) l)
                      x    (vl-remove (car x) x)
                )
                  )
                  l
                )
      )
      (mapcar (function
            (lambda (a) (entmake (LIST '(0 . "POINT") (CONS 10 a))))
          )
          (del-repeats
            (apply 'append
              (mapcar (function (lambda (x) (get-coor x))) ob)
            )
          )
      )
      (princ)
    )
    Запуск: _ptovert
     
  10. Подскажите, кто знает как сгладить углы квадрата буфером или какой либо другой функцией?
     
  11. Erlen

    Erlen Форумчанин

    Можно попробовать полилинию сплайном обработать или просто "сгладить" или дугами нарисовать.
     
  12. Robkiy

    Robkiy Форумчанин

    2 раза жми на поллинию и выбирай или сплайн или сгладить
     
  13. Robkiy

    Robkiy Форумчанин

    Суть проблемы такова есть файл автокада , есть лисп который придаёт отметку точкам по ближайшему тексту - но конкретно в этом файле почему то работает не корректно , проставляет не те отметки (думаю что то с настройками не то ) , скопировал в другой файл всё работает как нужно !!!
    Часть файла и лисп прилагаю - если кто может разобраться подскажите а то уж очень интересно почему так
     

    Вложения:

  14. sergtor

    sergtor Форумчанин

    Robkiy, заморозьте слой "Номер1" (у Вас выключен), т.к. программа принимает значение Z из текстов номеров точек.
     
  15. Robkiy

    Robkiy Форумчанин

    sergtor, спасибо - как то не подумал , что лисп может брать отметки с выключенного слоя
     
  16. P1no4t

    P1no4t Форумчанин

    вопросы банальные, поэтому тут спрошу:
    1) стандартными средствами автокада выделить все объекты на слое. не, через быстрый выбор можно, но выходит раза четыре тыкать, с торможением - долго выходит. Нужно одной кнопкой, щелчком по объекту выделить все объекты слоя, ну или изолировать слой. Можно лиспом.
    2) Почему в некоторых чертежах при переходе в модель, или внутрь видового экрана изображение каждый раз уменьшается до "показать все"?
     
  17. X-Y-H

    X-Y-H Администратор Команда форума

  18. sergtor

    sergtor Форумчанин

    1. Панель "Слои-2" (см. скрин)
    2. В пространстве листа активировать видовой экран и ввести и системную переменную UCSFOLLOW в 0
     

    Вложения:

    • Image 2.png
      Image 2.png
      Размер файла:
      3,5 КБ
      Просмотров:
      8
  19. Qvinto

    Qvinto Форумчанин

    Читаем вопрос внимательно:

    Иван, на слое могут быть разные примитивы, всех не уследишь. Selsim'ом пока переберешь, всё равно что быстрым выбором.
    sergtor, изоляция слоя это не выбор, а только отключение всех слоев и оставление включенным нужного. А потом что? Рамкой выделять? Муторно это.
    Можно. Держи.
    Код:
    ;******************* sel_lay.lsp *****************************************
    ;        Выбор всех объектов на слое выбранного объекта.
    ;        Автор Владимир Громов.
    ;
    (defun C:SEL_LAY ( / echo sen ent lay ss len da)
          (setq echo (getvar "CMDECHO"))
          (setvar "CMDECHO" 0)
          (princ "\n Определение слоя по объекту.")
          (setq sen (entsel " Выберите нужный объект: "))
    (if sen
          (progn
          (setq ent (entget (car sen)))
          (setq lay (cdr (assoc 8 ent)))
          (setvar "CLAYER" lay)
          (setq ss (ssget "_X" (list (cons 8 lay))))
          (setq len (sslength ss))
          (sssetfirst nil ss)
          (initget 6 "Да Нет Yes No _ Yes No")
          (setq da (getkword "\n Отключить остальные слои? [Да/Нет] <Да>: "))
          (if (or (= da "Yes") (= da nil))
              (progn
              (vl-cmdf "_-LAYER" "_OF" "*" "_Y" "")
              (vl-cmdf "_-LAYER" "_ON" LAY "")
          )); if da
          (sssetfirst ss ss)
          (princ "\n Слой: ") (princ lay)
          (princ "  Количество объектов = ") (princ len)
          )
          (princ "\n Объект не выбран!")
    ); if sen
          (setvar "cmdecho" echo)
          (princ)
    )
    ;;;Возможный макрос для кнопки или пункта меню:
    ;;;^C^C^P(if (not C:SEL_LAY) (load "sel_lay")) SEL_LAY
     
  20. sergtor

    sergtor Форумчанин

    Qvinto, в соответствии с вариантом пожелания автора сообщения.
     
    Qvinto нравится это.
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление