Реклама i
Стань нашим партнером - зарабатывай с нами!
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как задать высоту границ MText?

Как задать высоту границ MText?

Ответ
Поиск в этой теме
Непрочитано 26.04.2018, 13:22 #1
Как задать высоту границ MText?
PS_dwg
 
Регистрация: 26.04.2018
Сообщений: 1

Есть чертеж продольного профиля. На нем есть отметки высот двух точек и горизонтальное расстояние между ними:
считаю уклон d=(a-b)/c.

Код применяю такой:
Код:
[Выделить все]
(vl-load-com)

(defun C:uklon (/ adoc ins_point model mtext)
(vla-startundomark (setq adoc (vla-get-activedocument (vlax-get-acad-object))))
  (setq model (vla-get-modelspace adoc))
 (setq ss1 (ssget "_:s") ;формируем уменьшаемое
	   ss2 (ssget "_:s") ;формируем вычитаемое
	   dl1 (ssget "_:s") ;формируем длину
      );_ end of setq
(setvar 'dimzin 0)
  (setq dentss1 (entget (ssname ss1 0)) ;извлекаем примитив по имени элемента cnt из набора
        dentss2 (entget (ssname ss2 0))
		dentdl1 (entget (ssname dl1 0))
	txtss1 (vl-string-subst "." "," (cdr (assoc 1 dentss1))) ;извлекаем элемент из списка, извлекаем подсписок без первого эл-та
	txtss2 (vl-string-subst "." "," (cdr (assoc 1 dentss2)))
	txtdl1 (cdr (assoc 42 dentdl1))
	dlt (/(- (atof txtss1) (atof txtss2)) txtdl1)
	txtukl (rtos dlt 2 3)
        );_ end of setq
		
   (while (= (type (setq ins_point (vl-catch-all-apply
                                         (function 
                                           (lambda () (trans (getpoint "\nУкажите точку вставки <Ћтмена> : ") 1 0)
                                           );_ end of lambda
                                          );_ end of function
                                   );_ end of vl-catch-all-apply
                             );_ end of setq
                       );_ end of type
                 'list
                 );_ end of =
              ins_point
			
    (vla-put-attachmentpoint
      (setq mtext (vla-addmtext
                    model
                    (vlax-3d-point ins_point)
					8
                    (vl-string-subst "," "." txtukl);_ end of strcat
                    );_ end of vla-addmtext
            );_ end of setq
      acAttachmentPointTopLeft
	  	        );_ end of vla-put-attachmentpoint
    (vla-put-height mtext 2.5)
	(vla-put-AttachmentPoint mtext acAttachmentPointMiddleCenter)
    );_ end of while
(vla-endundomark adoc)
(princ)
);defun
Это сборная солянка с моими изменениями.
Подскажите как мне задать высоту рамки мультитекста в 5 пунктов, как у текста "е"? Ширину задаю 8, это - просто, а как высоту задать (по entget характеристики примитива 41 и 46 соответственно)? Неужели только заменой?

Последний раз редактировалось PS_dwg, 27.04.2018 в 08:31. Причина: добавление поясняющей картинки
Просмотров: 1620
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как задать высоту границ MText?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как изменить высоту всего многострочного текста на чертеже zenija2007 AutoCAD 20 15.10.2020 17:41
Как задать произвольное сечение стальной балки в ЛИРА-САПР 2013? elokhim Лира / Лира-САПР 76 04.04.2019 20:06
Как задать цвет для многострочного текста группой sergey12 AutoCAD 5 09.02.2018 12:17
Как задать угол от линии, точнее задать нулевую привязку. L.NighT`s AutoCAD 5 27.05.2010 02:15
Viewport и как задать масштаб для начинающих N.G. AutoCAD 17 01.04.2010 13:24