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

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

Вопрос про выделение

Ответ
Поиск в этой теме
Непрочитано 19.08.2004, 15:44
Вопрос про выделение
Alexidis
 
Сообщений: n/a

если щелкуть за один угол и увеличить масштаб и в новом масштабе шелкнуть еще раз т овыделяться только объекты в пределах текущего масштаба как добиться выделения объектов за пределами активного окна в квадрате выделения ?
Просмотров: 20142
 
Непрочитано 17.02.2011, 21:55
#41
Uzel

Инженер-проектировщик
 
Регистрация: 20.05.2009
Россия
Сообщений: 265


Цитата:
Сообщение от Profan Посмотреть сообщение
Это определенно переменная grips.
Управляет использованием набора ручек при растягивании, перемещении, повороте, масштабировании и зеркальном отображении объектов .
0
Отключает ручки
1
Включает ручки
В последних версиях появилось и еще одно значение этой переменной.
2
Отображение дополнительных ручек в средних точках сегментов полилиний
Uzel вне форума  
 
Непрочитано 18.02.2011, 03:46
#42
Maremarsik


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


Цитата:
Сообщение от Vova Посмотреть сообщение
В вышепоказанном примере сэкономить кучу времени можно так: команда _Group, выделяем, приближая как душе угодно любое место, все, что хотим. Далее делаем с данной группой все что надо. Например, если надо скопировать (хоть сейчас, хоть послезавтра) то команда Copy, а затем вводим на клаве буквочку G ( если в английском). И усе, использована стандартная возможность автокада. Куча-ли времени потрачена на такую "двойную" операцию?
Второй вариант. Вводим на клаве (setq A (ssget)). попросит выделить объекты. Далее, (хоть после обеда, но не завтра) задаем команду которой хотим поиздеваться над объектами и вызываем их так: !A. И опять усе.
Теперь Maremarsik придется находить такой пример, который данным методом не решается
Попросили пример. Пожалуйста. Такое выделение необходимо когда работаешь с объектами, расположенными узкой очень длинной полосой, соотношение длины и ширины этой полосы где-то 100 к одному или больше. При этом сверху и снизу от этой нужной полосы объектов почти впритык располагаются другие объекты, которые выделять не нужно.
Простейший конкретный пример - возьмите любой протяженный продольный профиль. И попробуйте за две секунды выделить любую из многочисленных полос подписей в "шапке" непосредственно под профилем.
Надеюсь, понятно объяснил.
Что касается ваших двух способов. Команда груп все так же выделяет только то, что было на экране в момент когда завершали выделение, все что осталось за кадром игнорируется.
setq A (ssget) - ругается что неизвестная команда.
Maremarsik вне форума  
 
Непрочитано 18.02.2011, 05:34
#43
skkkk


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


Цитата:
Сообщение от Maremarsik Посмотреть сообщение
...Простейший конкретный пример - возьмите любой протяженный продольный профиль. И попробуйте за две секунды выделить любую из многочисленных полос подписей в "шапке" непосредственно под профилем...
Согласен, сам испытал подобное неудобство, работая с профилями, например, во вложении надо выделить желтые тексты для увеличения их на величину условного горизонта. Я приспособился так: выбирал их с помощью кнопки с макросом
Код:
[Выделить все]
(sssetfirst nil (ssget '((0 . "TEXT,MTEXT"))))
, вначале приблизив чертеж и выбрав тычком начальные координаты Х и У рамки, а затем отдалив, тыкал в противоположный угол, либо также, но без макроса и обратной рамкой, что на мой взгляд менее удобно. С радостью узнаю мнение гуру на этот счет
Цитата:
Сообщение от Maremarsik Посмотреть сообщение
...setq A (ssget) - ругается что неизвестная команда.
Скобки забыл
Код:
[Выделить все]
(setq A (ssget))
Вложения
Тип файла: dwg
DWG 2007
Профиль.dwg (127.2 Кб, 964 просмотров)
skkkk вне форума  
 
Непрочитано 19.02.2011, 22:24
#44
Vova

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


Цитата:
Сообщение от Maremarsik Посмотреть сообщение
Надеюсь, понятно объяснил.
Что касается ваших двух способов. Команда груп все так же выделяет только то, что было на экране в момент когда завершали выделение, все что осталось за кадром игнорируется.
setq A (ssget) - ругается что неизвестная команда.
Да не очень понятно. ведь за две секунды не сделать тщательный выбор в тесном месте даже если-бы быделение в автокаде работало так как ты хочешь.
Команда Group работает независимо от того, что выделенный объект уже уполз на кромку экрана. Во всяком случае так в 2010, и я уверен что и в предыдущих версиях также.
Выражение лисп (setq A (ssget)) не работает только в ЛТ. Проверь внимательно и убедись в этом сам
Vova вне форума  
 
Непрочитано 19.02.2011, 22:33
#45
engngr

сети
 
Регистрация: 03.11.2008
Московия*
Сообщений: 5,949


Цитата:
Сообщение от Maremarsik Посмотреть сообщение
Простейший конкретный пример - возьмите любой протяженный продольный профиль. И попробуйте за две секунды выделить любую из многочисленных полос подписей в "шапке" непосредственно под профилем.
А зачем эти надписи выделять? С какой целью? От этого будет зависеть и способ выделения и способы вообще работы с профилем.
engngr вне форума  
 
Непрочитано 23.02.2011, 16:34
#46
Vova

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


Цитата:
Сообщение от Vova Посмотреть сообщение
В вышепоказанном примере сэкономить кучу времени можно так: команда _Group, выделяем, приближая как душе угодно любое место, все, что хотим. .....
Второй вариант. Вводим на клаве (setq A (ssget)). попросит выделить объекты
Дал неверную информацию. На самом деле ни команда Group, ни (SetQ...)) не сохраняет выделенные и уползшие на кромку экрана объекты, если по ним не щелкнуть кнопкой пока они видны. Но все равно не вижу глобального неудобства от этого. Можно легко приспособиться, что многие и сделали. Ведь не трудно и щелкнуть.
Vova вне форума  
 
Непрочитано 23.02.2011, 16:36
#47
Хмурый


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


Цитата:
Сообщение от Vova Посмотреть сообщение
Дал неверную информацию. На самом деле ни команда Group, ни (SetQ...)) не сохраняет выделенные и уползшие на кромку экрана объекты, если по ним не щелкнуть кнопкой пока они видны. Но все равно не вижу глобального неудобства от этого. Можно легко приспособиться, что многие и сделали. Ведь не трудно и щелкнуть.
А раньше и не надо было приспосабливаться, т. к. не было колёсика на мышке. И все, так называемые, "проблемы с выделением" начались с появлением этого самого колёсика. Зуммирование и панарамирование стало происходить без применения команд '_zoom и '_pan.
Хмурый вне форума  
 
Непрочитано 23.02.2011, 20:28
#48
Vova

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


Ну вот и ответ для автора вопроса. Используй Pan (и Zoom) не с колеса, a с соответствующих кнопок, и выделение, ушедшее на грань экрана, сохранится. Но я предпочитаю колесо и лишний щелчок, по тому объекту, который сейчас уйдет из поля зрения
Vova вне форума  
 
Непрочитано 26.02.2011, 00:00
#49
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Maremarsik,
Практически это решается макросом или лиспом.
Задай эту задачку в разделе Программирование. Уверен решение быстро найдется. Или оно уже есть.

Приведу пример на vba, но он тебе не подходит, т.к. в конечном итоге создается набор (AcadSelectionSet), а тебе нужны выделенные объекты на чертеже. А это проще сделать на лиспе с помощью sssetfirst.

Код:
[Выделить все]
Public Sub ZoomSelect()

   Dim selSet As AcadSelectionSet
   Dim dPt1() As Double
   Dim dPt2() As Double
   
   'Создание набора, библиотечная функция
   Set selSet = GetSelSet("MySelect")
   
   dPt1 = ThisDrawing.Utility.GetPoint(, "Первая точка рамки:")
   dPt2 = ThisDrawing.Utility.GetCorner(dPt1, "Вторая точка рамки:")
   
   'Зуммирование указанной области
   ZoomWindow dPt1, dPt2
   
   'Выбор объектов
   selSet.Select acSelectionSetCrossing, dPt1, dPt2
   
End Sub

Public Function GetSelSet(strSelName As String) As AcadSelectionSet
   ' Возвращает набор, с заданным именем.
   ' Если набор с таким именем есть, он очищается.
   
   On Error GoTo HasError
   Set GetSelSet = ThisDrawing.SelectionSets.Item(strSelName)
   GetSelSet.Clear
   
Exit Function

HasError:
   Set GetSelSet = ThisDrawing.SelectionSets.Add(strSelName)
   
End Function


Склоняюсь, что такая работа команды выбора объектов - баг

Vova,
Цитата:
Используй Pan (и Zoom) не с колеса, a с соответствующих кнопок, и выделение, ушедшее на грань экрана, сохранится.
Как это делается?

Последний раз редактировалось Vildar, 26.02.2011 в 00:07.
Vildar вне форума  
 
Непрочитано 26.02.2011, 21:33
#50
skkkk


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


Цитата:
Сообщение от Vildar Посмотреть сообщение
Как это делается?
На панели Стандартная (это та, где кнопки Открыть, Сохранить, Печать и др.) по умолчанию есть кнопки с изображением руки и лупы. Так вот рука - это команда _pan - при удержании левой кнопки мыши ты передвигаешь чертеж, словно при нажатом колесе; а лупа - это '_zoom - при зажатой левой кнопке, двигая вверх-вниз, зумируешь чертеж. Эти кнопки - для мышек, у которых нет колеса. Я уже давно удалил их с экрана. Сможешь себе представить работу в КАДе без колесика мыши? Вот и большинство современных КАД-юзеров тоже не могут.
По мне, так этот казус с выбором - тоже баг.
Если б можно было победить его программно, но так, чтоб без нажатия лишней кнопки, думаю, многие были бы рады. А еще я думаю, что некоторым из наших форумчан это под силу... Что-то вроде ставишь некий файлик lisp в автозагрузку, либо в acad.lsp что-то прописываешь - и вот тебе счастье - в рамку выбора попадает все, даже то, что давно скрылось с экрана...
skkkk вне форума  
 
Непрочитано 26.02.2011, 22:20
#51
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Цитата:
Сообщение от skkkk Посмотреть сообщение
На панели Стандартная (это та, где кнопки Открыть, Сохранить, Печать и др.) по умолчанию есть кнопки с изображением руки и лупы. Так вот рука - это команда _pan - при удержании левой кнопки мыши ты передвигаешь чертеж, словно при нажатом колесе; а лупа - это '_zoom - при зажатой левой кнопке, двигая вверх-вниз, зумируешь чертеж.
Травишь? Как сделать _pan в момент растягивании рамки выбора объектов?

Цитата:
Сообщение от skkkk Посмотреть сообщение
Если б можно было победить его программно, но так, чтоб без нажатия лишней кнопки
Мне слабо. Я представляю, что нужно перехватывать событие щелчка мыши в окне чертежа, когда неактивна никакая команда, с учетом сис.переменных выбора PICKDRAG и PICKAUTO, причем системное событие, а не автокадовский реактор (или я плохо искал). Мне так кажется.
Vildar вне форума  
 
Непрочитано 26.02.2011, 23:03
#52
skkkk


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


И вправду, Vova, как это делается?

Цитата:
когда неактивна никакая команда
а также, когда активна любая команда с множественным выбором

Последний раз редактировалось skkkk, 26.02.2011 в 23:09.
skkkk вне форума  
 
Непрочитано 01.03.2011, 06:55
#53
Vova

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


Цитата:
Сообщение от skkkk Посмотреть сообщение
И вправду, Vova, как это делается?
Вынужден признаться что никак. Возможно, что-то получилось-бы если применить колесо без мыши. Ой, наоборот. Но где-ж ее -такую мышку взять? Переловили всех старых мышей
Vova вне форума  
 
Непрочитано 05.03.2011, 11:30
#54
marina_kish


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


ArminVan



подскажите, пожалуйста, в чем причина того, что когда выделяю примитивы, например линию, она становится пунктирной, но отсутствуют ушки на концах и середине, вследствие чего не могу перемещать или удлинять??


У меня такая же проблема ! причем значение переменной grips равно 1. что делать??
marina_kish вне форума  
 
Непрочитано 05.03.2011, 12:50
#55
alex57


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


Ушки на конце линий я тоже не когда не видел, вот на конце отрезка.
А так надо посмотреть вот здесь Сервис._ Настройка._Выбор._Показать ручки.
Миниатюры
Нажмите на изображение для увеличения
Название: Без имени-2.jpg
Просмотров: 66
Размер:	56.3 Кб
ID:	55012  

Последний раз редактировалось alex57, 05.03.2011 в 13:19. Причина: опечатка
alex57 вне форума  
 
Непрочитано 05.03.2011, 19:35
#56
marina_kish


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


да в том то и проблема, что, ручки включены, на большинстве объектов ручки есть, всё редактируется нормально. Но на некоторых они отсутствуют, из за чего не возможно никакое редактирование! вообще уже не знаю, что с ними делать!
marina_kish вне форума  
 
Непрочитано 05.03.2011, 19:39
#57
skkkk


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


Выложи сюда файл с допустим, красным цветом помеченными объектами без ручек - может дело в нем.

Последний раз редактировалось skkkk, 09.03.2011 в 04:10.
skkkk вне форума  
 
Непрочитано 05.03.2011, 20:39
#58
Кулик Алексей aka kpblc
Moderator

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


Или в том, что эти объекты - блоки с отнесенными черт-те куда базовыми точками... Или в том, что эти объекты - прокси
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 08.03.2011, 10:45
#59
marina_kish


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


вот здесь---"разрыв" на лестнице
Вложения
Тип файла: zip 3_4. Планы эт - копия.zip (1.67 Мб, 53 просмотров)
marina_kish вне форума  
 
Непрочитано 09.03.2011, 04:17
#60
skkkk


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


Странно....У меня есть ручки.
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 59
Размер:	16.1 Кб
ID:	55168  
skkkk вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Вопрос про выделение

Реклама i