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

Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Помогите с СПДС

Помогите с СПДС

Ответ
Поиск в этой теме
Непрочитано 09.02.2008, 21:49
Помогите с СПДС
Зодчий
 
Конструктор (начинающий)
 
Беларусь, Гродно
Регистрация: 25.01.2007
Сообщений: 44

День добрый. Вопрос в следующем: У меня стоит 2006 САД и СПДС 4.
При двайном клике на видовом экране он соответственно разварачивается и СПДС выставляет маштаб символов 1:5 вне зависимости от маштаба окна. Это так должно быть или нет. Если нет то как с этим боротся. Возможно, чтобы СПДС выставлял маштаб в соответствии с маштабом видового окна.
Просмотров: 8834
 
Непрочитано 13.02.2008, 07:19
#21
Post

конструктор
 
Регистрация: 29.07.2005
Ростов-на-Дону
Сообщений: 1,092
<phrase 1=


Вообще-то это официальная рекомендация Autodesk. И именно для такого способа черчения разработаны ассоциативные размеры. Если тебе нравится чертить опалубку, узлы к ней, несколько слоев армирования (все раздельно), а при малейшем изменении перечерчивать весь ворох и ОБЯЗАТЕЛЬНО забывать изменить какой-либо размер или внести само изменение, то вперед.
Года два назад на форуме велись бурные дискусии по этому поводу, можешь порыться там много что интересного рассказано.
__________________
С уважением!!!
Post вне форума  
 
Непрочитано 13.02.2008, 07:35
#22
Post

конструктор
 
Регистрация: 29.07.2005
Ростов-на-Дону
Сообщений: 1,092
<phrase 1=


Повторяшку удалил
__________________
С уважением!!!
Post вне форума  
 
Непрочитано 13.02.2008, 09:30
#23
Red Nova

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


Цитата:
СПДС, насколько мне помнится, при изменении масштаба меняет системные переменные dimscale, celtscale, hpspace, hpscale
А реально это все на одну кнопку вбить?
Red Nova вне форума  
 
Непрочитано 13.02.2008, 09:36
#24
Кулик Алексей aka kpblc
Moderator

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


Ну а почему нет? Правда, я с макросами уже давно не работал, но можно попробовать нечто типа (для масштаба, например, 1:100):
Код:
[Выделить все]
^C^C(foreach item '("dimscale" "celtscale" "hpscale" "hpspace") (setvar item 100));
При этом ltscale должна быть 1, dimlfac = 1
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 13.02.2008, 10:44
#25
alex_AW

КЖ
 
Регистрация: 23.03.2005
С-Пб
Сообщений: 79


Кулик Алексей aka kpblc, А что надо сделать, если я хочу вводить значение ( одно для всех этих переменных) в интерактивном режиме? Я-то полный ноль в программировании и этот вопрос ставит меня в тупик. Заранее спасибо за ответ.
alex_AW вне форума  
 
Непрочитано 13.02.2008, 14:42
#26
Кулик Алексей aka kpblc
Moderator

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


Ну есть 2 варинта (это если по-простому, без выпендрежа): либо сделать несколько кнопок, в макросах которых вколотить разные значения. Либо писать отдельный лисп, который будет запрашивать значение масштаба у пользователя и в соответствии с ним выставлять значение масштаба. Я бы предпочел первый вариант
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 13.02.2008, 15:41
#27
alex_AW

КЖ
 
Регистрация: 23.03.2005
С-Пб
Сообщений: 79


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
... Я бы предпочел первый вариант
Тогда,пожалуй, и я на нём остановлюсь.
alex_AW вне форума  
 
Непрочитано 13.02.2008, 15:59
#28
Кулик Алексей aka kpblc
Moderator

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


Мне просто лень писать лисп, если честно
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 13.02.2008, 17:52
#29
Red Nova

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


Товарищ kpblc думаю многие сейчас болеют за то чтоб тебя покинула лень, и ты создал очередной шедевр, который желательно продублировал масштабы СПДС по всем параметрам, а еще можно к существующим переменным добавить и новые, чтоб менялись масштабы мтекстов и мультилидеров (если такие переменные есть конечно)
Red Nova вне форума  
 
Непрочитано 14.02.2008, 00:52
#30
Кулик Алексей aka kpblc
Moderator

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


В автозагрузку закинуть лисп
Код:
[Выделить все]
(or *kpblc-activedoc*
    (setq *kpblc-activedoc* (vla-get-activedocument (vlax-get-acad-object)))
    ) ;_ end of or

(if *kpblc-vlr-sysvar*
  (progn
    (setq *kpblc-vlr-sysvar* nil)
    (vlr-remove-all :vlr-command-reactor)
    ) ;_ end of progn
  ) ;_ end of if

(if (not *kpblc-vlr-sysvar*)
  (setq *kpblc-vlr-sysvar*
         (vlr-sysvar-reactor
           "*kpblc-sysvar*"
           '((:vlr-sysvarchanged . _kpblc-vlr-sysvar-changed))
           ) ;_ end of vlr-sysvar-reactor
        ) ;_ end of setq
  ) ;_ end of if

(defun _kpblc-vlr-sysvar-changed (react sysvar)
  (or *kpblc-scale* (setq *kpblc-scale* 1))
  (if (member (strcase (car sysvar)) '("CVPORT" "TILEMODE"))
    (if (and (zerop (vla-get-activespace *kpblc-activedoc*))
             (= :vlax-false (vla-get-mspace *kpblc-activedoc*))
             ) ;_ end of and
      (progn
        (setvar "dimlfac" -1)
        (foreach item '("dimscale" "celtscale" "hpscale" "hpspace")
          (setvar item 1)
          ) ;_ end of foreach
        ) ;_ end of progn
      (progn
        (setvar "dimlfac" 1)
        (foreach item '("dimscale" "celtscale" "hpscale" "hpspace")
          (setvar item *kpblc-scale*)
          ) ;_ end of foreach
        ) ;_ end of progn

      ) ;_ end of if
    ) ;_ end of if
  ) ;_ end of defun
По умолчанию масштаб - 1:1. СПДС-ные масштабы не затрагиваются. Для кнопок прописать коды вида:
Код:
[Выделить все]
^C^C(setq *kpblc-scale* 100);
для 1:100 или
Код:
[Выделить все]
^C^C(setq *kpblc-scale* 50);
для 1:50. Если хочется задавать масштаб в ком.строке (конт.меню не стал делать - головняка многовато), то загрузить лисп
Код:
[Выделить все]
(defun _kpblc-get-scale-by-user (/ scale)
  (if
    (= (type (setq scale (vl-catch-all-apply
                           '(lambda (/ res)
                              (setq res
                                     (getreal
                                       (strcat
                                         "\nВведите масштаб <"
                                         (vl-princ-to-string
                                           (cond
                                             (*kpblc-scale*
                                              (if (> *kpblc-scale* 1)
                                                (strcat "1:"
                                                        (vl-princ-to-string *kpblc-scale*)
                                                        ) ;_ end of strcat
                                                (strcat
                                                  (vl-princ-to-string (/ 1. *kpblc-scale*))
                                                  ":1"
                                                  ) ;_ end of strcat
                                                ) ;_ end of if
                                              )
                                             (t (setq *kpblc-scale* 1))
                                             ) ;_ end of cond
                                           ) ;_ end of vl-princ-to-string
                                         "> : "
                                         ) ;_ end of strcat
                                       ) ;_ end of getreal
                                    ) ;_ end of setq
                              (/ 1. res)
                              ) ;_ end of lambda
                           ) ;_ end of vl-catch-all-apply
                   ) ;_ end of setq
             ) ;_ end of type
       'real
       ) ;_ end of =
     (setq *kpblc-scale* scale)
     ) ;_ end of if
  (princ)
  ) ;_ end of defun
Макрос на кнопку
Код:
[Выделить все]
^C^C(_kpblc-get-scale-by-user);
P.S. Для задания масштаба допускается использовать в качестве ответа на вопрос 1/100; 2/1 и т.п.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.02.2008, 14:50
#31
Red Nova

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


Забросил в авторан, создал кнопки, не работает.
Тестировал с размерами, какой масштаб не выбрать все размеры остаются прежними, а команда _kpblc-get-scale-by-user вообще при любом вводе отвечает Requires numeric value.
Red Nova вне форума  
 
Непрочитано 14.02.2008, 16:59
#32
Кулик Алексей aka kpblc
Moderator

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


Оно говорит, что надо числовое значение. Ну так дай ему его
Разделитель целой и дробной (напоминаю) точка. Допускается использование в качестве ответа как 0.01, так и 1/100 - будет масштаб 1:100. Но нельзя вводить "1:100", оно этого не поймет.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.02.2008, 17:55
#33
Red Nova

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


Ну с этим разобрался. Но как быть с основной частью вопроса.
Цитата:
Тестировал с размерами, какой масштаб не выбрать все размеры остаются прежними
Я еще вообще не понял как на что программа влияет.
Red Nova вне форума  
 
Непрочитано 16.02.2008, 12:06
#34
Red Nova

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


Кулик Алексей aka kpblc Я просто хочу напомнить о вопросе.
Цитата:
Я еще вообще не понял как на что программа влияет.
Red Nova вне форума  
 
Непрочитано 17.02.2008, 18:05
#35
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Ну к примеру для затравки:

Поменялись размеры детали или плана или чего то еще
в моделят тупо стренчем подогнал и все размеры одновременно выровнялись
а тебе потом прийдется их в ручную выбивать
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 17.02.2008, 22:54
#36
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от Red Nova Посмотреть сообщение
Ну с этим разобрался. Но как быть с основной частью вопроса.
Я еще вообще не понял как на что программа влияет.
Она выполняет следующее: при работе в пространстве модели (неважно как в него попали) устанавливаются dimscale, celtscale, hpscale и hpspace в соответствие с тем масштабом, который был введен. При работе в листе системные переменные принимают значение 1. Дополнительно обрабатывается dimlfac для простановки корректных значений линейных размеров в листе.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.02.2008, 14:04
#37
Post

конструктор
 
Регистрация: 29.07.2005
Ростов-на-Дону
Сообщений: 1,092
<phrase 1=


dextron3
Цитата:
Ну к примеру для затравки:

Поменялись размеры детали или плана или чего то еще
в моделят тупо стренчем подогнал и все размеры одновременно выровнялись
а тебе потом прийдется их в ручную выбивать
Ты прикалываешься? Ничего не надо вбивать вручную. То что ты описываешь называется ассоциативные размеры (dimassoc - 2) и естественно в пространстве листа это работает. А вот в том что у тебя в модели минимум два изображения одного и того же (узлы и фрагменты даже не считаю) я уверен, а значит и размеров у тебя в два раза больше и если что-то меняется редактировать тебе больше минимум в те же 2 раза. Повторюсь: поищи по форуму эта тема 2-3 раза в год всплывает минимум. А здесь этим спорам не место.
__________________
С уважением!!!
Post вне форума  
 
Непрочитано 18.02.2008, 15:30
#38
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Post, что тоне понятно объяснил выложи файл посмотреть хочется
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 18.02.2008, 17:11
#39
Post

конструктор
 
Регистрация: 29.07.2005
Ростов-на-Дону
Сообщений: 1,092
<phrase 1=


Не идеал конечно, но принцип понять можно
Вложения
Тип файла: zip Пример - Standard.zip (489.2 Кб, 51 просмотров)
__________________
С уважением!!!
Post вне форума  
 
Непрочитано 18.02.2008, 20:56
#40
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


вот сместилось
Миниатюры
Нажмите на изображение для увеличения
Название: Snap1.jpg
Просмотров: 70
Размер:	23.6 Кб
ID:	3494  
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Помогите с СПДС



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ПРЕОБРАЗОВАНИЕ ЭЛЭМЕНТОВ СПДС В ПРИМИТИВЫ Acada Sanyok Прочее. Программное обеспечение 7 30.11.2007 19:31
McCOMServer.dll и СПДС Runa Прочее. Программное обеспечение 6 16.05.2007 10:06
Project studio3 и СПДС 3,0 на ACAD2005RU Peter Прочее. Программное обеспечение 6 07.04.2006 09:31
Помогите найли СПДС GraphiCS CadMan ПО от CSoft 1 09.06.2004 10:05