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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Поиск в чертеже свободного места для размещения текста

Поиск в чертеже свободного места для размещения текста

Ответ
Поиск в этой теме
Непрочитано 03.06.2013, 08:38 #1
Поиск в чертеже свободного места для размещения текста
swkx
 
Регистрация: 22.01.2010
Сообщений: 311

День добрый.

Тема не совсем правильная. На самом деле задача обратная.
Есть довольно насыщенный чертеж. Допустим, мне нужно разместить текст "АБВГД123" в точке (x y)

Есть ли возможность программно проверить, не заденет ли мой текст остальные объекты чертежа ?
Просмотров: 3108
 
Непрочитано 03.06.2013, 08:40
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


Теоретически есть. На каком языке пишешь?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.06.2013, 08:54
#3
swkx


 
Регистрация: 22.01.2010
Сообщений: 311


На лиспе.
swkx вне форума  
 
Непрочитано 03.06.2013, 09:00
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


Тогда через (textbox) определяешь примерные габариты текста, ставишь его на место и определяешь пересечения с примитивами.
Есть вариант поиграться с vla-getboundingbox, но суть от этого не меняется.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.06.2013, 09:08
#5
swkx


 
Регистрация: 22.01.2010
Сообщений: 311


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

Правильно ?
swkx вне форума  
 
Непрочитано 03.06.2013, 09:17
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


Как бы да. Но кто мешает временно поставить зум окна с габаритами, процентов на 15-20 отличающихся от габаритов текста, выполнить (ssget "_W"...) и обрабатывать эти куски (потом вид, конечно, вернуть обратно)? Единственное "но" - обработка ВЭ и примитивов в них. Там головняка может быть в разы больше...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.06.2013, 09:24
#7
swkx


 
Регистрация: 22.01.2010
Сообщений: 311


Стоп. Неожиданно пришло в голову:
А если я выполню (ssget "_W") c координатами прямоугольника габаритов текста, и результатом этого набора будет nil, то я могу быть уверен, что место свободно ?
Я ничего не упустил ?
swkx вне форума  
 
Непрочитано 03.06.2013, 09:35
#8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


А ты работаешь с пространстве модели или в листе?
И вот еще - этот кусок обязательно должен быть на экране. Без вариантов.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.06.2013, 09:41
#9
swkx


 
Регистрация: 22.01.2010
Сообщений: 311


В модели.
А кто мне мешает проверяемый в данный момент кусок чертежа поместить в центре экрана ?
Это всё же гораздо проще, чем перелопатить все примитивы.
swkx вне форума  
 
Непрочитано 03.06.2013, 09:55
#10
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


А я про что говорил?
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
временно поставить зум окна с габаритами, процентов на 15-20 отличающихся от габаритов текста, выполнить (ssget "_W"...) и обрабатывать эти куски (потом вид, конечно, вернуть обратно)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.06.2013, 10:02
#11
swkx


 
Регистрация: 22.01.2010
Сообщений: 311


Ну да, про то же самое.

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Единственное "но" - обработка ВЭ и примитивов в них
Меня, наверное, эта фраза сбила с толка. Сразу не дошло, что не нужно обрабатывать примитивы в окне, а достаточно проверить сам факт их наличия или отсутствия.

Лето в Питере. Мозг расслаблен)
swkx вне форума  
 
Непрочитано 03.06.2013, 10:09
#12
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


А у меня больничный
Смотри, если ты работаешь в листе, то расположение текста может не перекрывать примитивы листа, но закрывать собою примитивы модели, которые показываются в видовом экране. Тебе надо отслеживать подобные коллизии или нет?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.06.2013, 11:04
#13
swkx


 
Регистрация: 22.01.2010
Сообщений: 311


Думаю, нет. Я в модели работаю.
swkx вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Поиск в чертеже свободного места для размещения текста

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск фрагмента текста в текстовых файлах Nike Разное 23 14.05.2019 07:14
Групповой поиск и замена текста Torino Программирование 22 05.03.2016 23:00
существует ли поиск текста? татьяна! AutoCAD 3 27.03.2009 15:47
Поиск и замена текста на чертежах Autodesk Inventor Бриг Прочее ПО от Autodesk 4 21.01.2009 17:05
поиск слов в чертеже anela AutoCAD 7 29.02.2008 08:23