Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: drunkwolfs от 30-01-2017, 17:41:03

Название: Как проверить к какой части блока присоединена линия?
Отправлено: drunkwolfs от 30-01-2017, 17:41:03
Как проверить к какой части блока присоединена линия? (центр, угл, центр грани)
(еще интересует как проверить присоединена ли вообще линия к блоку или нет)
(https://s30.postimg.org/bjjlk0qa5/Ashampoo_Snap_2017_01_30_17h20m57s_002.png) (https://postimg.org/image/bjjlk0qa5/)

(https://s30.postimg.org/93hs6687h/Ashampoo_Snap_2017_01_30_17h06m55s_001.png) (https://postimg.org/image/93hs6687h/)
Название: Re: Как проверить к какой части блока присоединена линия?
Отправлено: Александр Ривилис от 30-01-2017, 18:17:55
Крайне странный вопрос.
1. Я не понимаю, что такое "часть блока". Что это в терминах примитивов AutoCAD? Какая форма может быть у блока?
2. Нет понятия "присоединённая линия". Что ты под этим понимаешь?
Определись с терминами - тогда можно будет сделать постановку задачи и попытаться решить её.
Название: Re: Как проверить к какой части блока присоединена линия?
Отправлено: drunkwolfs от 31-01-2017, 16:36:53
Крайне странный вопрос.
1. Я не понимаю, что такое "часть блока". Что это в терминах примитивов AutoCAD? Какая форма может быть у блока?
2. Нет понятия "присоединённая линия". Что ты под этим понимаешь?
Определись с терминами - тогда можно будет сделать постановку задачи и попытаться решить её.
Простите, я не проектировщик. Под частью блока подразумевается область (точка) к которой при поднесение одного из концов линии предлагается присоединить ее. (появляется зеленый крестик или квадратик на блоке)
Присоединённая линия (в данном случае к блоку) для меня это линия один из концов которой расположен вплотную к чем либо (к блоку).
Вопрос в следующем - Есть ли встроенный в автокад (стандартный) метод позволяющий определить что один из концов линии вплотную присоединен к блоку?
Если нет то:
1. Как найти границы блока?
2. Есть ли встроенный метод которому я могу отправить айди объектов(или их границы) и в качестве результата получить минимальное расстояние между ними?
Название: Re: Как проверить к какой части блока присоединена линия?
Отправлено: Александр Ривилис от 31-01-2017, 16:51:30
Есть ли встроенный в автокад (стандартный) метод позволяющий определить что один из концов линии вплотную присоединен к блоку?
Нет. Такого метода нет.
1. Как найти границы блока?
Нет понятия границы блока. Точнее есть BoundingBox, но это вряд ли то, что тебя интересует.
Если в блоке только кривые (наследники Curve - отрезки, полилинии, дуги и т.д.), то можно найти расстояние от концов линии до этих кривых.