Uxx Posted January 10 Report Share Posted January 10 Добрый день. Лисп расставляет длины сегментов полилинии в виде мультивыносок (с доп. параметрами). В автокаде работает (единственное почему то то полилиния должна быт не видна на экране при работе лиспа, если видна, то вставляет мультивыноски не посередине сегментов полилинии, а в вершины), но меня устраивает. А вот в нанокаде не хочет(не заполняет mtext мультивыноски, в командной строке все считает) Может кто подскажет как под нанокад переделать? DLINA.LSP В нанокаде.dwg Quote Link to comment Share on other sites More sharing options...
EdwardSt Posted January 10 Report Share Posted January 10 Попробуйте приложенный скрипт Внес некоторые усовершенствования: 1. Возможность использования кривых сегментов 2. проверка корректности ввода некоторых (не всех!) значений Не проверял на полилиниях с дублированными вершинами и всякими другими хитрыми расположениями. Точно выявлено, что некорректно работает при измененной ПСК (но это относится и к исходному срипту). DLINA1.lsp 3 Quote Link to comment Share on other sites More sharing options...
Uxx Posted January 11 Report Share Posted January 11 EdwardSt, спасибо. Quote Link to comment Share on other sites More sharing options...
aerohost Posted April 28 Author Report Share Posted April 28 Товарищи. У кого то получилось с помощью lisp у мультивыноски включать выключать фон и менять цвет фона и ширина фона? Quote Link to comment Share on other sites More sharing options...
EdwardSt Posted April 28 Report Share Posted April 28 Делал это на мтекстах и многострочных атрибутах. Вроде, там все прозрачно. Quote Link to comment Share on other sites More sharing options...
aerohost Posted April 28 Author Report Share Posted April 28 44 минуты назад, EdwardSt сказал: Делал это на мтекстах и многострочных атрибутах. Вроде, там все прозрачно. Ну под Мтекст у меня есть лисп, вроде даже с тобой дорабатывали. Вот с Мультивыносками произошел затык. Quote Link to comment Share on other sites More sharing options...
EdwardSt Posted April 28 Report Share Posted April 28 Маленький пример использования (defun c:tt ( / a) (setq a (car (entsel))) (change_mleader_back a 1 0 -1023410175 1.2) ) ;vis - 1,0 Заливка фона текста вкл/выкл ;useback - 1,0 Использовать/не использовать цвет фона чертежа ;color - цвет фона (очень заморочно. советую не использовать) ;size - (1.0 - 5.0) Коэф перекрытия ; ;для любого параметра можно применить nil, чтоб его не использовать (defun change_mleader_back (el vis useback color size / a d) (setq d (entget el) spk nil) (if vis (setq spk (cons (cons 292 vis) spk))) (if useback (setq spk (cons (cons 291 useback) spk))) (if color (setq spk (cons (cons 91 color) spk))) (if size (setq spk (cons (cons 141 size) spk))) (foreach a spk (setq d (subst a (assoc (car a) d) d))) (entmod d) (prin1) ) Только цвет фона лучше не трогать. Там как-то заморочно он управляется. Когда-то разобрался, но сейчас уже и не вспомню. Лучше использовать цвет фона в качестве заливки. Тогда вызов будет (change_mleader_back a 1 1 nil 1.2) 1 1 Quote Link to comment Share on other sites More sharing options...
aerohost Posted April 28 Author Report Share Posted April 28 (edited) 1 час назад, EdwardSt сказал: Маленький пример использования (defun c:tt ( / a) (setq a (car (entsel))) (change_mleader_back a 1 0 -1023410175 1.2) ) ;vis - 1,0 Заливка фона текста вкл/выкл ;useback - 1,0 Использовать/не использовать цвет фона чертежа ;color - цвет фона (очень заморочно. советую не использовать) ;size - (1.0 - 5.0) Коэф перекрытия ; ;для любого параметра можно применить nil, чтоб его не использовать (defun change_mleader_back (el vis useback color size / a d) (setq d (entget el) spk nil) (if vis (setq spk (cons (cons 292 vis) spk))) (if useback (setq spk (cons (cons 291 useback) spk))) (if color (setq spk (cons (cons 91 color) spk))) (if size (setq spk (cons (cons 141 size) spk))) (foreach a spk (setq d (subst a (assoc (car a) d) d))) (entmod d) (prin1) ) (defun c:tt ( / a) (setq a (car (entsel))) (change_mleader_back a 1 0 -1023410175 1.2) ) ;vis - 1,0 Заливка фона текста вкл/выкл ;useback - 1,0 Использовать/не использовать цвет фона чертежа ;color - цвет фона (очень заморочно. советую не использовать) ;size - (1.0 - 5.0) Коэф перекрытия ; ;для любого параметра можно применить nil, чтоб его не использовать (defun change_mleader_back (el vis useback color size / a d) (setq d (entget el) spk nil) (if vis (setq spk (cons (cons 292 vis) spk))) (if useback (setq spk (cons (cons 291 useback) spk))) (if color (setq spk (cons (cons 91 color) spk))) (if size (setq spk (cons (cons 141 size) spk))) (foreach a spk (setq d (subst a (assoc (car a) d) d))) (entmod d) (prin1) ) Только цвет фона лучше не трогать. Там как-то заморочно он управляется. Когда-то разобрался, но сейчас уже и не вспомню. Лучше использовать цвет фона в качестве заливки. Тогда вызов будет (change_mleader_back a 1 1 nil 1.2) Спасибо, попробуем upd. В целом все работает Честно говоря я не понял что отвечает за рамку Не уж то это ? -1023410175 ? Спойлер Edited April 28 by aerohost Quote Link to comment Share on other sites More sharing options...
lidia.antipina.ru Posted May 1 Report Share Posted May 1 (edited) Насчет работы с цветом - см. BGCOLOR из Edited May 1 by lidia.antipina.ru 2 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.