Как правильно пользоваться функцией vla-getboundingbox
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как правильно пользоваться функцией vla-getboundingbox

Как правильно пользоваться функцией vla-getboundingbox

Ответ
Поиск в этой теме
Непрочитано 12.10.2014, 13:51 #1
Как правильно пользоваться функцией vla-getboundingbox
granit201z
 
Проектировщик
 
Камышин
Регистрация: 17.08.2014
Сообщений: 118

у себя в проге создал текст, как vla-объект с именем tekst, решил его переместить:

(vla-Move tekst (vlax-3D-point x2 y2 0.0) (vlax-3D-point (getpoint "МЕСТО ВСТАВКИ\PВАШЕГО ТЕКСТА")))

в общем то он нормально перемещается. дальше - больше. захотел я чтобы это не просто текст был на чертеже, а с помощью отрезков сделать некоторое подобие выноски захотел я. но для этого мне нужны стали границы моего текста.

один умный товарищ посоветовал мне воспользоваться следующей конструкцией для получения, насколько я понял, ограничительных точек текста

(vla-getboundingbox tekst 'pmin 'pmax)

думал я, сейчас достану из pmin и pmax координаты точек и закатаюсь как сыр в масле, а не тут то было. конструкция вида:

(setq x_Min (nth 0 pmin)) ; извлечение координаты X точки в переменную
(setq y_Min (nth 1 pmin)) ; извлечение координаты Y точки в переменную

(setq x_Max (nth 0 pmax)) ; извлечение координаты X точки в переменную
(setq y_Max (nth 1 pmax)) ; извлечение координаты Y точки в переменную

не сработала. и заматерился автокад, сказав что-то о неверном типе данных. посмотрел я на тип данных pmin, а это нечто - safearray. Подскажите, как извлекать из этого сейфарея какие-нибудь данные (мне бы координаты точек надо), а то может я и вовсе не так умного товарища понял, и:

(vla-getboundingbox tekst 'pmin 'pmax)

предназначена совсем для другого?

Последний раз редактировалось granit201z, 12.10.2014 в 15:10.
Просмотров: 2940
 
Непрочитано 12.10.2014, 14:04
#2
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


раз уж ты программист, изволь воспользоваться поиском...
gomer вне форума  
 
Автор темы   Непрочитано 12.10.2014, 14:28
#3
granit201z

Проектировщик
 
Регистрация: 17.08.2014
Камышин
Сообщений: 118


спасибо за лесть, но программистом меня назвать нельзя, так как шарю в программировании я на школьном уровне, а программу писать надо - не хочу рутиной на работе работать. и коль скоро поиск дал бы мне хоть мало-мальски вразумительный ответ, тот час бы и я вопрос свой здесь не задал. ну а пока активно поиском я занимаюсь и вопрос открытым здесь пусть остается
granit201z вне форума  
 
Непрочитано 12.10.2014, 15:37
#4
nolte

спринклеры, сантехника
 
Регистрация: 26.01.2010
Сообщений: 190
Отправить сообщение для nolte с помощью Skype™


я еще и скромный
а вообще солидарен с gomer:drinks, дабы не задавать веселящих народ вопросов попробуй попользовать гугля или справку автокада там конечно же на ангельском языке все но понятно чего ты не так делаешь. да и дочитай совет умного человека до конца скачай книжку поможет очень.
__________________
Знание лисп: со справочником Н. Полещука
nolte вне форума  
 
Автор темы   Непрочитано 12.10.2014, 15:44
#5
granit201z

Проектировщик
 
Регистрация: 17.08.2014
Камышин
Сообщений: 118


Не можете ответить - не отвечайте, вы засоряете форум
granit201z вне форума  
 
Непрочитано 12.10.2014, 16:01
#6
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


А хотя бы попытка поиска была предпринята? Примеров использования на LISP этой функции - масса. Как здесь, так и на других ресурсах.
Можно, конечно, и прямой ответ дать, но зачем приучать к плохому?
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 12.10.2014, 16:24
#7
nolte

спринклеры, сантехника
 
Регистрация: 26.01.2010
Сообщений: 190
Отправить сообщение для nolte с помощью Skype™


да согласен granit201z, это злит и бесит, но поверь ребята здесь не вредные (за исключением гомера) и за такие ответы я им благодарен, ведь ответ как найти эти точки, а найти их просто, кто знает это (setq pmin(vlax-safearray->list pmin)), породит еще два следующих вопроса и так до бесконечности.

вот стесняюсь спросить чего же ты в гугль писал, что с 11 утра не мог найти ответ на вопрос.
второй сайт с запроса в гугль "(vla-getboundingbox"
Миниатюры
Нажмите на изображение для увеличения
Название: 34444.JPG
Просмотров: 37
Размер:	89.8 Кб
ID:	136611  
__________________
Знание лисп: со справочником Н. Полещука

Последний раз редактировалось nolte, 12.10.2014 в 16:34.
nolte вне форума  
 
Непрочитано 12.10.2014, 16:27
#8
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


granit201z, не хами.
Читай: http://help.autodesk.com/view/ACD/20...7-709154CEEE09
Там очень короткий пример на VisualLisp. Гуглится в течении 5 секунд: http://www.google.com/search?q=vla-getboundingbox - третья по порядку ссылка.
Александр Ривилис вне форума  
 
Непрочитано 12.10.2014, 17:03
#9
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


granit201z, у нас тут своя мафия и даже есть свой статут, первое положение которого звучит следующим образом: "Формулировки типа сделайте за меня - НЕ КАТЯТ"
Второй момент - базовые вопросы по программированию на языке AutoLISP обсуждаются здесь
пысы интересно у вас поиск работает, я тут ввел и по первой же ссылке получил ответ. Следует отметить, что vla-getboundingbox - чуть ли не единственная функция, в которую аргументы передаются по ссылке, а не по значению.
пысыпысы Всем желающим приобщиться к программированию рекомендую развивать интеллект и не стоит бояться трудностей. Сделать по шаблону, как многие привыкли, тут не всегда получится. И рыть, рыть, рыть.
gomer вне форума  
 
Непрочитано 12.10.2014, 19:22
#10
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Цитата:
Сообщение от gomer Посмотреть сообщение
Сделать по шаблону, как многие привыкли, тут не всегда получится.
Точнее сказать - по шаблону уже большинство сделано за это время. Если удовлетворяют готовые решения - пользоваться ими. Хочется иметь "кнопочку под себя" с функционалом, отсутствующим в базовой программе и не написанным ранее добрыми людьми - вэлкам в программирование. А тут уж кто чем может участвовать в процессе - кто мозгами и прямыми руками, кто кошельком.
Сергей812 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как правильно пользоваться функцией vla-getboundingbox



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разработка ПОС, искусство проектирования Tyhig Технология и организация строительства 117 25.11.2021 17:38
"Подслой" - есть ли такое? Малюк AutoCAD 26 07.09.2019 18:15
У кого-нибудь было такое, что "пожарники" при приемке здания заставляли сдирать/менять покрытие пола ? (Где в Питере?) drill_man Разное 7 31.08.2012 01:59
Что такое PROXY-объекты Mazai Программирование 3 11.05.2012 15:44
Что такое источник освещения Л.Л. и Л.Н. MegaIZIK Архитектура 1 12.10.2011 15:55