Проставить размеры на отрезках. Лисп.

Тема в разделе "Autodesk", создана пользователем VITALY874, .

ГЕОДЕЗИСТ.RU
  1. pashuha

    pashuha Форумчанин

    #21
    Доброго времени суток! Прошу помощи! На чертеже есть отрезки, нужен лисп который подписывает длину выбранных отрезков с точностью до сантиметра.
     
  2. АлексейМанс

    АлексейМанс Форумчанин

    #22
    Размерный стиль сделать собственный как нужно нет возможности? Или я не правильно понял вопрос, уточните пожалуйста
     
  3. pashuha

    pashuha Форумчанин

    #23
    размерный стиль это долго, нужно указывать 2 точки каждого отрезка, а хочется выделить нужные отрезки и чтоб у них подписались текстом длины. У меня есть лисп, но он работает с полем данных, и не округляет до сантиметров.
     

    Вложения:

    • dlina.lsp
      Размер файла:
      2,7 КБ
      Просмотров:
      101
  4. sergtor

    sergtor Форумчанин

    #24
    pashuha, а не пробовали перед запуском лиспа, командой ЕДИНИЦЫ, в поле "точность" выбрать нужное количество знаков после запятой?
     
  5. Alexandr-GR

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

    #25

    Код:
    (defun C:dist_line (/)
      (mapcar
        (function
          (lambda (l)
        (entmake
          (mapcar
            'cons
            '(0 10 1 40 7 50)
            (list
              "TEXT"
              (car l)
              (cadr l)
              (getvar 'TEXTSIZE)
              (getvar 'TEXTSTYLE)
              (if
            (and (<= (caddr l) (* pi 1.5)) (> (caddr l) (/ pi 2)))
            (+ pi (caddr l))
            (caddr l)
              )
            )
          )
        )
          )
        )
        (mapcar (function (lambda (o / n k s)
                (setq n    (cdr (assoc 10 (entget o)))
                      k    (cdr (assoc 11 (entget o)))
                      s    (list (/ (+ (car n) (car k)) 2)
                          (/ (+ (cadr n) (cadr k)) 2)
                    )
                )
                (list s (rtos (distance n k) 2 2) (angle n k))
                  )
            )
            (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "LINE"))))))
        )
      )
      (princ)
    )
    Команда: dist_line
     
    pashuha нравится это.
  6. pashuha

    pashuha Форумчанин

    #26
    Alexandr-GR, большое спасибо, то что нужно!
     
  7. X-Y-H

    X-Y-H Модератор Команда форума

    #27
    kad3227, не надо писать одно и то же в разных темах!
     
  8. kad3227

    kad3227 Форумчанин

    #28
    хочу найти ответ
     
  9. АлексейМанс

    АлексейМанс Форумчанин

    #29
    Вас услышат и с первого раза...
     
  10. kad3227

    kad3227 Форумчанин

    #30
    опубликуйте сообщение рассчитываю на Alexandr-GR, для менязнаток и авторитет
     
  11. TOLSTIJDMITRIJ

    TOLSTIJDMITRIJ Форумчанин

    #31
    Программа, которая очень мне нужна, только можно сделать без разделения линии пополам?
    Спасибо
     
    muxalost нравится это.
  12. #32
    Добрый день, подскажите возможно ли ваш код переделать? чтобы размеры не делилил сегмент полилинии пополам?
    [​IMG]
     
  13. BearDyugin

    BearDyugin Модератор Форумчанин

    #33
    http://geodesist.ru/forum/resources/oformlenie-sxemy-pvo-lisp.68/
    потом лишнее уберешь
     
  14. #34
    Здравствуйте как отредактировать скрипт чтобы он не ставил размеры по середине прямого участка полиинии
     
  15. BearDyugin

    BearDyugin Модератор Форумчанин

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