Выноска длины полилинии

Тема в разделе "Autocad", создана пользователем wert, 9 авг 2018.

  1. 1958

    1958 Форумчанин

    После долгого обсуждения в личной переписке написал для Виктoрия небольшой лисп для вставки в чертеж длин и площадей линий и площадей штриховок. Обрабатываются линии и штриховки текущего слоя.
     

    Вложения:

    • 89.LSP
      Размер файла:
      1,4 КБ
      Просмотров:
      34
    desty и Виктoрия нравится это.
  2. zvezdochiot

    zvezdochiot Форумчанин

    "Ну вы либо штаны оденьте, либо крестик снимите".
     
  3. 1958

    1958 Форумчанин

    Согласен. Исправил. ::biggrin24.gif::
     

    Вложения:

    • 89.LSP
      Размер файла:
      1,5 КБ
      Просмотров:
      33
    desty и zvezdochiot нравится это.
  4. Deleted member 122005

    Deleted member 122005 Только чтение

    Оффтоп
    Хватит вам уже эту фразу из анекдота писать с ошибкой. Штаны не одевают, а надевают!::tongue24.gif::
     
    АлексЮстасу нравится это.
  5. zvezdochiot

    zvezdochiot Форумчанин

    Оффтоп
    Не "ошибка", а маркер, такой же как чорт.

    "По следу хлебных крошек..."
     
    АлексЮстасу нравится это.
  6. 1958

    1958 Форумчанин

    Так вот, Виктoрия попросила написать раздельные лиспы для длин линий и всего остального.
    Представляю лисп для подписи длины всевозможных линий, как то отрезки, линии, полилинии, сплайны, дуги, эллипсы, окружности и не знаю чего еще.
     

    Вложения:

    • ll.LSP
      Размер файла:
      1,8 КБ
      Просмотров:
      52
    desty, AGF и zvezdochiot нравится это.
  7. 1958

    1958 Форумчанин

    В личной переписке Alexandor1983 сообщил, что в Civil 3D 2019 ll.lsp не работает. Проверил в Civil 3D 2018, тоже не пашет. Пришел к выводу, что команда ll используется (зарезервирована) Civil. Поэтому переименовал лисп и команду запуска на lenlin и, о чудо, всё заработало. ::laugh24.gif::
     

    Вложения:

    • lenlin.LSP
      Размер файла:
      1,8 КБ
      Просмотров:
      39
    zvezdochiot и AGF нравится это.
  8. Добрый день!
    Могу попросить чуть доработать, нужно чтобы указывал длину пролета между опорами ЛЭП
    в формате L= "число округленное до целого, но затем через точку должен стоять 0"
     
  9. 1958

    1958 Форумчанин

    --- Сообщения объединены, 23 июл 2021, Оригинальное время сообщения: 23 июл 2021 ---
    Так устроит?
     

    Вложения:

    • rss.LSP
      Размер файла:
      906 байт
      Просмотров:
      30
    RomZZes нравится это.
  10. Здравствуйте! Есть ли lisp по выводы длин выделенных полилиний, в их серединах, c задаваемым отступом?
    p.s Примерный вид во вложении[​IMG][​IMG][​IMG]
     

    Вложения:

  11. 1958

    1958 Форумчанин

    В апреле делал лисп для Виктoрия, немного переделал. Отступ текста от линий - двойной размер высоты текста. Подписываются длины всех линий, отрезков, дуг, окружностей, эллипсов.
     

    Вложения:

    • ll.LSP
      Размер файла:
      1,8 КБ
      Просмотров:
      31
    zvezdochiot нравится это.
  12. А для полилиний длину вывести не получится?
     
  13. 1958

    1958 Форумчанин

    Получится конечно. Пробуйте.
     
    ilyxa1234 нравится это.
  14. Что-то не получается у меня размер полилиний вывести, выводит на всех кривых исключая полилинию.
     
  15. zvezdochiot

    zvezdochiot Форумчанин

    Qvinto нравится это.
  16. 1958

    1958 Форумчанин

    1+ - увеличение на 1
    1- - уменьшение на 1
    incf и setf - это функции Common Lisp, я использую AutoLISP.

    Пример чертежа с вашей полилинией в студию, пожалуйста.
    Для примера приведу свой чертеж:
     

    Вложения:

    ilyxa1234, Qvinto и zvezdochiot нравится это.
  17. Разобрался, спасибо! Нужно было, чтоб полилинии соответствовали текущему слою.
     
  18. 1958

    1958 Форумчанин

    Ну да. Если обратите внимание, то выборка линейных элементов происходит с учетом текущего слоя:
    (setq lay (getvar "clayer") - переменной lay присваивается имя текущего слоя
    i -1
    ss (ssget "_X" (list (cons 0 "*LINE,ARC,CIRCLE,ELLIPSE") (cons 8 lay))) -
    выбираются линейные элементы на текущем слое.

    Кстати, если на текущем слое имеется мультилиния, то будет происходить затык.
     
    ilyxa1234 нравится это.
  19. Подскажите пожалуйста, можно ли в программе прописать условие, при котором некоторые размеры округлялись бы до определенного числа?
     
  20. 1958

    1958 Форумчанин

    Найдите строку (setq s (strcat "L" k "=" (rtos s 2 2) "m")) - вторая двойка это разрядность после запятой.
     
    ilyxa1234 нравится это.
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление