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

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

Discussion in 'Autocad' started by wert, Aug 9, 2018.

  1. 1958

    1958 Форумчанин

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

    Attached Files:

    • 89.LSP
      File size:
      1.4 KB
      Views:
      38
    desty and Виктoрия like this.
  2. zvezdochiot

    zvezdochiot Форумчанин

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

    1958 Форумчанин

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

    Attached Files:

    • 89.LSP
      File size:
      1.5 KB
      Views:
      36
    desty and zvezdochiot like this.
  4. Deleted member 122005

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

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

    zvezdochiot Форумчанин

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

    "По следу хлебных крошек..."
     
  6. 1958

    1958 Форумчанин

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

    Attached Files:

    • ll.LSP
      File size:
      1.8 KB
      Views:
      57
    desty, AGF and zvezdochiot like this.
  7. 1958

    1958 Форумчанин

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

    Attached Files:

    zvezdochiot and AGF like this.
  8. Добрый день!
    Могу попросить чуть доработать, нужно чтобы указывал длину пролета между опорами ЛЭП
    в формате L= "число округленное до целого, но затем через точку должен стоять 0"
     
  9. 1958

    1958 Форумчанин

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

    Attached Files:

    • rss.LSP
      File size:
      906 bytes
      Views:
      32
    RomZZes likes this.
  10. Здравствуйте! Есть ли lisp по выводы длин выделенных полилиний, в их серединах, c задаваемым отступом?
    p.s Примерный вид во вложении[​IMG][​IMG][​IMG]
     

    Attached Files:

  11. 1958

    1958 Форумчанин

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

    Attached Files:

    • ll.LSP
      File size:
      1.8 KB
      Views:
      36
    zvezdochiot likes this.
  12. А для полилиний длину вывести не получится?
     
  13. 1958

    1958 Форумчанин

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

    zvezdochiot Форумчанин

    Qvinto likes this.
  16. 1958

    1958 Форумчанин

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

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

    Attached Files:

    ilyxa1234, Qvinto and zvezdochiot like this.
  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 likes this.
  19. Подскажите пожалуйста, можно ли в программе прописать условие, при котором некоторые размеры округлялись бы до определенного числа?
     
  20. 1958

    1958 Форумчанин

    Найдите строку (setq s (strcat "L" k "=" (rtos s 2 2) "m")) - вторая двойка это разрядность после запятой.
     
    ilyxa1234 likes this.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice