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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > масштабирование пунктирных линий

масштабирование пунктирных линий

Ответ
Поиск в этой теме
Непрочитано 07.07.2008, 11:50 #1
масштабирование пунктирных линий
Marianna
 
Landscape
 
Moscow
Регистрация: 17.12.2006
Сообщений: 23

Подскажите пожалуйста, никак не пойму как масштабировать линии. Например, есть в чертеже зигзаг и пунктир. Выставляю global scale factor - зигзаг - подходящий масштаб, а пунктирный - не подходящий. Выбираю пунктирную линию выставляю current object scale, но ничего не изменяется. Выбираю пунктирную линию выставляю global scale - меняются все масштабы линий. Как же это правильно делать?
Просмотров: 23856
 
Непрочитано 07.07.2008, 11:52
#2
Кулик Алексей aka kpblc
Moderator

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


Перепутаны ltscale и celtscale ИМХО.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 07.07.2008, 12:05
#3
Marianna

Landscape
 
Регистрация: 17.12.2006
Moscow
Сообщений: 23


Можно дурацкий вопромс? А что это такое? И как его поменять обратно?
Marianna вне форума  
 
Непрочитано 07.07.2008, 12:17
#4
Haos

инженер-строитель
 
Регистрация: 17.05.2005
E-burg
Сообщений: 696
<phrase 1=


Присоединяюсь к вопросу. К сожалению сам так и не смог найти закономерность одинаково корректного отображения пунктирных и штрихпунктирных линий при разных масштабах видовых окон в листе и в модели одновременно.
Какие настройки надо выставить чтобы раз и навсегда решить вопрос?
Haos вне форума  
 
Непрочитано 07.07.2008, 12:29
#5
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,917
<phrase 1=


Только через панель свойств и каждому свой масштаб
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 07.07.2008, 12:38
#6
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


Цитата:
Сообщение от Marianna Посмотреть сообщение
Подскажите пожалуйста, никак не пойму как масштабировать линии. Например, есть в чертеже зигзаг и пунктир. Выставляю global scale factor - зигзаг - подходящий масштаб, а пунктирный - не подходящий. Выбираю пунктирную линию выставляю current object scale, но ничего не изменяется. Выбираю пунктирную линию выставляю global scale - меняются все масштабы линий. Как же это правильно делать?
http://dwg.ru/f/showthread.php?t=18774&page=2
Пост 40

Цитата:
Масштаб типа линий. Советую устанавливать CELTSCALE всегда равным единице, а для правильного отображения через видовые окна надо его увеличить на масштаб ВЭ, за что отвечает переменная PSLTSCALE – её нужно выставить в единицу, при этом глобальный масштаб LTSCALE должен быть тоже равен единице. При переходе в пространство модели можно установить LTSCALE для удобной работы произвольно, но при переходе в пространство листа все равно установить единицу или сделать это перед печатью.
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 07.07.2008, 12:41
#7
tolyan

Проектирование
 
Регистрация: 01.04.2006
Харьков
Сообщений: 44
<phrase 1=


Ответ:
1. Ну есть разные типы линий (даш лот, лонг даш дот... ит.д.) .....
2. Переменная LTS: устанавливаете для себя нужный масштабный коэффициент, для вашего маштаба.
3. Если есть потребность изменить отображение каких то линий, то в свойствах линии в группе General есть параметр linetype scale, с его помощь можно конкретной линии задать свой масштабный коэф...
Конкретными значения ми для масштабов не пользуюсь, т.к. то что советуют в литературе на экране отображается хреново(ну по крайней мере у меня)... мне проще на глаз..
А и еще такой момент, лучше после изменения параметру регенерировать чертеж.... и если вы печатате с пространства листа то меняйте коэфф.. находясь там, поскольку отображение линий в модели и в простр листа разное...
Ну все что знал написал, поправте если что....
tolyan вне форума  
 
Непрочитано 07.07.2008, 12:45
#8
Haos

инженер-строитель
 
Регистрация: 17.05.2005
E-burg
Сообщений: 696
<phrase 1=


Цитата:
Сообщение от zenon Посмотреть сообщение
Только через панель свойств и каждому свой масштаб
Понимаю, что компьютер хочет чтобы я всю работу сделал за него, но мне этого делать вовсе не хочется.
Думается решение есть, возможно не на поверхности, а где-то в ...опе, как и все в автокаде. Если в других прогах эта автоматика реализована, должно быть подобное и в акаде ИМХО.
Haos вне форума  
 
Непрочитано 07.07.2008, 13:02
#9
Кулик Алексей aka kpblc
Moderator

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


ltscale : действует на весь файл. Лично я рекомендую устанавливать его в 1.
celtscale : действует на выбранные примитивы. При отсутствии выбора - на масштаб линий впоследствии отрисовываемых объектов.
При выводе на печать значения ltscale и celtscale для каждого объекта умножаются. Потом идет уже обработка масштаба ВЭ и масштаба вывода на бумагу.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.07.2008, 13:48
#10
discovery

дизайнер
 
Регистрация: 13.05.2008
Новосибирск
Сообщений: 136


Тоже столкнулся с подобным: как ни пытался, чтобы и в пространстве листа и в пространстве модели пунктирная линия выглядела одинаково,- бесполезно, в итоге смирился как с неизбежным,- у меня "в модели" те участки пунктирной линии, которые подлиннее (на схеме электрики) имели всего два мегаштриха и один разрыв, они же "в листе" имели уже по 15-25 штришков и выглядят нормально, на печать "из листа" также нормально вышли.
Цитата:
Думается решение есть, возможно не на поверхности, а где-то в ...опе, как и все в автокаде
Это не в духе AutoCADa, чтобы все да на поверхности.
discovery вне форума  
 
Непрочитано 07.07.2008, 14:14
#11
Кулик Алексей aka kpblc
Moderator

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


Блин, а psltscale кто будет устанавливать? Пушкин?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 07.07.2008, 14:21
#12
Marianna

Landscape
 
Регистрация: 17.12.2006
Moscow
Сообщений: 23


А где его устанавливать? Для кого то это очевидные вещи, а для кого то не очень...
Marianna вне форума  
 
Непрочитано 07.07.2008, 14:24
#13
Haos

инженер-строитель
 
Регистрация: 17.05.2005
E-burg
Сообщений: 696
<phrase 1=


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
ltscale :
celtscale :
Блин, а psltscale кто будет устанавливать? Пушкин?

Вы издеваетесь? Не многовато участия пользователя в примитивнейшей операции?
Haos вне форума  
 
Непрочитано 07.07.2008, 15:01
#14
discovery

дизайнер
 
Регистрация: 13.05.2008
Новосибирск
Сообщений: 136


Цитата:
Сообщение от Marianna Посмотреть сообщение
А где его устанавливать? Для кого то это очевидные вещи, а для кого то не очень...
В командной строке, однозначно...в смысле =1. Сейчас прочитал об этом в книге Н.Полещука. Как ни крути, а без штудирования справочников объемом в 1000 с лишним страниц не обойтись. Спасибо форуму, что помогают в этом разобраться. Для себя понял одно: если AutoCADом заниматься всерьез, то художником точно можешь ты не быть, но программистом быть обязан!
discovery вне форума  
 
Непрочитано 07.07.2008, 15:28
#15
Smart


 
Регистрация: 29.11.2005
Кириши
Сообщений: 4
<phrase 1=


Проблема решается просто, лично я делаю так:
кликаем по цепочке
Format -- Linetype Meneger -- убераем галку с "Use paper space units for scaling" -- в зависимости от размера чертежа в Моделе выбераем масштаб в "Global scale factor", и всё какой масштаб линии в Моделе такой и в Layout-е.
Может и не правильно, с точки зрения гуру, но у меня это работает , и ни каких проблем при выводе на печать.
удачи...
__________________
черти…. пока можешь
Smart вне форума  
 
Непрочитано 07.07.2008, 15:42
#16
discovery

дизайнер
 
Регистрация: 13.05.2008
Новосибирск
Сообщений: 136


Цитата:
Сообщение от Smart Посмотреть сообщение
Проблема решается просто, лично я делаю так:
кликаем по цепочке
Format -- Linetype Meneger -- убераем галку с "Use paper space units for scaling" -- в зависимости от размера чертежа в Моделе выбераем масштаб в "Global scale factor", и всё какой масштаб линии в Моделе такой и в Layout-е.
Может и не правильно, с точки зрения гуру, но у меня это работает , и ни каких проблем при выводе на печать.
удачи...
А ты анотативностью пользуешся? Я вот с ней связался по советам гуру, не знаю, правда, к добру или. А с ней метод работает?
discovery вне форума  
 
Непрочитано 07.07.2008, 16:09
#17
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


Вы ребята сами себе проблемы создаёте. Кто-нибудь 6-й пост и тамошнюю ссылку прочитал вообще?

Если у вас AutoCAD2008 и выше.
celtscale (или в свойствах Linetype scale) всегда держите в 1, ну и соотвественно у всех примитивов он должен быть в единице.
psltscale -> 1
ltscale -> 1
msltscale -> 1
т.е. один раз установили и забыли.

При таком раскладе в пространстве модели тип линий будет отображаться соответственно аннотативному масштабу. Т.е. например если у вас в пространстве модели в натуральную величину начерчены план для 200-го масштаба и узел для 10-го, то работая с узлом установите аннотативный масштаб в 1:10, тогда типы линии узла будут прекрасно читаться, но правда не будут читаться для плана. Работая с планом переключаете аннотативный масштаб в 1:200 и теперь тип линий у плана читается, а узла нет. НО если перейти в пространство листа, читаться будет все, т.к. из-за переменной psltscale=1 тип линий масштабируется относительно видового экрана у которого разумеется установлен соответствующий масштаб.
Раньше аннотаций и переменной msltscale не было, поэтому были некоторые сложности с использованием переменной ltscale, которая домножается на масштаб видового экрана. Теперь этой проблемы нет. Ура товарищи.

P.s. этот классный и жутко удобный способ не подходит для тех кто сидит на СПДС-графикс (или даже просто энаблер от него), обламывайтесь господа.
__________________
Делай хорошо, плохо само получится.

Последний раз редактировалось Krieger, 07.07.2008 в 16:19.
Krieger вне форума  
 
Непрочитано 07.07.2008, 16:32
#18
discovery

дизайнер
 
Регистрация: 13.05.2008
Новосибирск
Сообщений: 136


Krieger, спасибо большое, все вроде понятно описали! Теперь информации должно быть достаточно. В работе над будущими чертежами обязательно буду осваивать.
discovery вне форума  
 
Непрочитано 07.07.2008, 16:49
#19
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


http://dwg.ru/art/11 в конце
Vova вне форума  
 
Непрочитано 08.07.2008, 08:03
#20
Haos

инженер-строитель
 
Регистрация: 17.05.2005
E-burg
Сообщений: 696
<phrase 1=


Цитата:
Сообщение от Krieger Посмотреть сообщение
Если у вас AutoCAD2008 и выше.
celtscale (или в свойствах Linetype scale) всегда держите в 1, ну и соотвественно у всех примитивов он должен быть в единице.
psltscale -> 1
ltscale -> 1
msltscale -> 1
т.е. один раз установили и забыли.
Спасиб, добрый человек. Добавлю в избранное. Сам бы точно не допер.
Offtop: Подскажите еще (можно в личку) как отключить привязку к кончикам размерных засечек? Раздражает жутко...
Haos вне форума  
 
Непрочитано 08.07.2008, 08:33
#21
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


Цитата:
Сообщение от Vova Посмотреть сообщение
http://dwg.ru/art/11 в конце:
2.Выставьте Ltscale в значение 1 (а не 100, как описано в п.1). Psltscale также сделайте равной 1. Теперь в пространстве листа линии будут отображаться в соответствии с масштабами видовых экранов. Это будет видно в пространстве листа. Но в модели все линии будут видны как сплошные. Поскольку работа над чертежом ведется в модели, в этом случае приходится маневрировать, а именно, открывая модель следует выставить Ltscale в значение масштаба чертежа. Переходя в лист следует придать переменной Ltscale значение 1. Собственно, этот переход можно автоматизировать, но это не есть тема данной статьи.
Vova, не поделишься ли кодом с реактором который бы отлавливал изменение tilemode и выставлял в листе ltscale=1, а при переходе в модель выставлял предыдущее значение? у меня 2004 автокад и я как раз работаю по схеме 2 и использую вот такои код для переключения из модели в лист и обратно:
(DEFUN C:tt()
(setvar "cmdecho" 0)
(setq tmd (getvar "tilemode"))
(if (= tmd 1)
(setq LTSC (getvar "ltscale"))
)
(COMMAND "SETVAR"
"TILEMODE"
(IF (ZEROP tmd)
1
0
)
)
(setq tmdd (getvar "tilemode"))
(if (= tmdd 0)
(setvar "ltscale" 1)
)
(if (= tmdd 1)
(setvar "ltscale" LTSC))
(command "regenall")
(setvar "cmdecho" 1)
(PRINC)
)
Может есть с реактором, а? У кого нибудь?

Последний раз редактировалось PL, 08.07.2008 в 08:46.
PL вне форума  
 
Непрочитано 10.07.2008, 08:59
#22
DonJad


 
Регистрация: 20.12.2005
Murmansk
Сообщений: 106


Хм... способ для не ленивых - писать свои линии. В описании линии все всегда в мм печтного листа.
Берешь гост, и просто забиваешь те типы линий которые тебе нужны.
(а если освоить работу с *.shp/*.shx и использовать примитивы в типе линий, то еще и кучу времени можно съэкономить)

Еще одно маленькое и оч для мя лично полезное открытие это свойство полилини LineTypeGenerate, по умолчании идет disable, включаешь enable и наслаждаешься корректной генерацией штриха в поли линии, в смысле без стяжек на вершинах.
DonJad вне форума  
 
Непрочитано 11.07.2008, 06:21
#23
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от PL Посмотреть сообщение
Vova, не поделишься ли кодом с реактором который бы отлавливал изменение tilemode и выставлял в листе ltscale=1, а при переходе в модель выставлял предыдущее значение?
А я как раз не этим способом работаю
Vova вне форума  
 
Непрочитано 11.07.2008, 07:55
#24
Кулик Алексей aka kpblc
Moderator

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


Вообще-то неясно, зачем выставлять ltscale. Может, celtscale?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 11.07.2008, 08:51
#25
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Вообще-то у Autodesk с отображением линий недоработки (и с другим, например с масштабированием размеров). Чтобы добиться одинакового и всегда правильного отображения, пользователю приходится всякие манипуляции проделывать - в зависимости от того, где находишься - на Model, на Layouts. А должно быть просто - где бы ни провел линию, она всегда и везде должна отображаться правильно. И, для гурманов, возможность изменения масштабов по вкусу и назначению.

Здесь претензии к AutoCAD правильные, тем более, что в других системах с этим проблем вообще нет, да и в AutoCAD сделать авторам было бы очень легко.

Кое-что начали исправлять с введением аннотативности, но это когда спохватились. Да и в предыдущих версиях люди работают.

Пока что здесь приходится реактором делать. Вот для размеров установку DIMSCALE пришлось сделать через реактор, чтобы они всегда, независимо от способа работы, проставлялись правильно. Текст здесь не привожу - есть специфичные функции. Аналог можно сделать и для любых линейных команд, но реакторы не всегда надежны, да и объекты могут создаваться не только командами.
ShaggyDoc вне форума  
 
Непрочитано 11.07.2008, 09:09
#26
Кулик Алексей aka kpblc
Moderator

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


Ну, при создании объектов программными методами, по-моему, не так уж и сложно предусмотреть работу в определенном пространстве. Или я ошибаюсь?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 11.07.2008, 09:59
#27
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Ну, при создании объектов программными методами, по-моему, не так уж и сложно предусмотреть работу в определенном пространстве. Или я ошибаюсь?
Так то при программном. Там можно и правильный масштаб линий всегда автоматически выставлять. А можно не выставлять. И зависит-то от программиста, от того, как программа написана, а надо бы, чтобы не зависела. Шоб всегда путём было.

Да и у пользователя может оказаться рядом один отрезок, нарисованный "правильной" программой с "хорошим" масштабом, другой "неправильной" программой, а третий - "простой" командой. У всех будет разный вид, потом еще разное глобальное масштабирование наложится.
ShaggyDoc вне форума  
 
Непрочитано 11.07.2008, 10:06
#28
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
<...> потом еще разное глобальное масштабирование наложится.
Во! Вот как раз та причина, по которой ltscale не следует дергать туда-обратно
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 11.07.2008, 10:08
#29
se8

GIS & CAD
 
Регистрация: 18.12.2007
Тула
Сообщений: 60
Отправить сообщение для se8 с помощью Skype™


Люди, кто-нибудь считал сколько процентов времени тратиться непосредственно на черчение? Стоит ли убыстрять процесс, который и так немного времени занимает?
se8 вне форума  
 
Непрочитано 11.07.2008, 10:10
#30
se8

GIS & CAD
 
Регистрация: 18.12.2007
Тула
Сообщений: 60
Отправить сообщение для se8 с помощью Skype™


Согласен, AutoCADовскими средствами свести ошибки проектирования к минимуму. Нужная штука Но убыстрять черчение?
se8 вне форума  
 
Непрочитано 11.07.2008, 10:43
#31
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


время-деньги.

тема покатилась в offtop
Хмурый вне форума  
 
Непрочитано 11.07.2008, 14:21
#32
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


Цитата:
Сообщение от PL Посмотреть сообщение
Vova, не поделишься ли кодом с реактором который бы отлавливал изменение tilemode и выставлял в листе ltscale=1, а при переходе в модель выставлял предыдущее значение? у меня 2004 автокад и я как раз работаю по схеме 2 и использую вот такои код для переключения из модели в лист и обратно:

Может есть с реактором, а? У кого нибудь?
Лови:
Код:
[Выделить все]
(setq *vlr-sys* (vlr-sysvar-reactor nil '((:VLR-sysVarChanged . cmd-sys)))) 
(defun cmd-sys (react sysvarname) 
  (cond ((and 
    (= (car sysvarname) "TILEMODE") 
    (cadr sysvarname) 
    (= (getvar "TILEMODE") 0) 
    (not *OLD_LTSCALE*) 
    (not *OLD_PSLTSCALE*) 
    )  ;_ЛИСТ 
    (setq *OLD_LTSCALE* (getvar "LTSCALE")) 
    (setq *OLD_PSLTSCALE* (getvar "CELTSCALE")) 
    (setvar "LTSCALE" 1) 
    (setvar "CELTSCALE" 1) 
   ) 
   ((and 
    (= (car sysvarname) "TILEMODE") 
    (= (getvar "TILEMODE") 1) 
    (cadr sysvarname) 
    *OLD_LTSCALE* 
    *OLD_PSLTSCALE* 
    )  ;_МОДЕЛЬ 
    (setvar "LTSCALE" *OLD_LTSCALE*) 
    (setvar "CELTSCALE" *OLD_PSLTSCALE*) 
    (setq *OLD_LTSCALE* nil) 
    (setq *OLD_PSLTSCALE* nil) 
    (princ " MODEL ") 
   ) 
   (t nil)))
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 11.07.2008, 16:29
#33
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от se8 Посмотреть сообщение
Люди, кто-нибудь считал сколько процентов времени тратиться непосредственно на черчение? Стоит ли убыстрять процесс, который и так немного времени занимает?
Посмотри, как называется раздел где мы сейчас находимся. Правильно, AUTOCAD. Здесь сосредоточено все для ускорения или облегчения процесса черчения. Даже если он (процесс) занимает всего ничего по сравнению с мыслительной инженерной деятельностью
Vova вне форума  
 
Непрочитано 12.07.2008, 04:01
#34
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


Цитата:
Сообщение от Krieger Посмотреть сообщение
Лови:
Большое спасибо. Работает великолепно! Бью челом. То что доктор прописал. Всех благ.
PL вне форума  
 
Непрочитано 12.07.2008, 19:31
#35
Red Nova

ՃԱՐՏԱՐԱԳԵՏ, տ.գ.թ.
 
Регистрация: 23.10.2007
Торонто
Сообщений: 1,990
Отправить сообщение для Red Nova с помощью Skype™


se8,
Цитата:
Люди, кто-нибудь считал сколько процентов времени тратиться непосредственно на черчение? Стоит ли убыстрять процесс, который и так немного времени занимает?
Ну ты блин даешь.
Есть люди у которых 100 процентов работы заключается в черчении. Я к примеру делаю некий проект за 4 часа, рядом сидит коллега, который делает то же за два дня. Дальше продолжать?

Да простят меня модераторы за офф топ, не задержался.
__________________
Блог
Red Nova вне форума  
 
Непрочитано 30.07.2008, 12:34
#36
discovery

дизайнер
 
Регистрация: 13.05.2008
Новосибирск
Сообщений: 136


Цитата:
Сообщение от Krieger Посмотреть сообщение

Если у вас AutoCAD2008 и выше.
celtscale (или в свойствах Linetype scale) всегда держите в 1, ну и соотвественно у всех примитивов он должен быть в единице.
psltscale -> 1
ltscale -> 1
msltscale -> 1
т.е. один раз установили и забыли.

При таком раскладе в пространстве модели тип линий будет отображаться соответственно аннотативному масштабу. Т.е. например если у вас в пространстве модели в натуральную величину начерчены план для 200-го масштаба и узел для 10-го, то работая с узлом установите аннотативный масштаб в 1:10, тогда типы линии узла будут прекрасно читаться, но правда не будут читаться для плана. Работая с планом переключаете аннотативный масштаб в 1:200 и теперь тип линий у плана читается, а узла нет. НО если перейти в пространство листа, читаться будет все, т.к. из-за переменной psltscale=1 тип линий масштабируется относительно видового экрана у которого разумеется установлен соответствующий масштаб.
Раньше аннотаций и переменной msltscale не было, поэтому были некоторые сложности с использованием переменной ltscale, которая домножается на масштаб видового экрана. Теперь этой проблемы нет. Ура товарищи.
При всем уважении к этой теоретической выкладке, у меня этот способ не работает.
То что получается при
psltscale -> 1
ltscale -> 1
msltscale -> 1
(celtscale, естественно, тоже ->1),
видно на рисунках 1 и 2.

Путем перебора возможных комбинаций значений системных переменных пришел к выводу, что одинаково отображаются пунктирные линии и в пр-ве модели и в пр-ве листа лишь при таком раскладе:
LTSCALE (он же, Global scale factor в окне Linetype Manager) =1,
CELTSCALE (он же, Current object scale, там же) =1,
PSLTSCALE (снимаем галку с "Use paper spase units for scaling") =0,
MSLTSCALE (Model Space Line Type Scale), через ком. строку =0,
Вот тогда действительно пунктирные линии одинаковы (См. рис.2 и 3).

Извиняюсь за оффтоп, но что хочется сказать. Идея с аннотативностью - отличная, но пунктирные (и им подобные) линии под определение аннотированных (или аннотатативных, как они называются в др. учебниках) не попадают, что и понятно, если вникнуть в смысл слова аннотация (лат. - примечание). Одно дело текст, размеры, выноски, - а при чем здесь линия, это не примечание. Странно, что еще штриховку посчитали аннотативным объектом. Но по свойствам пунктирные линии должны примыкать к этому семейству, т.е. должны быть определенного размера, независимо от масштаба чертежа. ИМХО, лучше бы назвали бы все эти объекты по-другому - внемасштабные или постоянноразмерные. Тогда, может, достаточно было бы ставить одну галочку в окне, задавая пунктирным линиям это свойство и всех-то делов, а так, творцы сего продукта такого нагромоздили, что с трудом поддается пониманию, и сейчас мы имеем то, что имеем, к сожалению.
Миниатюры
Нажмите на изображение для увеличения
Название: рис1_штрих.jpg
Просмотров: 173
Размер:	28.3 Кб
ID:	8813  Нажмите на изображение для увеличения
Название: рис2_штрих.jpg
Просмотров: 152
Размер:	21.1 Кб
ID:	8814  Нажмите на изображение для увеличения
Название: рис3_штрих.jpg
Просмотров: 140
Размер:	22.4 Кб
ID:	8815  Нажмите на изображение для увеличения
Название: рис4_штрих.jpg
Просмотров: 138
Размер:	24.0 Кб
ID:	8816  
discovery вне форума  
 
Непрочитано 30.07.2008, 13:59
#37
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


> discovery
Ну во-первых, аннотативный масштаб никак не влияет на тип линии, так что твой оффтоп не по адресу. На масштаб типа линий влияют всего две переменные celtscale и ltscale, а psltscale и msltscale отвечают за их масштаб относительно видовых окон и масштаба аннотативности соотвественно. Т.е. не важно при каком аннотативном масштабе ты чертишь штриховые линии, важно при каком celtscale.

Во-вторых, ты умудрился получить разное отображение линий при одинаковых условиях черчения для них. Скорее всего просто не сделал регенерацию.

В-третьих, я не увидел у тебя видовых окон и разномасштабной работы. Если ты всегда работаешь в одном масштабе, то и не забивай себе голову, выстави соответствующий ltscale и все.

Смотри мои рисунки, я нарисовал в пространстве модели четыре одинаковых отрезка длиной 6000 ед. черт, с celtscale=1 и ltscale=1. Установил msltscale=1, чтобы масштаб типа линий отображался соотвественно аннотативному масштабу. На первом рисунке аннотат. масштаб установлен 1:20. На втором я поменял аннотат. масштаб на 1:50, сделал регенерацию и штрихи увеличились. Теперь перейдем в пространство листа (см.рис.3), установим psltscale=1, чтобы штрихи отрезков увеличивались пропорционально масштабу видовых окон. В пространстве листа я наделал много видовых экранов предполагая что все эти отрезки мне нужно выводить в разных масштабах, первый 1:10, второй 1:20, третий 1:30, четвертый 1:50. Как видно из рисунка размеры отрезков уменьшаются соответственно масштабу, а вот штрихи у всех отрезков одинаковые, хэть тресни. Ну и два видовых экрана вообще с масштабом "от фонаря", чтобы показать что для того чтобы правильно отобразить тип линии мне вообще-то не нужно забивать голову этими масштабами.
И не забываем делать регенерацию, иногда даже нужно сначала войти в видовой экран и сделать её там.
Миниатюры
Нажмите на изображение для увеличения
Название: Кадр_14.jpg
Просмотров: 210
Размер:	22.4 Кб
ID:	8824  Нажмите на изображение для увеличения
Название: Кадр_13.jpg
Просмотров: 187
Размер:	20.4 Кб
ID:	8825  Нажмите на изображение для увеличения
Название: Кадр_12.jpg
Просмотров: 204
Размер:	39.4 Кб
ID:	8826  
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 30.07.2008, 16:34
#38
zina_f


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


приветствую всех!
разрешите поделиться опытом по обсуждаемой теме.
на заре работы в autocade (а было это в году 1991 и был это autocad 10) мне подсказали формулу вычисления ltscale
ltscale=масштаб печати/200 (напр.1:2500/200=12.5)
мы уже в 2008 году и я работаю с autocad 2008,а формула всё та же и не разу не возникало проблем с различными типами линий(я занимаюсь комп. картографией,где этот момент очень важен
zina_f вне форума  
 
Непрочитано 30.07.2008, 20:31
#39
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 30.07.2008, 20:40
#40
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Интересно, для каких линий данная формула, для метрических или инчевых?
Vova вне форума  
 
Непрочитано 31.07.2008, 06:30
#41
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Так то было "на заре". В Автокад-10 был LIN-файл, в котором определения типов линий были "инчевые". И не было никаких пространств листа, видовых экранах на вкладках, их масштабирования, аннотативности.

Да, тогда и была примерно такая формула (немного раличающаяся в зависимости от вкусов). У меня по ней программы LTSCALE устанавливали. Кое-где до сих пор работают по технологии AutoCAD-10 (хоть в 2009) и даже старые LIN перетаскивают, доставшиеся еще с R10.

Для картографии и топографии масштаб линий действительно чрезвычайно важен. Там должно быть очень точное соотношение длины штрихов и промежутков. Нельзя "просто пунктир" применять - лучше для каждого назначения свою линию иметь. Но достигается это не путем применения магической формулы, а правильным описанием линии и, конечно, правильной настройкой переменных.

Но топография дело объективно консервативное. Топоплан, сделанный в R10 может применяться еще много лет - только тексты в 1251 конвертируют. Там и работа только в модели может быть вполне обоснованна - например, когда чертят только планшеты, а не выкопировки. Поэтому и может показаться удивительным такой анахронизм. Мы, при переходе под Win где-то в R14 просто пакетно всю топографию отконвертировали, заодно автоматически заменяя типы линий на современные.
ShaggyDoc вне форума  
 
Непрочитано 31.07.2008, 10:39
#42
zina_f


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


Есть несколько видов линий ,кот. я создала ещё в Acad 10 и таскаю за собою,но основные линии -это acadовские...
я работаю с форматами от 1:250 до 1:50000 и однотипные линии выглядят совершенно идентично на бумаге....,благодаря "волшебной формуле"
впрочем,никого не пытаюсь убедить в истинности моего варианта,просто поделилась "кухонным" секретом....
zina_f вне форума  
 
Непрочитано 31.07.2008, 11:46
#43
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
я создала ещё в Acad 10 и таскаю за собою
Значит я угадал. В вашем случае "кухонный секрет" действует.

А вот когда начнете использовать более современные приемы работы, вспомните про "секрет" Krieger из #37. Изложено понятно, наглядно и убедительно.
ShaggyDoc вне форума  
 
Непрочитано 16.10.2008, 00:15
#44
dREYb


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


Вопрос! Есть два файла в отдном линия HIDDEN отображается нормально а в другом очень мелко. Значения LTS везде одинаковые!=1
В свойствах полилинии Linetype scale то же одинаковый. Весь разговор ведется про пространство модели. На сколько я понимаю Linetype scale в свойствах однозначно характеризует отображение в модели. Почему берется такая ерунда ? Что может еще за это отвечать! заранее спасибо!
dREYb вне форума  
 
Непрочитано 16.10.2008, 00:58
#45
Кулик Алексей aka kpblc
Moderator

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


units?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.10.2008, 23:50
#46
dREYb


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


Кароч я разобрался! когда загружалась линия Hidden она была загружена из файла acad.lin а надо из файла acadiso.lin. Можно перегрузить прямо в этом файле и все ок! за то какие использовать файлы для дюймов или для мм отвечаю сист. переменные. Остальное читайте здеся http://forum.dwg.ru/showthread.php?p=297009#post297009
dREYb вне форума  
 
Непрочитано 18.10.2008, 13:18 масштабирование пунктирных линий
#47
andrew_ro

Светопрозрачные конструкции, проектирование
 
Регистрация: 29.07.2008
Сообщений: 47


Всем привет.
Хочу поделиться одним интересным кодом, найденным на просторах www.caduser. Иногда он меня выручает, если нужно настроить масштаб линии. Ссылку к сожалению не сохранил и автора тоже не знаю. Описание есть внутри. К сожалению этот код не меняет масштаб для линий с типом "послою", только для заданных типов линий напрямую.
Вложения
Тип файла: rar мтиплин.rar (2.6 Кб, 231 просмотров)
andrew_ro вне форума  
 
Непрочитано 18.10.2008, 23:56
#48
Кулик Алексей aka kpblc
Moderator

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


Прикольный код, надо будет просмотреть его более внимательно...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.12.2009, 22:20
#49
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


Цитата:
Сообщение от Krieger Посмотреть сообщение
Лови:
Код:
[Выделить все]
(setq *vlr-sys* (vlr-sysvar-reactor nil '((:VLR-sysVarChanged . cmd-sys)))) 
(defun cmd-sys (react sysvarname) 
  (cond ((and 
    (= (car sysvarname) "TILEMODE") 
    (cadr sysvarname) 
    (= (getvar "TILEMODE") 0) 
    (not *OLD_LTSCALE*) 
    (not *OLD_PSLTSCALE*) 
    )  ;_ЛИСТ 
    (setq *OLD_LTSCALE* (getvar "LTSCALE")) 
    (setq *OLD_PSLTSCALE* (getvar "CELTSCALE")) 
    (setvar "LTSCALE" 1) 
    (setvar "CELTSCALE" 1) 
   ) 
   ((and 
    (= (car sysvarname) "TILEMODE") 
    (= (getvar "TILEMODE") 1) 
    (cadr sysvarname) 
    *OLD_LTSCALE* 
    *OLD_PSLTSCALE* 
    )  ;_МОДЕЛЬ 
    (setvar "LTSCALE" *OLD_LTSCALE*) 
    (setvar "CELTSCALE" *OLD_PSLTSCALE*) 
    (setq *OLD_LTSCALE* nil) 
    (setq *OLD_PSLTSCALE* nil) 
    (princ " MODEL ") 
   ) 
   (t nil)))
Krieger, В acad2010 что то не работает. не подправишь, если время будет?
Command: AP APPLOAD Tilemode_auto2.lsp successfully loaded.
Command: ; error: no function definition: VLR-SYSVAR-REACTOR
PL вне форума  
 
Непрочитано 30.12.2009, 10:54
#50
Кулик Алексей aka kpblc
Moderator

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


(vl-load-com) вначале поставь.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 06.01.2010, 04:04
#51
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


спасибо, Алексей ! все заработало !!!
PL вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > масштабирование пунктирных линий



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с подсчетом линий... Kostinok AutoCAD 32 26.12.2012 09:42
масштабирование линий при печати vitalik-petrov AutoCAD 5 16.05.2008 17:56
Проблема с типами линий (возможно масштабирование) Abramov AutoCAD 4 29.04.2008 17:19
как сделать масштабирование линий в Model идентично Layout sasha-zhuk AutoCAD 4 11.07.2007 05:40
Как изменять толщину линий и цвет линий для блоков? Highmax AutoCAD 1 08.03.2005 06:56