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

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

Пару наивных вопросов на которые необязательно отвечать :)

Ответ
Поиск в этой теме
Непрочитано 23.04.2005, 14:31 #1
Пару наивных вопросов на которые необязательно отвечать :)
Neznayka
 
Регистрация: 24.03.2005
Сообщений: 320

Пару наивных вопросов на которые необязательно отвечать

Как сделать кнопку, чтоб начертить такой отрезок в котором указывается направление и далее после нажатия "ввода" он сам чертится покуда не уткнется в первое препятствие, в противном случае это будет луч.
Как сделать кнопку, чтоб начертить такой отрезок, который будет в два раза меньше исходного, т.е дали указание на нормальный отрезок, но как только нажали ввод, отрезок получается в 2 раза короче.

Просто любопытно: для чего можно использовать луч и xline?
Я могу лишь только предположить что для временого построения, чтоб затем стереть.

Выбираю _rectang и ввожу например 22. Чертится прямоугольник с диагональю 22. Если повторить это же , то прямоугольник будет другим, но естественно диагональ останется такая же. Каким законом руководствуется Акад.? Методом случайных чисел? А то я логики не нашёл.
Просмотров: 11697
 
Непрочитано 23.04.2005, 14:54
#2
AlexDeRus


 
Регистрация: 10.10.2004
nelegal v evrope
Сообщений: 18


Vsyo ochen' prosto , prosto vybros' avtokad i zajmis' inventorom, togda vse eti voprosy ujdut v letu.
__________________
what does not destroy me, makes me stronger.
AlexDeRus вне форума  
 
Автор темы   Непрочитано 23.04.2005, 15:07
#3
Neznayka


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


Чтоб Лезть В Инвентор Мне Бы Сначала Акад Изучить.
И на каком Языке сделан акад 2005?
Neznayka вне форума  
 
Непрочитано 23.04.2005, 15:26
#4
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Цитата:
Как сделать кнопку, чтоб начертить такой отрезок в котором указывается направление и далее после нажатия "ввода" он сам чертится покуда не уткнется в первое препятствие, в противном случае это будет луч.
Такую кнопку можно сделать с помощью автолиспа. Нужно ли? И что делать если не уткнется?
Цитата:
Как сделать кнопку, чтоб начертить такой отрезок, который будет в два раза меньше исходного, т.е дали указание на нормальный отрезок, но как только нажали ввод, отрезок получается в 2 раза короче.
Подумай...
Нажать кнопку, указать отрезок. Два движения.
Указать отрезок, подтащить один его конец к точке привязки Midpoint.Два движения.
Есть смысл в такой кнопке :?:
Цитата:
Просто любопытно: для чего можно использовать луч и xline?
Я могу лишь только предположить что для временого построения, чтоб затем стереть.
Думаю ты прав.
Цитата:
Выбираю _rectang и ввожу например 22. Чертится прямоугольник с диагональю 22. Если повторить это же , то прямоугольник будет другим, но естественно диагональ останется такая же. Каким законом руководствуется Акад.? Методом случайных чисел? А то я логики не нашёл.
Логика простая. AutoCAD строит вторую точку прямоугольника на прямой (или продолжении прямой) задаваемой первой точкой прямоугольника и текущим положением курсора. Включи Polar, задай там несколько углов и все сразу станет понятно.

Ты это специально :?:
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 23.04.2005, 15:46
#5
Neznayka


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


Такую кнопку можно сделать с помощью автолиспа. Нужно ли? И что делать если не уткнется?
В луч превращать.

Нужно ли?
Изредка.

А про прямоугольник спасибо . как я сразу не догадался

Ты это специально

Не понял.
Я же написал что наивные...
Neznayka вне форума  
 
Непрочитано 23.04.2005, 16:14
#6
Alan

CAD
 
Регистрация: 28.08.2003
Киев
Сообщений: 1,834
<phrase 1=


>Neznayka
Необязательно сразу учить ЛИСП, хотя на нём можно всё, ну или почти всё. Если же ты начал изучать Автокад, то параллельно можно-нужно программировать. Начало - это написания макросов на кнопках. Подрооообненько об этом написал в своей книге В.Свет "AutoCAD Язык макрокоманд и создание кнопок". Удачи! И хорошо что ты задумался о количестве нажатий, верный путь к программированию. Лень двигатель прогресса!
Alan вне форума  
 
Непрочитано 24.04.2005, 00:48
#7
AlexDeRus


 
Регистрация: 10.10.2004
nelegal v evrope
Сообщений: 18


Цитата:
Сообщение от Neznayka
Чтоб Лезть В Инвентор Мне Бы Сначала Акад Изучить.
И на каком Языке сделан акад 2005?
Odno ne vytekaet iz drugogo.
__________________
what does not destroy me, makes me stronger.
AlexDeRus вне форума  
 
Непрочитано 24.04.2005, 01:00
#8
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Цитата:
Не понял.
Я же написал что наивные...
Да шучу я

Среди таких наивных вопросов порой встречаются очень полезные. Люди которые работают много лет привыкают к определенному образу действий и неспособны разглядеть какие то альтернативные подходы. Так что задавай свои вопросы и не стесняйся

Цитата:
Чтоб Лезть В Инвентор Мне Бы Сначала Акад Изучить.
И на каком Языке сделан акад 2005?
Это точно тебе сказали что одно из другого не вытекает. Хотя ИМХО AutoCAD все таки знать надо.

AutoCAD написан на C++ и этот язык позволяет наиболее глубоко залезть в его структуру поскольку для этого Autodesk выпускает специальные библиотеки ObjectARX. А какая разница на чем он написан?
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 24.04.2005, 09:33
#9
Neznayka


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


А какая разница на чем он написан?
Да так просто. Врага надо знать в лицо

Будут еще наивные вопросы- обязательно задам. Вы только отвечайте

А чуть не забыл. Так для чего нужны лучи да прямые, неужели только для времянки
Neznayka вне форума  
 
Непрочитано 24.04.2005, 15:31
#10
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


А тогда вот еще в догонку к лучам и прямым: Для чего нужны ТОЧКИ, те самые, которые получаются командой _.point :?:
vk вне форума  
 
Автор темы   Непрочитано 24.04.2005, 16:02
#11
Neznayka


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


Ну мне точки нужны, как опорные данные. Правда я их потом обычно стираю.
Но вот лучи, куда их приспособить, я только могу представить при огромной фантазии
Neznayka вне форума  
 
Непрочитано 24.04.2005, 16:20
#12
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


Лучи не использовал, а XLINE изредка. Просто как опорную линию. Потом или стираю или обрезаю чтоб отрезок остался... Впрочем, последний все равно потом в какуюнить полилинию или регион уйдет...
А луч - это ж половинка прямой.
Кстати, помницца в какой то программульке использовал его (на предмет определения точек пересечения с полилинией)
vk вне форума  
 
Непрочитано 24.04.2005, 20:29
#13
Perezz!!

архитектор
 
Регистрация: 21.08.2003
Москва
Сообщений: 3,587


Здесь могла быть пара ответов на пару наивных вопросов. Но ведь на них необязательно отвечать, поэтому я не отвечаю.
Perezz!! вне форума  
 
Непрочитано 25.04.2005, 10:06
#14
Геннадий aka PG

Машиностроение, Проектирование
 
Регистрация: 15.09.2003
Москва
Сообщений: 1,113
<phrase 1=


Цитата:
Сообщение от Perezz!!
Здесь могла быть пара ответов на пару наивных вопросов. Но ведь на них необязательно отвечать, поэтому я не отвечаю.
>Perezz!!
А вот это нонсенс!
Сам пост уже и есть ответ!
__________________
С уважением,
Геннадий aka PG
Геннадий aka PG вне форума  
 
Непрочитано 25.04.2005, 10:49
#15
Alxd

Разработчик САПР
 
Регистрация: 14.05.2004
Тюмень
Сообщений: 467
<phrase 1=


Цитата:
чтоб начертить такой отрезок, который будет в два раза меньше исходного
Команда lengthen. Для кнопки подойдет примерно такое _lengthen;_p;50; а дальше выбирай объекты, которые будут в 2 раза меньше. Точнее будут составлять 50% от длины
Alxd вне форума  
 
Автор темы   Непрочитано 25.04.2005, 22:59
#16
Neznayka


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


Alxd
знаю эту команду, но мне не так надо.
мне бы кнопочку :roll:
Neznayka вне форума  
 
Непрочитано 26.04.2005, 06:24
#17
Alxd

Разработчик САПР
 
Регистрация: 14.05.2004
Тюмень
Сообщений: 467
<phrase 1=


Незнайка, ты чего???
Создай кнопку в панели инструментов и в ее свойствах пропиши команду ^C^C_lengthen;_p;50;
Усе!!!
Alxd вне форума  
 
Автор темы   Непрочитано 26.04.2005, 20:34
#18
Neznayka


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


Alxd , на твоем ответе я понял что мне необходимо было ответить развернуто.
А так ты понял совершено все по-другому.
Это моя вина.
Итак пример:
представь генплан; посередине, между двумя зданиями находиться например произвольный объект, который мне необходимо там повесить.
Что я раньше делал- чертил отрезок и с помощью привязок его уменьшал в двое. Я же захотел такую кнопку с помощью которой я чертил бы все такую же линию, но она в итоге выходила вдвое меньше!
Надеюсь хоть и сумбурно , но донес до вас свою мысль.
А использовать команду УВЕЛИЧИТЬ выгодно лишь при большом объеме работ. А у меня не тот случай.
Спасибо что дочитали до конца.
Neznayka вне форума  
 
Непрочитано 27.04.2005, 06:30
#19
Alxd

Разработчик САПР
 
Регистрация: 14.05.2004
Тюмень
Сообщений: 467
<phrase 1=


Четтонедогнал!!!
Прости.
Alxd вне форума  
 
Автор темы   Непрочитано 27.04.2005, 08:12
#20
Neznayka


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


Чертишь обычный отрезок, а получается в 2 раза меньше - я так хочу. Сразу чтоб было.
А по-твоему, мало того что отрезок целиком начертить надо, так потом лезь и его уменьшай. Не выгодно. Много движений.
Neznayka вне форума  
 
Непрочитано 27.04.2005, 10:09
#21
MIP

инженер
 
Регистрация: 13.12.2004
Минск
Сообщений: 496


>>Neznayka
Для решения Вашей задачи нужен более подробный алгоритм! Во первых как Вы отрисовываете линию, по двум точкам, по точке и длинне, по точке, длинне и углу (в принципе предыдущий случай только с явным указанием угла) или испотльзуете все методы. Во вторых относительно какой точки на построенной прямой происходит уменьшение линии в два раза конечной точки, середины отрезка или вообще эта точка должна получаться путем некоторыжх только Вам известных построений. Расписав конкретно что Вам надо и что дано, Вам возможно подскажут как сделать! :wink:
__________________
Сейчас такая знаний бездна
доступна всякому уму,
что стало спорить бесполезно
и глупо думать самому.
MIP вне форума  
 
Непрочитано 27.04.2005, 11:19
#22
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Цитата:
Чертишь обычный отрезок, а получается в 2 раза меньше - я так хочу. Сразу чтоб было.
А по-твоему, мало того что отрезок целиком начертить надо, так потом лезь и его уменьшай. Не выгодно. Много движений.
Как то так:
Код:
[Выделить все]
(defun c:halfline()
  (command "_.line" pause pause "")
  (command "_.lengthen" "_p" "50" (entlast) "")
  (princ)
  ); end c:halfline
{Smirnoff} вне форума  
 
Непрочитано 27.04.2005, 11:34
#23
Кулик Алексей aka kpblc
Moderator

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


> Fantomas :
По-моему, не совсем прокатит: команда lengthen в качестве последнего аргумента требует указать не столько объект, сколько сторону этого объекта, которая будет обрезана.
Может быть, имеет смысл использовать нечто вида
Код:
[Выделить все]
(defun c:halfline()
  (setq StartLine (getpoint "Line start point"))
  (setq EndLine (getpoint "Line end point"))
  (command "_.line" StartLine EndLine "")
  (command "_.scale" "_Last" "" StartLine 0.5)
  )
Код непрофессиональный, отрицательных моментов тьма - предупреждаю сразу.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.04.2005, 12:32
#24
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


>kpblc

Незнаю, у меня работает. Я попробывал передавать в качестве аргумента _.lengthen по аналогии с _.trim список из точки указания объекта и самого объекта, однако это не прокатывает...
{Smirnoff} вне форума  
 
Непрочитано 27.04.2005, 12:47
#25
Кулик Алексей aka kpblc
Moderator

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


Понял, молчу, дурак. Можно тогда мое чудовище потереть как класс?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.04.2005, 13:08
#26
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


>kpblc
Все что угодно только не дурак. Это точно. Нормальный лисп выполняющий свою задачу. Единственное что невидно динаминки при отрисовке линии (а она нужна ли она). Вот так будет по твоему, но отрисовкой линии в динамике:
Код:
[Выделить все]
(defun c:halfline(/ pt)
  (command "_.line" pause pause "")
  (setq pt(cdr(assoc 10(entget(entlast)))))
  (command "_.scale" (entlast) "" pt 0.5)
  (princ)
  ); end c:halfline
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 28.04.2005, 08:47
#27
Neznayka


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


Fantomas, огромное спасибо, работает как часики.
Осталось лишь меня просветить , тёмного, как этот лиспик на кнопку повесить.
И вообще люди Вы столько много написали после моего подробного объяснения.
Но я ж это в самом начале просил, что тогда было совсем непонятно?
А Вы MIP, меня не поняли. Конечно я отрисовываю линию по двум точкам, иначе если я знаю расстояние, то я в голове его могу поделить на 2! И все тогда теряет смысл. Уменьшение должно было происходить желательно с начальной точки.
Народ, спасибо за "необязательные" ответы
Neznayka вне форума  
 
Непрочитано 28.04.2005, 08:58
#28
Кулик Алексей aka kpblc
Moderator

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


Ну если без проверки, загружен лисп или нет (файл должен быть доступен по support file path):
Код:
[Выделить все]
^C^C(load "library.lsp");halfline
Если место файла отдельно, то надо прописывать полный путь, например:
Код:
[Выделить все]
^C^C(load "d:/cad_adds/library.lsp");halfline
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 28.04.2005, 10:02
#29
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


kpblc, чой-то я не понял, кто здесь лентяй. Вставка проверки совсем не большого труда стоит. Вот так примерно:

^C^C(if (null HALFLINE) (load "HALFLINE")) (C:HALFLINE)

Ессно, путь к HALFLINE.LSP должен быть прописан в Options.
Лентяй вне форума  
 
Непрочитано 28.04.2005, 10:23
#30
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от Лентяй
kpblc, чой-то я не понял, кто здесь лентяй. Вставка проверки совсем не большого труда стоит. Вот так примерно:

^C^C(if (null HALFLINE) (load "HALFLINE")) (C:HALFLINE)

Ессно, путь к HALFLINE.LSP должен быть прописан в Options.
Да я и не спорю. Но соображалка что-то... в общем, отказывается работать.
Я-то посмотрел на макросы, которые прописаны в CAD 2005 на подобные штуки, понял, что DIESEL подзабыл и полез туда, а ответ написал, который работает нормально.
P.S. Пжалста, без обид. Буду теперь писать ">> Лентяй", ок? Так нормально, понятно, к кому я обращаюсь?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 28.04.2005, 10:47
#31
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Я имел в виду, что ленивее меня никого нет. Потому я - Лентяй с Большой буквы, а все остальные - так, лентя,, лентяйчики и подлентяешки. А я - единственный Лентяй, в своей Лени унинкальный, и потому - неповторимый. Вот.
Лентяй вне форума  
 
Непрочитано 28.04.2005, 13:21
#32
Pilot

Проектировщик свиноводство
 
Регистрация: 21.08.2003
Сообщений: 2,291


Нет. Самым ленивым был Верещагин, именем которого назван метод решения статически неопределимых конструкций. Это - хрестоматийный пример.
Pilot вне форума  
 
Автор темы   Непрочитано 01.05.2005, 09:21
#33
Neznayka


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


Не могу заштриховать сплайн . Солидом залить могу , а вот ANSI31 не могу, не даёт Автокад.
Сплайн большой (где-то с А3), чертеж тоже большой (А0) хотя весит мало (1 Мб).
Хотя с раза двадцатого один раз получилось, просто тупо повторял одно и тоже и через ctrl+1 все-таки поменял штриховку.
Штриховка редкая (масштаб 100), пробовал поставить масштаб равный 1 - и мой довольно дохловатый комп смог ворочать эту штриховку. Значит дело не производительности, а в чём???
Neznayka вне форума  
 
Непрочитано 09.05.2005, 20:06
#34
Anton_MADI


 
Регистрация: 04.05.2005
Королев
Сообщений: 3


Я почитал ответы и понял - самой большой незнайка здесь я!
Буду всем благодарен если вы ответите и на мой наивный вопрос:
Возможно ли перевести рисунок из формата "Microsoft Office Document Imaging" в чертеж АвтоКАДа.. (на рисунке - чертеж детали) :?:
И вообще, что это это такое (Microsoft Office Document Imaging) и с чем его "едят" :?:
За ответы заранее спасибо!
Anton_MADI вне форума  
 
Автор темы   Непрочитано 10.05.2005, 09:54
#35
Neznayka


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


Anton_MADI у тебя должен быть офис 2003 там есть Microsoft Office Document Imaging" (он еще виртуальным принтером делается)
В свойствах этой программы ты меняешь формат печати с *.mdi на tif,
ну а дальше ты сам знаешь
Neznayka вне форума  
 
Непрочитано 14.05.2005, 01:39
#36
Anton_MADI


 
Регистрация: 04.05.2005
Королев
Сообщений: 3


Я же говорю: я самый большой незнайка)))
И что делать с .tif - тоже не знаю...
Anton_MADI вне форума  
 
Автор темы   Непрочитано 14.05.2005, 10:51
#37
Neznayka


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


с тифом вставлять Акад и обводить
(вставлять просто - ты с Проводника просто перетащи в рабочее поле Акада и 3 раза на пробел нажми
Neznayka вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Пару наивных вопросов на которые необязательно отвечать :)