Нумерация существующих объектов произвольной формы
makatena / 13.01.2012, 20:48/00:41
Форум:
Нужно пронумеровать уже существующие объекты, они произвольной формы...размер номеров может меняться т.к. объекты разных размеров.. при этом нада чтобы номерок был обязательно внутри объекта. Помогите найти решение.
А впечатать номера в объекты не пробовали? :) Или там какой-то "подводный камень" с вставкой номеров? По вопросу не ясно, в чем собственно проблема с вставкой? Если Вы хотите макрос такой, это другой вопрос, а если ручками, то не понятно, что же там не получается.
Извиняюсь, не заметил сразу, что вопрос в разделе макросов. Это надо у Sancho спрашивать.
Решение простое. Печатаем через пробел нужные номера, разбиваем на объекты клавишей Ctrl-K, далее воспользоваться пипеткой аттрибутов с установленной "галкой" Преобразование/Расположить (Transformations/Position). Тыкаем пипеткой сначала на нужный объект, затем с зажатым шифтом на необходимый номер.
Пипетка не совсем то что нужно, она вставляет объект по центу, но фигуры иногда бывают затейливой формы что реально номе не попадает во внутрь контура (надеюсь понятно объяснила). Да и суть вопроса автоматизировать процесс, т.к. деталек бывает под 1000
Если нужен готовый макрос, я такого не знаю. А если хотите сами писать то спрашивайте что конкретно не понятно.
Вопрос в самом алгоритме вставления и по какому признаку проверять, лежит ли номер внутри объекта, если бы это был круг например можно проверить формулой, а вот если форма всегда произвольная и все объекты разные и по форме и по размеру... вообще реально ли это?
Makatena, то, что вы просите, на мой взгляд, несколько превышает обычную дружескую помощь на форуме. Вам нужен серьезный макрос с проверкой пересечений объекта и номера, циклом для проверки всех деталек, корректировкой размера номера в соответствии с размером детали. Это вам нужно к программистам обращаться. За денежку те могут написать требуемое. Судя по количеству деталек, с которыми приходится оперировать, вы работаете в серьезной компании и там наверняка могут позволить себе сделать такой оплаченный заказ макроса.
вот если форма всегда произвольная и все объекты разные и по форме и по размеру
То есть для начала надо еще выяснить, где эти номера есть, а где их еще нету? Там если хоть какие-то есть у этих номеров-фигур общие признаки, то есть такая функция Find, она объединяет объекты по признакам в ShapeRange и потом с ними можно что-то сделать (я бы все уже проставленные номера удалила для простоты, а то действительно какая-то задача запутанная)