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

Создать контур вокруг нескольких штриховок?

Тема в разделе "Autocad", создана пользователем Rinat261, 30 авг 2023.

  1. Здравствуйте. подскажите пжт как можно создать контур вокруг нескольких штриховок?
     
  2. agajohn

    agajohn Форумчанин

    выделяете штриховки и набираете команду: _HATCHGENERATEBOUNDARY
    --- Сообщения объединены, 30 авг 2023, Оригинальное время сообщения: 30 авг 2023 ---
    Так же работает в другом порядке, сначала команда, потом выбор обьектов
     
  3. Ламаград

    Ламаград Форумчанин

    А как на топосьемке оставить только то что в контур полилинией выбрал, а остальное снаружи не нужно?
     
  4. А как сделать чтоб только внешний контур выделился у всех штриховок? помогите пжт
     

    Вложения:

  5. нашел в интернете вот этот код но не знаю как добавить.
    (defun C:HO (/ cop csh hlst loop outl sh)
    (vl-load-com)

    (if
    (setq sh (ssget "_:L" (list (cons 0 "HATCH"))))
    (progn
    (setq hlst (vl-remove-if 'listp (mapcar 'cadr (ssnamex sh))))
    (foreach en hlst
    (command "_-HATCHEDIT" en "_B" "_P" "_Y");; recreate a boundary as closed polyline
    (setq cop (cons (vlax-ename->vla-object en) cop))
    )

    (setq csh (ssadd))
    (setvar "delobj" 0)
    (foreach hobj cop
    (vla-getloopat hobj 0 'loop)
    (if
    (not (vl-catch-all-error-p
    (setq outl (vl-catch-all-apply
    'vlax-safearray->list
    (list loop)
    )
    )
    )
    )

    (progn

    (command "_.region" (vlax-vla-object->ename (car outl)) "")
    (ssadd (entlast) csh)))
    )
    (command "_.union" csh "")
    (command "_chprop" (entlast) "" "_C" "cyan" "_LW" 50 "")
    (alert
    (rtos (vlax-get (vlax-ename->vla-object (entlast)) 'area)))

    )
    )
    (princ)
    )
     
  6. alz

    alz Форумчанин

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

    Как вариант, восстанавливаете контура, обводите всю область большим прямоугольником и создаете штриховку внутри этого большого контура кликнув где нить между контурами и этой границей, при удаче получите штриховку, внутри которой будет большая граница ваших объектов, восстанавливаете эту границу и получаете границу ваших штриховок.
    --- Сообщения объединены, 31 авг 2023, Оригинальное время сообщения: 31 авг 2023 ---
    Хз как это относится к границе штриховок, но можете попробовать воспользоваться этой программой https://geodesist.ru/resources/trimobjects.350/
     
    Ламаград нравится это.
  7. agajohn

    agajohn Форумчанин

    Я посмотрел ваш файл. сам бы не стал с этим работать, там каша просто. Сделал вам пример

    kontur obyektov.gif
    --- Сообщения объединены, 31 авг 2023, Оригинальное время сообщения: 31 авг 2023 ---
    Можно еще Fragm_Den воспользоваться. Копирует все в заданных границах
    --- Сообщения объединены, 31 авг 2023 ---
    остальное доработайте руками
     

    Вложения:

  8. АлексЮстасу

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

    В AutoCAD Map/Civil для этого есть _MAPTRIM.
     
  9. agajohn

    agajohn Форумчанин

  10. Ламаград

    Ламаград Форумчанин

    У нас только nanoCAD 5.1
    наверно он не может?
     
  11. АлексЮстасу

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

    Про нанокад не ведаю. Если в нем есть аналог Map/Civil, возможно, что там есть и аналог _MAPTRIM. Но тоже не обязательно.
    В нанокаде, кажется, есть аналог Геоникса. Может быть там есть утилита для вырезания-обрезания.
     
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление