Author |
Topic |
bdfy
Belarus
267 Posts |
Posted - 11/10/2008 : 19:27:41
|
А Add-On Number Shapes не помогает? интересная вещь - не знал. но сделать пока не получается. пронумеровать мне нужно все только вертикальные линии. а на шейп таких линий две. попробовал разбить на отд. линии - автонумерация работать не хочет совсем. |
|
|
bdfy
Belarus
267 Posts |
Posted - 12/07/2008 : 12:12:21
|
снова появились вопросы. нужно несколько фигур связанных с одним рядом данных обьеденить в группу и сделать одним мастером. все попытки пока проваливаются (( файлик пример здесь. http://ofp.gamepark.cz/_hosted/lib4145/vedro/sx.rar в принципе основная для меня проблема - как обозначить (и сослаться потом) на имя всей группы в шейпшите фигуры-составляющей. |
Edited by - bdfy on 12/07/2008 12:18:00 |
|
|
Tumanov
Russia
1198 Posts |
Posted - 12/07/2008 : 13:33:31
|
quote: в принципе основная для меня проблема - как обозначить (и сослаться потом) на имя всей группы в шейпшите фигуры-составляющей.
Шейп-группа - это такой же шейп. У него тоже есть имя. Откройте Drawing Explorer (в меню View), смотрите там структуру шейпа и пишите ссылки. У группы есть коллекция Shapes, в которой видны все компоненты. Можно еще примерчик посмотреть. Если Вы объедините пару шейпов в группу, то по умолчанию ширина компонентов вычисляется из ширины группы. То есть в ячейке Width входящих шейпов стоит что-то типа =Sheet.4!Width*0.4167. Это и есть пример ссылки на группу. |
|
|
bdfy
Belarus
267 Posts |
Posted - 12/07/2008 : 14:33:52
|
quote: типа =Sheet.4!Width*0.4167. Это и есть пример ссылки на группу.
спасибо. я просто все пытался именами абсолютные типа line например присвоить группе- отсюда и мои проблемы.
одну группу сделать получается - инфа к ней линкуется как надо. а вот сделать мастер уже никак. линкование идет не пойми к чему если пробовать вытащить мастер на поле. даже скопировать корректно группу нельзя - уже прилинковать ничего не выходит. пример перезалил. в чем там дело ? http://ofp.gamepark.cz/_hosted/lib4145/vedro/sx.rar |
|
|
Tumanov
Russia
1198 Posts |
Posted - 12/07/2008 : 19:54:56
|
Не смог уловить суть вопроса :( Пример посмотрел. Понятнее не стало. |
|
|
bdfy
Belarus
267 Posts |
Posted - 12/08/2008 : 18:32:17
|
ладно. забудем. с пятого раза получилось переделать как нужно. задачка такая сейчас: есть данные в табличной форме о ветвях сети: номер начала | номер конца | мощность, напряжение|тип и т.д. смартшейп для рисования одной ветви я сделал только вот перетаскивать руками все ветви для построения не хочу. хочется макрос чтобы дерево ветвей строилось само. алгоритм в принципе понятен: - мастер-шейп ветви выкидываем на поле. - ищем мастер с номером конца ветви таким же как номер начала у новой ветви - лепим новую фигуру в конец старой вопросы: как поиск произвести по шейпам рабочей области чтобы найти шейп к которому нужно цеплятся ?
|
|
|
Tumanov
Russia
1198 Posts |
Posted - 12/08/2008 : 19:47:14
|
quote: ищем мастер с номером конца ветви
А в каком месте шейпа записан номер конца ветви? |
|
|
ESV
Ukraine
21 Posts |
Posted - 12/09/2008 : 06:32:24
|
quote: Originally posted by bdfy
как поиск произвести по шейпам рабочей области чтобы найти шейп к которому нужно цеплятся ?
Так это: - Перебрать все шейпы листа/документа; - Отобрать нужные шейпы по определенному признаку(например по наличию особых свойств, либо по содержимому особых свойств и т.д. и т.п.); - Среди отобранных шейпов произвести поиск шейпа с нужным номером конца ветви; - К найденному шейпу присобачить новый шейп. Фсе.
А лучше вообще никаке шейпы не искать. В процессе выполнения скрипта построения дерева можно создать массив полей, содержащий информацию по каждой ветви, включая ссылку на шейп, отображающий ветку на схеме. А далее работать непосредственно с этим массивом. Процесс значительно упростится, если создать класс для ветвей и далее представлять каждую ветку в виде отдельного обьекта.
________________________________________________________
Не надо ломать друг-другу глаза, используйте [cоde][/cоde] |
|
|
bdfy
Belarus
267 Posts |
Posted - 03/07/2009 : 13:26:55
|
в очередной раз прошу помощи. не получается сделать несколько смарт-шейпов. 1. шейп линия (linePU). - в надпись снизу упорно лезут ММ. не знаю как их убрать, можно конечно как строку обратать две последние буквы убрать, но не выход это имхо. - сама надпись находится выше точки controls которая ей задана. в чем дело ? и не первый раз уже такую проблему вижу (( 2. шейп узел-стрелка (uzel). всем хорош но к стрелке нужно еще прямоугольник добавить со значением (U). сейчас это отдельный шейп. пытался их сгруппировать, но тогда стрелка теряет свойства свои - ее больше нельзя вращать как линию. behavior крутить не помогло как сделать чтобы стрелка вращалась по кругу, а прямоугольник U при этом был в этом же мастере но просто стоял рядом (контролом расположение указывалось бы)
файл: http://ofp.gamepark.cz/_hosted/lib4145/vedro/smart.rar
|
|
|
Tumanov
Russia
1198 Posts |
Posted - 03/07/2009 : 17:18:00
|
1.1. Сформатировать надпись на каком-то этапе. Например, так =FORMAT(Scratch.X1,"0.0")&" км" 1.2. У надписи еще и высота текста нулевая... Может при отрицательном смещении что-то запутывается. Если текстовый блок позиционировать не Middle, а Top, то текст садится на Control. 2. Попробуйте следующий вариант: - Стрелке сказать Convert to Group. При этом она станет группой, но пустой. Поведение стрелки сохраняется. - Открыть полученную группу на редактирование (через Edit). - Перенести прямоугольник через буфер в открытую группу. Останется наверно немного повозиться с привязкой и вращением, но само соединение вроде работает. |
|
|
bdfy
Belarus
267 Posts |
Posted - 03/09/2009 : 21:01:20
|
спасибо огромное. с узлом все получилось. текст линии все равно как то странно смещается, чтобы я не пробовал. но это уже не так критично. |
|
|
Topic |
|