Подписать отметки точек.

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

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

    rome047 Форумчанин

    #1
    Добрый день! Подскажите пожалуйста какой-нибудь лисп для подписи высот точки. (желательно чтобы стиль текста был тот, который активный) Спасибо.
     
  2. Qvinto

    Qvinto Форумчанин

    #2
    Лови

    Код:
    (defun c:p_h ( / H SSET)
    (if(and
    (vl-cmdf "_.qselect" "")
    (setq sset (ssget "_P" '((0 . "POINT"))))
    (setq h (getreal "\tКакая высота текста\t\t")))
    (mapcar(function(lambda  (x)
    (entmake(list '(0 . "TEXT")
    (assoc 10 (entget x))(cons 40 h)
    (cons 1 (rtos (cadddr (assoc 10 (entget x))) 2 3))))))
    (vl-remove-if (function listp)
    (mapcar (function cadr) (ssnamex sset)))))
    (princ))
    
     
    Nikolainew, NewGeo, иван G и 4 другим нравится это.
  3. rome047

    rome047 Форумчанин

    #3
    Помоги пожалуйста собрать этот лисп в файл, я не особо умею их создавать.
     
  4. rome047

    rome047 Форумчанин

    #4
    Всё, разобрался, спасибо.
     
  5. Qvinto

    Qvinto Форумчанин

    #5
    Выделяешь весь мой код, копируешь, открываешь блокнот, всавляешь туда, сохраняешь с именем p_h.lsp
     
    maia и chehoff нравится это.
  6. chehoff

    chehoff Форумчанин

    #6
    во! давно бы так! а то не поймешь-что за иероглифы)))))
     
  7. kolenval85

    kolenval85 Форумчанин

    #7
    ну, а запускать как?
     
  8. Legion15

    Legion15 Форумчанин

    #8
    сервис-autolisp-приложения : выбрать файл и нажать загрузить.В строке команд появится надпись,какая команда запускает данный лисп.
     
  9. mali

    mali Форумчанин

    #9
    А можно чуть подробнее последнее сообщение. В ACad 2010 не получается.
     
  10. Legion15

    Legion15 Форумчанин

  11. mali

    mali Форумчанин

    #11
    Спасибо, не заметил последний вопрос "Какая высота текста". Все работает.
     
  12. kolenval85

    kolenval85 Форумчанин

    #12
    не знаю, у меня через _appload все запускается, а в командной строке после загрузки ничего не пишется. мож кто знает как так?
     
  13. Legion15

    Legion15 Форумчанин

    #13
    Повторно вводишь ту команду,которая тебе "открылась" и загружается программа ,прописанная в лиспе,в данном случае геокалькулятор.Автокад 2009.
    --- Сообщения объединены, , Оригинальное время сообщения: ---
    В указанном лиспе по высотам,не всплывает команда вызова.Теперь я понял,о чем был вопрос.

    Почитал здесь http://dwg.ru/art/8.Все равно не получается запустить.Хм.Мало кофе с утра??
     

    Вложения:

    • лисп.jpg
      лисп.jpg
      Размер файла:
      152 КБ
      Просмотров:
      301
    • лисп-2.jpg
      лисп-2.jpg
      Размер файла:
      56,6 КБ
      Просмотров:
      280
  14. kolenval85

    kolenval85 Форумчанин

    #14
    блин, прикалываетесь?
    пост #2
    Код:
    (defun c:p_h ( / H SSET)
    (if(and
    (vl-cmdf "_.qselect" "")
    (setq sset (ssget "_P" '((0 . "POINT"))))
    (setq h (getreal "\tКакая высота текста\t\t")))
    (mapcar(function(lambda (x)
    (entmake(list '(0 . "TEXT")
    (assoc 10 (entget x))(cons 40 h)
    (cons 1 (rtos (cadddr (assoc 10 (entget x))) 2 3))))))
    (vl-remove-if (function listp)
    (mapcar (function cadr) (ssnamex sset)))))
    (princ))
     
  15. Legion15

    Legion15 Форумчанин

    #15
    (defun c:p_h ( / H SSET) какой фрагмент из этого запускает сам лисп,после его установки? p_h ??
     
  16. kolenval85

    kolenval85 Форумчанин

    #16
    я все собрал в лисп, назвал его p_h
    пишу в ком. строке. : appload
    Безымянный.png

    выбираю p_h загрузить

    Безымянный2.png

    ну и где команда вызова?
     
  17. Legion15

    Legion15 Форумчанин

    #17
    загрузи вот этот лисп--и там будет меню вызова.
    а здесь где то в этой строке,но я пока не понял,какой фрагмент. (defun c:p_h ( / H SSET)
     

    Вложения:

  18. kolenval85

    kolenval85 Форумчанин

    #18
    спс
     
  19. АлексЮстасу

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

    #19
    _appload - это не запуск программы, а только загрузка программы в Автокад. Вероятно, процесс _appload - это только проверка лиспа на состоятельность, и постановка Автокада в известность, что этой программкой хотят пользоваться.
    Для запуска нужно в комстроке ввести имя нужной программы. Например, p_h.
     
  20. borik

    borik Форумчанин

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