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

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

  1. VITALY874

    VITALY874 Форумчанин

    Подскажите пожалуйста написать лисп или макрос или сборку .NET для расчленения полилинии и отображения длин сегментов как указано на схеме. Красный и зеленый контур нужно расчленить на сементы которые будет пересекать перпендикулярно полилиния по середине каждой стороны полилинии.
     

    Вложения:

    • Тест.dwg
      Размер файла:
      1.014,9 КБ
      Просмотров:
      99
  2. Alexandr-GR

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

    Оффтоп
    меня эта часть вопроса вводит в ступор ::blink.gif::

    А для каких целей эти манипуляции? где это применимо?
    Зачем расчленять? Почему именно пересекающие полилинии, а не окружности, точки или блоки? Длина этих полилиний всегда 5 или как?
    Длина от середины до концов отрезка не может отличаться (т.к. делит его пополам), но в приложенном примере отличается..
    10-07-2013 0-12-16.png
     
  3. VITALY874

    VITALY874 Форумчанин

    Все верно длина должна быть одинаковая.
    Все это дело необходимо для оформления потерь и разубоживания рудных блоков при их отработке. Перпендикулярная полилиния всегда длинной 5м. и представляет собой обозначение сечения.
     
  4. Alexandr-GR

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

    и все-таки как понимать фразу "Подскажите написать"? Нужна помощь в написании или готовое решение?
     
  5. VITALY874

    VITALY874 Форумчанин

    Можно и не расчленять, если получется сделать так чтобы расстояния между сечениями подписывались. Нужно готовое решение т.к. сам написать не в состоянии, но очень бы хотелось научиться самому писать такие штуки.
     
  6. BearDyugin

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

    Создаём размерный стиль, с подавлением всех линий и стрелочек, оставляем только текст, задаем ему нужную точность, 0.00, и указываем префикс м. И делаем его текущим.
    Вызываем команду put-dist, указываем сначала наш контур, потом величину отступа.
    put-dist.gif
    Программа переделена из вот этой
     

    Вложения:

    • VITALY874.LSP
      Размер файла:
      3,7 КБ
      Просмотров:
      223
  7. VITALY874

    VITALY874 Форумчанин

    Огромное человеческое спасибо.
    Может кто-нибудь поможет с лиспом который нарисует перпендикулярные линии по контуру как показано на схеме в первом сообщении?
     
  8. Alexandr-GR

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

    еще вариант.
    высота текста в системной переменной TEXTSIZE.
    запуск: _GR-HALF
     

    Вложения:

    • GR-HALF-DST.fas
      Размер файла:
      4,2 КБ
      Просмотров:
      119
  9. VITALY874

    VITALY874 Форумчанин

    Ну прям "ваще" спасибо большое люди добрые
     
  10. VITALY874

    VITALY874 Форумчанин

    Интересно, как самому научиться такие вещи делать?
     
  11. Alexandr-GR

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

  12. VITALY874

    VITALY874 Форумчанин

    Уважаемый Alexandr-GR помогите найти ошибку в лиспе.
     

    Вложения:

    • 7.LSP
      Размер файла:
      4,6 КБ
      Просмотров:
      15
  13. Alexandr-GR

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

  14. VITALY874

    VITALY874 Форумчанин

    Уважаемый Alexandr-GR, не могли бы вы подредактировать свой код. Нужно что бы подписи расстояний выводились 12м без м, И еще чтобы на конце построенной перпендикулярной линии всегда был текст со значением "-" но размещение его всегда только с наружней строны относительно контура.
     
  15. Alexandr-GR

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

     

    Вложения:

  16. VITALY874

    VITALY874 Форумчанин

    Огромнейшее спасибо вам. А не могли бы вы поделиться кодом, что бы в дальнейшем я сам мог в него чего-нибудь добавлять
     
  17. Alexandr-GR

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

    Могу. Смотри в личке.
     
  18. VITALY874

    VITALY874 Форумчанин

    Большое спасибо
     
  19. Игорь Арчибисов

    Игорь Арчибисов Форумчанин

    Не могли бы поделится кодом на кнопку ?
     
  20. Alexandr-GR

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


    Код:
    ^C^C^P(if (not C:GR-HALF) (load "GR-HALF-DST_1_1")) GR-HALF
     
    Игорь Арчибисов нравится это.
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление