Форум программистов, компьютерный форум, киберфорум
Геометрия
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
29.09.2021, 15:29
Студворк — интернет-сервис помощи студентам
Так оно и есть все в 3д. Можно свести до 2д. Сечение то плоскость. Можно не крутить уравнение эллипса а крутить проверяемые точки. Тут и численно можно решить и аналитически и смешано. Непонятно только зачем все это вообще.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.09.2021, 15:29
Ответы с готовыми решениями:

Уравнение наклонного конуса
Добрый день! Помогите написать уравнение наклонного конуса, у которого вершина в точке ({x}_{0},{y}_{0},{z}_{0}) и основанием...

Каноническое уравнение наклонного конуса
Дан в размерах эллиптический конус с основанием круг. Дан радиус основания R и высота H. Необходимо получить каноническое уравнение этого...

сечение конуса
помогите, пожалуйста, построить сечение конуса, взяв три точки на его образующих.

29
0 / 0 / 0
Регистрация: 10.07.2015
Сообщений: 16
09.10.2021, 03:13  [ТС]
Здравствуйте! Сорри, что исчез не некоторое время - куча работы было.

Спасибо всем за то что заинтересовались темой.
Честно говоря, посмотрел ссылки и ответы, но ясности не стало больше. Почитал ссылку на конические сечения - там все в общем виде - это и так понятно. Но случая с углами https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta и https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi я там не увидел.

Вы получили по конкретным уравнениям плоскости и конуса сечение - картинку. У меня же наоборот, есть картинка с углами и мне надо аналитически получить уравнение сечения. Далее я его буду обрабатывать в программе на питоне и делать дальнейшие расчеты - поэтому нужно именно аналитическое уравнение сечения по данным углам.

Расскажу, как я делал:
0. Дано: конус из начала координат, с углом раствора https://www.cyberforum.ru/cgi-bin/latex.cgi?\gamma (это угол между направляющими конуса, полученными в сечении плоскостью OYZ, то есть угол между линиями z=k * y и z=-k * y, в той части плоскости, где ось OZ): уравнение я так понимаю такое:
https://www.cyberforum.ru/cgi-bin/latex.cgi?z' = ctg(\frac{\gamma}{2})\cdot\sqrt{x'^2+y'^2}
https://www.cyberforum.ru/cgi-bin/latex.cgi? \alpha это угол между осью конуса и осью OZ, а угол https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta - угол между осью конуса и плоскостью OXY, то есть
https://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha=90^{\circ} -\theta
То есть знаем три угла: https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta \varphiи https://www.cyberforum.ru/cgi-bin/latex.cgi?\gamma и высоту поднятия плоскости OXY h.

1. с помощью матрицы поворота я взял конус из начала координат и повернул его: сначала отклонил от оси OZ на угол https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta (новая ось конуса OZ' образует угол https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta с осью OZ)
Сама матрица такая:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{pmatrix}<br />
  \ 1 & 0 &0 \\<br />
  \ 0 & cos\alpha& -sin\alpha\\<br />
  \ 0 & sin\alpha&   cos\alpha<br />
\end{pmatrix} , где https://www.cyberforum.ru/cgi-bin/latex.cgi? \alpha=90^{\circ} -\theta

2. Далее то, что получилось я повернул на угол https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi в плоскости OXY с помощью матрицы поворота (то есть если взять точку на оси конуса, то она по стандартным правилам. https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi - это угол, который моно представить так: берем одну из точек оси конуса и поворачиваем вокруг ее в плоскости параллельной OXY и поднятой на h на этот угол и все тело за этой точкой тоже как единое целое поворачивается

https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{pmatrix}<br />
  \cos\varphi& -sin\varphi& 0\\<br />
  \sin\varphi& cos\varphi& 0\\<br />
  \ 0& 0& 1 <br />
\end{pmatrix} повернется в плоскости z = h = const.

3. Далее берем общие точки конической поверхности и плоскости, то есть просто подставляем туда вместо z число h и выражаем y(x), или уравнение эллипса https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{x^2}{a^2}+\frac{y^2}{b^2}=1, но прикол в том, что у меня всегда получается гипербола, а должен эллипс. Убил кучу времени. Вот, что я делаю не так?
После всех преобразований у меня получается:
https://www.cyberforum.ru/cgi-bin/latex.cgi?x(y)=x=\pm \frac{\sqrt{(y\cdot cos\theta + h\cdot sin \theta)^2 - (ctg \frac{\gamma}{2})^2 \cdot (h\cdot cos\theta - y\cdot sin \theta)^2}}{ctg \frac{\gamma}{2}} и это не эллипс. Уже многократно проверял - всегда получается гипербола, но по смыслу должен быть эллипс.

Не могли бы вы проделать данную операцию и посмотреть, что у вас получается? если я правильно делаю.
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
09.10.2021, 18:16
Хотите параметрическое или алгебраическое уравнение эллипса?
Зачем это все изначально?
0
0 / 0 / 0
Регистрация: 10.07.2015
Сообщений: 16
09.10.2021, 23:57  [ТС]
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Хотите параметрическое или алгебраическое уравнение эллипса?
Любое, но лучше алгебраическое. нужно, что потом брать точки внутри эллипса и обрабатывать их. Буду брать некоторую точку и смотреть лежит ли она в этом эллипсе. Тут потом придется еще писать перебор точек и выяснение лежит ли она внутри этого эллипса, но сначала нужна граница. Для хитрой интерполяции данных по точкам.
0
1865 / 1054 / 195
Регистрация: 24.02.2013
Сообщений: 3,176
Записей в блоге: 12
10.10.2021, 00:43
Как вариант.
Миниатюры
Сечение наклонного конуса  
1
0 / 0 / 0
Регистрация: 10.07.2015
Сообщений: 16
10.10.2021, 01:59  [ТС]
Цитата Сообщение от Nacuott Посмотреть сообщение
Как вариант
а числа откуда взяты на правом рисунке? в общем виде можно? вы как получили эти уравнения?
0
1865 / 1054 / 195
Регистрация: 24.02.2013
Сообщений: 3,176
Записей в блоге: 12
10.10.2021, 09:27
Цитата Сообщение от Fireball Посмотреть сообщение
а числа откуда взяты на правом рисунке? в общем виде можно? вы как получили эти уравнения?
Fireball,

Странный Вы человек, я сделал как вы просили - по пунктам, оттуда и взялись.
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
10.10.2021, 11:17
Лучший ответ Сообщение было отмечено Fireball как решение

Решение

Nacuott, ТС нужен алгоритм и формулы в общем виде вообще без участия мат пакетов. Т.к. это будет делаться с нуля в своей проге.


Цитата Сообщение от Fireball Посмотреть сообщение
брать некоторую точку и смотреть лежит ли она в этом эллипсе
Цитата Сообщение от Fireball Посмотреть сообщение
лучше алгебраическое
Это нужно было писать в первом посте темы.

В GeoGebra 5 есть коника по 5 точкам, это вроде и есть эллипс.
Название: ScreenShot01372.png
Просмотров: 94

Размер: 6.6 Кб
Может искать так
conic through 5 points.Значит существует и алгоритм задав произвольные 5 точек в 2д найти алгебраическое уравнение эллипса. Можно пускать 5 лучей вместо конуса и брать пересечение лучей и плоскости.


Можно вместо поворота конуса крутить проверяемые точки а эллипс всегда неподвижен.
Можно вместо наклона конуса задавать искажение формы изменяя параметры “a,b” уравнения эллипса.


В общем вам и ненужно уравнение эллипса.
Можно вместо мутного алгоритма получения настоящего уравнения эллипса проверять просто принадлежность точки наклоненному и повернутому конусу и плоскости.
Принадлежность плоскости это проверка Z координаты точки в 3д или уравнению плоскости если она произвольно наклонена.
Принадлежность произвольно наклоненному и повернутому конусу можно через тригонометрию проверять угол между лучом из вершины конуса и заданной точки в 3д и осью конуса. Это намного быстрей и проще поиска уравнения алгеброй или параметрического т.к. не будет минимума 1 неизвестной.
1
1865 / 1054 / 195
Регистрация: 24.02.2013
Сообщений: 3,176
Записей в блоге: 12
10.10.2021, 13:28
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Nacuott, ТС нужен алгоритм и формулы в общем виде вообще без участия мат пакетов. Т.к. это будет делаться с нуля в своей проге.
Так алгоритм ТС описал. Я сделал по его алгоритму. Пусть себе считает - вручною, вножную -как хочет!
Вы с ним занимаетесь пустопорожней болтавней.
0
0 / 0 / 0
Регистрация: 10.07.2015
Сообщений: 16
10.10.2021, 20:57  [ТС]
Я кажется разобрался с вашей помощью!!!

1. Я правильно вывел выше уравнение эллипса, но долго не мог убедиться в этом. У меня получалась гипербола потому, что я неудачно выбирал параметры и строил график - вручную выбирая пределы.
Спасибо one man за статью - я почему то упорно думал, что сечение конуса всегда должно быть эллипсом, но оно может быть и гиперболой. Хотя об этом в следующих пунктах.
так вот я проверил, взяв дискриминант https://www.cyberforum.ru/cgi-bin/latex.cgi?D=B^2-4 \cdot A \cdot C, у нас всегда получается https://www.cyberforum.ru/cgi-bin/latex.cgi?B=0, A \gt 0, а знак C зависит как от угла https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta так и от угла раствора https://www.cyberforum.ru/cgi-bin/latex.cgi?\gamma:
https://www.cyberforum.ru/cgi-bin/latex.cgi?C = sin^2 \theta \cdot (ctg^2 \frac{\gamma }{2} + 1) - 1. Выбирая разные значения мы получим или эллипс или параболу или гиперболу.

Проблема была в том, что:

1) масштабировал неправильно ручками, какую часть графика выбирать, а это было потому что не до конца понимал, как устроено уравнение и был уверен что получается всегда гипербола из-за минуса. Но надо было смотреть на уравнение как в ссылке конические сечения и в вики Конические сечения, там где Координатное представление
Не понимал, какие полуоси.

2) Подставлял неудачные параметры в формулу

Теперь получается вот такая картинка в Wolfram Mathematica

2. Часть задачи в следующем:
Есть погодный радар, который светит конусом с углом раствора https://www.cyberforum.ru/cgi-bin/latex.cgi?\gamma = 3,15^{\circ} в небо: у него есть угол места, под которым наклонен радар к горизонту https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta=90^{\circ}-\alpha, где https://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha - угол между вертикалью OZ и направлением луча радара. Он может вращаться в плоскости OXY на полный оборот: угол https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi - это угол между осью OX и проекцией приемника радара на плоскость OXY - азимутальный угол.
Далее берем сечение луча радара (конуса наклонного) на высоте z = h и по идее получаем эллипс.

Вот тут и был затык тоже и остался вопросик. По идее мы знаем, что конические сечения - бывают трех типов: эллипс, гипербола и парабола. Так как коническая поверхность бесконечна (мы берем малые высоты до 100км), то по логике должен получаться только эллипс, так как плоскость всегда будет сечь конус по бокам (конической поверхности) и не будет по основанию. Но мы получаем иногда гиперболу, если выберем параметры неудачно. Какое-то противоречие здравому смыслу получается! Но по первому пункту это будет если удачно подобраны параметры. А если от руки нарисовать луч в виде конуса и горизонтальную плоскость, то будет всегда эллипс!

Из данных задачи я вывел, что при заданном https://www.cyberforum.ru/cgi-bin/latex.cgi?\gamma из С получается, что если угол места https://www.cyberforum.ru/cgi-bin/latex.cgi?\theta \lt 0,75^{\circ}, то получается гипербола, а для других наклонов радара от https://www.cyberforum.ru/cgi-bin/latex.cgi?0,75^{\circ} до https://www.cyberforum.ru/cgi-bin/latex.cgi?90 ^{\circ} (когда он смотрит ровно вверх) - получится эллипс.

В общем не пойму, почему.
Есть аналогия: что плоскость внутри конуса как вода в коническом стакане. И если наклонить его достаточно сильно, то она начнет выливаться, но все же думаю аналогия не полная. Кто пояснит - буду рад!

3. Уравнение с наклонным конусом на угол https://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha от OZ без поворота на https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi, получается такое:
https://www.cyberforum.ru/cgi-bin/latex.cgi?T_1 = \begin{pmatrix}<br />
  \ 1& 0& 0\\<br />
  \ 0& cos \alpha& -sin \alpha\\<br />
  \ 0& sin \alpha& cos \alpha<br />
\end{pmatrix}, \quad T_1 \cdot \begin{pmatrix}<br />
  \ x\\<br />
  \ y\\<br />
  \ z<br />
\end{pmatrix} =  \begin{pmatrix}<br />
  \ x\\<br />
  \ y \cdot cos \alpha - z \cdot sin \alpha \\<br />
  \ y \cdot sin \alpha + z \cdot cos \alpha<br />
\end{pmatrix} = \begin{pmatrix}<br />
  \ x' \\<br />
  \ y' \\<br />
  \ z'<br />
\end{pmatrix} , где x', y', z' - локальные координаты в наклоненном конусе.
Если для простоты выбрать конус https://www.cyberforum.ru/cgi-bin/latex.cgi?z' = \sqrt {x^2+y^2}, то
получим уравнение:

https://www.cyberforum.ru/cgi-bin/latex.cgi?y \cdot sin \alpha + z \cdot cos\alpha = \sqrt{x^2+(y \cdot cos \alpha - z \cdot sin \alpha)^2}
Отсюда после преобразований получим:

https://www.cyberforum.ru/cgi-bin/latex.cgi?x^2+(y^2-z^2) \cdot cos 2 \alpha = 2yz \cdot sin 2 \alpha, где https://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha должен быть https://www.cyberforum.ru/cgi-bin/latex.cgi?0 \lt \alpha \lt 45 ^{\circ}, чтобы получился эллипс

Сам эллипс получается:

https://www.cyberforum.ru/cgi-bin/latex.cgi? A = cos 2 \alpha, \quad B = 2 sin 2 \alpha<br />
x^2 + (\sqrt{A} \cdot y + \frac{B \cdot h}{\sqrt{2 \cdot \sqrt{A}}})^2 = A \cdot h^2

или https://www.cyberforum.ru/cgi-bin/latex.cgi?x^2+ y'' ^2=A \cdot h^2 и получим уравнение эллипса:
https://www.cyberforum.ru/cgi-bin/latex.cgi? \frac{x^2}{A \cdot h^2} + \frac{y'' ^ 2}{A \cdot h^2}=1, где полуось https://www.cyberforum.ru/cgi-bin/latex.cgi? x = \sqrt{A} \cdot h, а полуось https://www.cyberforum.ru/cgi-bin/latex.cgi? y \sim \frac{y''}{ \sqrt{A} }, и сдвинута по Y на https://www.cyberforum.ru/cgi-bin/latex.cgi?- \frac{B \cdot h}{\sqrt{2 \cdot \sqrt{A}}}, https://www.cyberforum.ru/cgi-bin/latex.cgi?y'' = h

Тут правда тоже есть вопросик: в первом посте у меня есть учет азимутального угла https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi, но в тех уравнениях https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi чудесным образом сокращается! то есть как бы нет зависимости от него, а вроде как должна быть. Почему она пропадает? у меня синусы и косинусы от https://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi там сократились. Хотя по логике вещей должна быть зависимость от него.

4. Хочу выразить благодарность всем, кто откликнулся! и особенно за идею Excalibur921 про принадлежность точки сечению, так как я хотел из данных выбирать эти точки и дальше с ними возиться. Думаю, так как я написал было бы очень сложно перебирать точки по эллипсу.

5. Nacuott, мы видимо не совсем поняли друг друга. Спасибо за картинки! Но мне нужно было уравнение, а вы строили картинки, я хотел понять: как оно получается, чтобы применить для своих нужд. Я и спросил, что значат цифры в вашем посте Сечение наклонного конуса: например,
https://www.cyberforum.ru/cgi-bin/latex.cgi? 3^{ \frac{1}{2} } и -5 - у меня то они могут быть произвольные. Мне нужно в общем виде, а не что-то частное, в терминах https://www.cyberforum.ru/cgi-bin/latex.cgi?h, \theta, \varphi, \gamma
Миниатюры
Сечение наклонного конуса  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.10.2021, 20:57

Прямая является осью кругового конуса. Составить уравнение этого конуса
Прямая (x−2)/2 =(y+1)/−2 =(z+1)/−1 является осью кругового конуса,вершина которого лежит в плоскости Oyz. Составьте уравнение этого...

В конус вписан шар. Отношение объёма конуса к объёму шара 9:4. Найти угол между образующей конуса и основанием
В конус вписан шар. Отношение объёма конуса к объёму шара 9:4. Найти угол между образующей конуса и основанием.

Конус, Сечение конуса
1) Расстояние от центра основа¬ния конуса до его образующей равно 2 корня из 3 см, а угол при вер¬шине осевого сечения — 120°. Найдите: ...

Расчет объёма и площади конуса и усеченного конуса используя классы и ООП
Добрый день! Есть следующая задача:Создать базовый класс «конус», описав в нём функции ввода параметров, вывода их на экран, нахождения...

Дана высота и объем конуса, найти радиус основания конуса
Дана высота и объем конуса, найти радиус основания конуса! сможете еще формулу написать пожалуйста прогроммисты буду учень благодарен


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru