Author |
Topic |
|
zz 5
Russia
54 Posts |
Posted - 05/15/2006 : 14:45:53
|
Здраствуйте. Встала острая необходимость создать свой трафарет, своего рода рамку, единую для всех черчежей. За основу взял рамку, скаченную с этого сайта http://visio.artberg.ru/loading.htm#a003. Когда начал разбираться в ней, что да как, возникло три вопроса. Все они будут касаться второго элемента, а именно штамка.
1. Что за свойства LocPinX, LocPinY ? Чем они отличаются от PinX, PinY ?
2. В этом трафарете все элементы сгруппированны в один, у которого же прописано автопозиционирование. Так вот в строчке: Width==GUARD(183 mm/ThePage!PageScale*ThePage!DrawingScale) Что значит ThePage!PageScale*ThePage!DrawingScale вот это выражение ?
3. Если выбрать какой-нибудь дочерний элемент группы и посмотреть его на листе, то увидим, что для длины стоит следующая формула: Width==Sheet.5!Width*0.3784. Вопрос в том, что фигуры Sheet.5 я не нашел на диаграмме. По логике понятно, что это главный сгруппированный элемент, но найти его на листе я его так и смог. Почему ?
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! |
Edited by - zz 5 on 05/15/2006 14:48:25 |
|
zz 5
Russia
54 Posts |
Posted - 05/15/2006 : 17:57:22
|
Худо-бедно вроде бы разобрался. Хотя продвигается, ну очень долго. Все приходится проверять методом проб и ошибок. К сожалению, нормальной документации я так и не смог найти. Появился еще вопросик в догонку. Вот допустим создал я штамп, который автоматически позиционируется на листе. Он состоит из многих элементов, которые сгруппированыы в один. Так вот, по независящим каким-то причином, необходимо добавить в существующюю группу еще один элемент в имеющююся группу. Существует ли способ, при котором не пришлось бы заново прописывать все автопозиционирование для каждого элемента ? И если есть, в чем он заключается ?
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! |
|
|
Tumanov
Russia
1198 Posts |
Posted - 05/15/2006 : 18:47:20
|
Если Вы откроете группу для редактирования Edit / Open Group, то сможете добавить в нее элементы или изменить их. Редактирование никак не повлияет на свойства других элементов группы. Все связывающие формулы рушатся только в том случае, когда Вы разгруппировываете группу, а потом группируете заново. В этом случае в момент разгруппировывания пропадает шейп-группа, естественно вместе со всеми ссылками на него. |
|
|
zz 5
Russia
54 Posts |
Posted - 05/16/2006 : 09:48:28
|
Спасибо, то, что нужно. И еще: ThePage!PageScale*ThePage!DrawingScale, чем они принципиально отличаются ? Во всех примерах используется такая конструкция, смысл понимаю, что это идет корректировка в соотвествие с маштабом, но что каждое из них поотдельности обозначает не могу понять
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! |
|
|
Julia
Russia
23 Posts |
|
immortal
Russia
391 Posts |
Posted - 05/16/2006 : 13:31:28
|
quote: Originally posted by zz 5
Появился еще вопросик в догонку. Вот допустим создал я штамп, который автоматически позиционируется на листе. Он состоит из многих элементов, которые сгруппированыы в один. Так вот, по независящим каким-то причином, необходимо добавить в существующюю группу еще один элемент в имеющююся группу. Существует ли способ, при котором не пришлось бы заново прописывать все автопозиционирование для каждого элемента ? И если есть, в чем он заключается ?
quote: Если Вы откроете группу для редактирования Edit / Open Group, то сможете добавить в нее элементы или изменить их. Редактирование никак не повлияет на свойства других элементов группы.
есть на мой взгляд более лёгкий способ (я уже о нём тут писал(ударение на букву а)): Выделяем группу, потом удерживая клавишу контрл выделяем шейп или шейпы которые хотите добавит в группу, нажимаем меню Shape - Grouping - Add to group и наслаждаемся
quote: Все связывающие формулы рушатся только в том случае, когда Вы разгруппировываете группу, а потом группируете заново. В этом случае в момент разгруппировывания пропадает шейп-группа, естественно вместе со всеми ссылками на него.
уточняю, если вы группируете группу с шейпом то связи конечно не пропадают, но получается следующая иерархия связей:
допустим у нас было 3 шейпа (шейп1, шейп2,шейп3) мы объединили их получили группа 1 (объединив, фактически добавили ещё один шейп) , далее полученное объединили с шейпом 4 (фактически добавили новый шейп) в итоге иерархия такая:
группа2 -группа1 --шейп1 --шейп2 --шейп3 -шейп4
соответственно шейпы 1-3 имеют связку с группа1, а группа1 и шейп4 связи с группа 2
причём в данном случае у нас шесть шейпов (группа это тоже шейп), это можно сократить (а я именно так и рекомендую всегда делать) их до 4, чтобы было не 6 а 4, вот так: шейп1 -шейп2 -шейп3 -шейп4
берём выделяем шейп1, нажимаем меню Shape - Grouping - Convert to group
а остальные шейпы присоединяем ранее описанным мною методом, а именно: Выделяем группу(шейп1), потом удерживая клавишу контрл выделяем шейпы2,3 и 4 которые надо добавить в группу, нажимаем меню Shape - Grouping - Add to group и наслаждаемся
при разгруппировании просто шейп группы удаляется.
визио 2003 форэвер
...а вобще-то я белый и пушистый. |
|
|
Digitall
Russia
389 Posts |
Posted - 05/16/2006 : 23:23:03
|
Здраствуйте. Встала острая необходимость создать свой трафарет, своего рода рамку, единую для всех черчежей. За основу взял рамку, скаченную с этого сайта http://visio.artberg.ru/loading.htm#a003. Когда начал разбираться в ней, что да как, возникло три вопроса. Все они будут касаться второго элемента, а именно штамка. На сколько я смог понять, участь пала на мой штамп.
1. Что за свойства LocPinX, LocPinY ? Чем они отличаются от PinX, PinY ? PinX и PinY - это координата X и соответственно Y центра фигуры(не края, а именно центра) относительно начала координат листа.
LocPinX и LocPinY - это координаты центра фигуры.
2. В этом трафарете все элементы сгруппированны в один, у которого же прописано автопозиционирование. Так вот в строчке: Width==GUARD(183 mm/ThePage!PageScale*ThePage!DrawingScale) Что значит ThePage!PageScale*ThePage!DrawingScale вот это выражение ? Значение этого выражения - коэффициент масштаба. Вкратце.
3. Если выбрать какой-нибудь дочерний элемент группы и посмотреть его на листе, то увидим, что для длины стоит следующая формула: Width==Sheet.5!Width*0.3784. Вопрос в том, что фигуры Sheet.5 я не нашел на диаграмме. По логике понятно, что это главный сгруппированный элемент, но найти его на листе я его так и смог. Почему ? Это сделано намерено, чтобы пользователь не мог изменять структуру штампа.
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! No comments |
|
|
Digitall
Russia
389 Posts |
Posted - 05/16/2006 : 23:30:38
|
Худо-бедно вроде бы разобрался. Хотя продвигается, ну очень долго. Все приходится проверять методом проб и ошибок. К сожалению, нормальной документации я так и не смог найти. Появился еще вопросик в догонку. Вот допустим создал я штамп, который автоматически позиционируется на листе. Он состоит из многих элементов, которые сгруппированыы в один. Так вот, по независящим каким-то причином, необходимо добавить в существующюю группу еще один элемент в имеющююся группу. Существует ли способ, при котором не пришлось бы заново прописывать все автопозиционирование для каждого элемента ? И если есть, в чем он заключается ? Вообще, идея и структура данного штампа абсолютно прозрачна. Поясню: Все автопозиционирующиеся элементы - это всего лишь блоки, и автопозиционирование не зависит от "наполнения" этого блока. Я сам уже несколько лет использую это идеологию и на основе этого штампа сделал, нет, с легкостью отредактировал, уже с десяток всевозможных рамок и штампов.
Все просто, вы открываете "блок", редактируете его, и все работает.
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! No comments... |
|
|
Digitall
Russia
389 Posts |
Posted - 05/16/2006 : 23:47:42
|
Спасибо, то, что нужно. И еще: ThePage!PageScale*ThePage!DrawingScale, чем они принципиально отличаются ? Во всех примерах используется такая конструкция, смысл понимаю, что это идет корректировка в соотвествие с маштабом, но что каждое из них поотдельности обозначает не могу понять ThePage!PageScale - это ячейка таблицы ShapeSheet листа, которая показывает единицы измерения листа (физические). ThePage!DrawingScale - это ячейка таблицы ShapeSheet листа, которая показывает, чему она будет равняться (при масштабе).
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! Это походу приписка к постам? Я уж подумал, что это в мой огород |
|
|
zz 5
Russia
54 Posts |
Posted - 05/17/2006 : 10:56:54
|
Ну, подпись у меня такая .
quote: PinX и PinY - это координата X и соответственно Y центра фигуры(не края, а именно центра) относительно начала координат листа. LocPinX и LocPinY - это координаты центра фигуры.
Так чем же они отличаются ? Loc*** это координаты центра фигуры относительно левого нижнего угла фигуры или нет ?
Если автор пишет о том, чего не понимает, его работа будет понята только теми читателями, которые понимают в этом больше, чем он ! |
|
|
brace
Russia
358 Posts |
|
immortal
Russia
391 Posts |
Posted - 05/17/2006 : 11:19:00
|
quote: 1. Что за свойства LocPinX, LocPinY ? Чем они отличаются от PinX, PinY ? PinX и PinY - это координата X и соответственно Y центра фигуры(не края, а именно центра) относительно начала координат листа.
LocPinX и LocPinY - это координаты центра фигуры.
не совсем так, quote: Так чем же они отличаются ? Loc*** это координаты центра фигуры относительно левого нижнего угла фигуры или нет ?
практически все координаты в шейпе локальные, т.е. имеют отношение к ячейкам внутри шейпа, координаты ПинХ и ПинУ абсолютные относительно листа, а координаты ЛокПинХ и ЛокПинУ локальные координаты шейпа определяют смещение всех других координат шейпа относительно абсолютных координат, т.е. допустим у нас геометрия имеет две ячейки (Х/У) 0 мм/0мм и 60мм/50 мм, т.е. есть линия, расположение этой линии на листе определяется координатами ПинХ и ПинУ, допустим ПинХ=10мм ПинУ=20мм соответственно получается начало относительно листа 10/20 конец 70/70мм, но это при условии что локального смещения нет, если есть локальное смещение, то координата линии будет равна
ПоХ = ПинХ-ЛокПинХ
по У соответственно. обратите внимание на ФлипХ и ФлипУ, тоже определяют положение локальных координат
вот както примерно так
а центр шейпа, потомучто в ямейке написано Видтх/2 и Хейгхт/2
достаточно интересное решение сделано у меня относительно штампов, рекомендую http://www.immortal.vstu.edu.ru/index.php?name=Files&op=view_file&lid=9
quote: поиск рулит... и гугле см. здесь
а если я непорусски не знаю? то что рулит (или кто)?
визио 2003 форэвер
...а вобще-то я белый и пушистый. |
Edited by - immortal on 05/17/2006 11:22:41 |
|
|
Tumanov
Russia
1198 Posts |
Posted - 05/17/2006 : 18:37:40
|
Не совсем так :) У шейпа нет центра (в ShapeSheet). Но у шейпа есть центр вращения. Вот к этой точке все и привязывается. Остальное сказали верно. LocPinX, LocPinY определяют координаты центра вращения относительно левого нижнего угла прямоугольника, описывающего шейп. PinX, PinY определяют координаты центра вращения относительно левого нижнего угла страницы. Можно, например, вписать в LocPinX, LocPinY нули. Тогда центр вращения будет в уголке. И шейп будет реально вращаться вокруг этого угла. И PinX, PinY покажут расстояние между углом страницы и углом описанного прямоугольника. |
|
|
immortal
Russia
391 Posts |
Posted - 05/18/2006 : 11:34:36
|
:-)
quote: LocPinX, LocPinY определяют координаты центра вращения относительно левого нижнего угла прямоугольника, описывающего шейп
не совсем левого угла, FilpX установите в TRUE и будет вращаться относительно правого, FlipY установите в TRUE и будет относительно верха
визио 2003 форэвер
...а вобще-то я белый и пушистый. |
|
|
|
Topic |
|
|
|