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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как пересчитать параметры круга (дуги) - dxf код 210

Как пересчитать параметры круга (дуги) - dxf код 210

Ответ
Поиск в этой теме
Непрочитано 25.11.2022, 15:39 #1
Как пересчитать параметры круга (дуги) - dxf код 210
===AAA===
 
г. Норильск
Регистрация: 15.08.2005
Сообщений: 320

Всем привет!

Имею в модели круг, немного приподнятый над "нулевой плоскостью",
да ещё и слегка повернутый вокруг своей оси (формально выглядит,
как эллипс, но лишь слегка).

Его параметры /группы DXF/: (10 6004.09 -6085.71 325.245) и
(210 -5. 88616e-005 -0.0512612 0.998685)

/цифры реальные/

Нужно "опустить" его на "нулевую" плоскость, чтобы при виде спереди
он выглядел, не как "линза, висящая в воздухе", а как "линза, лежащая
в плоскости X=1, Y=1, Z=0.

Через "свойства" (меняя высоту Z) я его легко опускаю.

Его параметры становятся при этом:
(10 6004.09 -6086.37 312.406) и
(210 -5.88616e-005 -0.0512612 0.998685)

т.е. Z изменилась, но стала не нулевой, а какой-то 312.406

Вопрос: как её вычислить?

С функцией (trans ...) и так и эдак крутился. Идеи закончились.
Кто подскажет?

И да, тему:

https://forum.dwg.ru/showthread.php?...c90o1200236215

видел, конечно.
__________________
Счастливо, Алексей!
Просмотров: 2718
 
Автор темы   Непрочитано 28.11.2022, 12:09
#2
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 320


Прикладываю файл, чтобы не так абстрактно оно выглядело.

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

Поэтому - пока - "Шаг 1": опустить их вниз, на плоскость X=1, Y=1, Z=0.
Вложения
Тип файла: dwg
DWG 2013
Висящий круг.dwg (60.1 Кб, 8 просмотров)
__________________
Счастливо, Алексей!
===AAA=== вне форума  
 
Непрочитано 29.11.2022, 10:02
1 | #3
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,494


Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
пересчитать параметры круга (дуги)
Код:
[Выделить все]
 
(setq object (vlax-ename->vla-object (car (entsel))))
(vla-put-normal object (vlax-3d-point 0 0 1))
(vla-put-center object (vlax-3d-point (list (car (vlax-get object 'center)) (cadr (vlax-get object 'center)) 0)))
но это будут НЕ проекции круга (дуги) на плоскость X0Y, а их укладка на эту плоскость с выравниванием их нормалей параллельно оси Z.
__________________
K Lisp
koMon вне форума  
 
Автор темы   Непрочитано 29.11.2022, 12:16
#4
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 320


Да, конечно - "в лоб" проекции для круга сделать и не получится.
Для этого его в эллипс преобразовывать нужно.
Или в блок с разными масштабами по X и Y.

Да и сама задача у меня странная слегка... Вот и ищу решения с
"приемлемой степенью неточности".

Во! Как раз 3-й строки мне для счастья и не хватало. :-)
__________________
Счастливо, Алексей!

Последний раз редактировалось ===AAA===, 29.11.2022 в 12:23.
===AAA=== вне форума  
 
Автор темы   Непрочитано 01.12.2022, 12:34
#5
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 320


Кстати, а есть стандартные функции, позволяющие выбрать 3D-объекты,
попадающие в некий объём, заданный, скажем, двумя точками
(2 2 10) и (5 5 20) - "вид сверху" ?

Типа (ssget) "рамка" и "секрамка", но только не для плоскости, а в объёме.

Вернее даже не так.

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

Проблема в нехватке точности ssget, т.к. выбор объектов идёт с точностью
"до экранного пикселя" и при плотных чертежах в наборы попадает лишнее.
__________________
Счастливо, Алексей!

Последний раз редактировалось ===AAA===, 02.12.2022 в 07:03.
===AAA=== вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как пересчитать параметры круга (дуги) - dxf код 210

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как из ObjectArx (.Net) вызвать функцию Лисп, передать в нее параметры и получить измененные параметры назад? nickname2019 Программирование 9 16.04.2020 06:16
Обязанность изготовителя указывать параметры в соотвтетствии с ГОСТ Алексей СПБ-САМ Металлические конструкции 1 27.09.2018 09:36
Как добавить в полилинию дуги loginovskiy Программирование 8 19.08.2014 12:45
AutoCAD civil 3D 2012 - параметры перехода из Pulkovo_to_WGS84. Pavel_GP Вертикальные решения на базе AutoCAD 2 30.09.2011 11:05
Програмка построения дуги по длине хорды и длине дуги b_anton Программирование 11 21.01.2011 06:45