Помогу бесплатно разработать любую программу на autolisp.

Тема в разделе "Autodesk", создана пользователем Германup, 3 фев 2014.

  1. Сер-гео

    Сер-гео Форумчанин

  2. sergtor

    sergtor Форумчанин

  3. BearDyugin

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

    Есть Lisp от Кулик Алексей aka kpblc который "номрализует" блок в том числе и вес ставит "поблоку" а после уже можешь самим блокам задать нужный вес, или вес "послою" а слоям нужный тебе вес.
    http://forum.dwg.ru/showthread.php?t=21492
     
    barabashkasathalex нравится это.
  4. Vari_a

    Vari_a Форумчанин

    спасибо.
     
  5. mihamster

    mihamster Форумчанин

    Vari_a, ну если на чертеже вообще не будет предусмотрено других толстых линий, то "веса" можно выключить, просто при печати.
     
  6. Романыч

    Романыч Форумчанин

    Коллеги, приветствую!
    Итак, вернулся к не совсем завершенному лиспу "Смещение точек на линию". Благодаря помощи всемогущего Disney, лисп написан заново. Протестировал его работу на Цивил 2016-работает!
    Пользуйтесь на здоровье, кому нужно.
     

    Вложения:

    sergtor и BearDyugin нравится это.
  7. dimandos

    dimandos Форумчанин

    Всем здравствуйте. Есть возможность сделать лисп для отрисовки уклона/расстояния по линии?
    Такой лисп есть в пакете программа KAI-2001, называется "DRAWGRAD – отрисовка линий с заданными уклонами и/или высотными отметками, а также формирование графы «Расстояние – уклон»". Но программа платная, точнее пробная версия на несколько запусков.
    Смысл лиспа: берется полилиния, указывается 1 и 2, 2 и 3, 3 и 4, и т.д. точки, а ниже в чертеже создается графа с подчитаным уклоно/расстоянием. Картинку прилагаю.
    Заранее спасибо за ответ.
    уклон.JPG
     
  8. А поподробней можешь расписать а то что то не получается выбираю точки далее трассу (полилиния) и ничего не происходит
     
  9. borik

    borik Форумчанин

    dimandos,
    Уклон в каких единицах нужен?
    Масштаб гор. и верт.?
     
  10. ivsem

    ivsem Форумчанин

  11. Романыч

    Романыч Форумчанин

    Есть съемочные точки по оси трассы (например, дороги), при этом, ось трассы была определена "на глаз".
    Смысл лиспа: съемочные точки "посадить" на ось трассы по кратчайшему расстоянию (нормаль).
    Мануал: выбираем точки, выбираем ось, готово!
    --- Сообщения объединены, 30 сен 2016, Оригинальное время сообщения: 30 сен 2016 ---
    Похожая примочка есть в Geo_Tools от Андрея
     
    chehoff нравится это.
  12. BearDyugin

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

    Выложи чертеж, в котором ни чего не получается.
     
  13. dimandos

    dimandos Форумчанин

    Уклон в промилле
    Масштаб вертикальный 100, горизонтальный 500

    Спасибо за наводку, посмотрю.
     
  14. Всё получилось
     
  15. borik

    borik Форумчанин

    Высоту текста не уточнили, поэтому настраивал на 2.
    ::smile24.gif::
    Но менять высоту текста можно, только потом ручками придётся подкорректировать местоположение.
    ------------------------------
    ;;; Добавление величин уклонов в профиль для масштабов Мгор. 1:500 Мверт. 1:100
    ;;; на входе - существ. линия профиля
    ;;; на выходе - величина уклона и расстояние
    ;;; запуск из ком.строки: _uk500
     

    Вложения:

    • uk500.LSP
      Размер файла:
      3,8 КБ
      Просмотров:
      22
  16. rino_black

    rino_black Форумчанин

    Здравствуйте, нужно распечатать в pdf чертежи(планшеты) с заданными параметрами и желательно что бы сохранялись pdf в папке в которой лежит dwg. И может подскажите,как правильно сохранить настройки принтера и размер листа.
     

    Вложения:

  17. dimandos

    dimandos Форумчанин

    Спасибо огромное.
    А можно еще больше обленивить программу? ::rolleyes24.gif::
    Сейчас работает по принципу указал верх/низ таблицы, далее вручную указываешь точки на линии.
    Сделать чтобы: указал верх/низ таблицы, далее просто выбираешь линию профиля, так сказать автоматический режим.
    А еще лучше чтобы в 2х режимах работало в ручном и автоматическом.
     
  18. Здравствуйте, нужен lisp который растаскивает текст от углов полилиний как в примере.
     

    Вложения:

    bankolt нравится это.
  19. MrBrown

    MrBrown Форумчанин

    Здравствуйте!
    Есть макрос, поворачивающий выбранные примитивы "стадом", но каждый примитив - вокруг своего центра (вокруг центра описанного прямоугольника):
    Код:
    ;поворот примитивов стадом
    (defun c:srot (/ ERRCOUNT MAXPT MINPT MIPT MNPT MXPT 
    		  OBJSET VLAOBJ PTLST XLST YLST) 
     (vl-load-com) 
      (if(not srot:ang)(setq srot:ang (/ pi 2))) 
    	(setq oldAng srot:ang 
    		  srot:ang(getangle 
    		 (strcat"\nSpecify rotation angle <"(angtos srot:ang)">: ")) 
       ); end setq 
      (if(null srot:ang)(setq srot:ang oldAng)) 
      (setq errCount 0 
       ptLst '() 
       ); en setq 
      (while t 
    	(princ "\n§§§ Select objects and press Enter or Esc to Quit. §§§") 
     (if 
       (not(setq objSet(ssget "_I"))) 
       (setq objSet(ssget)) 
       ); end if 
      (if objSet 
    	(progn 
    	  (setq objSet 
    	   (mapcar 'vlax-ename->vla-object 
    					(vl-remove-if 'listp 
    					 (mapcar 'cadr(ssnamex objSet))))) 
    	  (foreach obj objSet 
       (vla-GetBoundingBox obj 'MinPt 'MaxPt) 
    	(setq mnPt(vlax-safearray->list MinPt) 
    	 mxPt(vlax-safearray->list MaxPt) 
    	 ptLst(append ptLst(list mnPt)) 
    	 ptLst(append ptLst(list mxPt)) 
    	 xLst(vl-sort ptLst (function(lambda(e1 e2)(<(car e1)(car e2))))) 
    	 yLst(vl-sort ptLst (function(lambda(e1 e2)(<(cadr e1)(cadr e2))))) 
    	 mxPt(list(caar(reverse xLst))(cadar yLst)) 
    	 mnPt(list(caar xLst)(cadar(reverse yLst))) 
    	 miPt(list(+(car mnPt)(/(-(car mxPt)(car mnPt))2)) 
    		 (+(cadr mnPt)(/(-(cadr mxPt)(cadr mnPt))2)) 
    		 0.0); end list	  
    	 ); end setq 
       ); end foreach 
       (foreach obj objSet  
    	(if 
    	  (vl-catch-all-error-p 
       (vl-catch-all-apply 'vla-rotate 
    	 (list obj(vlax-3D-Point miPt)srot:ang))) 
    	  (setq errCount(1+ errCount)) 
    	  ); end if 
       ); end foreach 
    	  (if(/= 0 errCount) 
       (princ(strcat "\n" (itoa errCount) " objects were on locked layer! ")) 
       ); end if 
    	  ); end progn 
    	); end if 
    	(setq ptLst nil) 
      ); end while 
    	  (princ) 
    	  ); end of c:srot
    Прошу, добавьте туда функцию RANDOM, чтобы из выбранных примитивов на указанный угол поворачивались бы не все, а какая-то часть (примерно 50%) выбранные макросом случайным образом. А оставшиеся не поворачивались бы, оставались бы как и были.
    Спасибо.
     
  20. sergtor

    sergtor Форумчанин

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