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

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

Определение нормали в точке на поверхности сферы

Ответ
Поиск в этой теме
Непрочитано 01.03.2010, 19:43 #1
Определение нормали в точке на поверхности сферы
Circul
 
Регистрация: 27.10.2007
Сообщений: 54

Доброе время суток.

Дана полусфера (сфера). Как построить единичный вектор направленный по нормали из точки, лежащий на поверхности сферы (координаты точки известны), задавая вектор как сумму Px, ,Py ,Pz. То есть мне нужно определить значение величин Px, ,Py ,Pz таких, чтоб их геометрическая сумма равнялась 1 и при этом вектор был по нормали к точке на поверхности.

Нашел статью, кажется то что нужно, но пока не удается разобраться http://www.progz.ru/forum/index.php?showtopic=40859

Буду рад любой помощи, заранее благодарен всем отозвавшимся.
Просмотров: 12369
 
Непрочитано 01.03.2010, 20:37
#2
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


если центр сферы известен
Код:
[Выделить все]
     P-Po
n= --------
    |P-Po|
т.е. нормаль это нормализованый вектор от центра к известной точке.

Статья - не совсем то что нужно, если дана сфера, а не набор треугольников ее образующих
zamtmn вне форума  
 
Автор темы   Непрочитано 01.03.2010, 20:54
#3
Circul


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


Спасибо.
Можно пояснить что такое P и Po.
Если вектор равен 1, то он называется нормализованный?
У меня сфера из большого количества четырехугольников, и нужно приложить единичную вектор-силу в вершинах четырехугольников, при этом я могу изменять только составляющие вектора, Px, ,Py ,Pz.
Circul вне форума  
 
Непрочитано 01.03.2010, 21:07
#4
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


P - известная точка на сфере
Ро - центр сферы
>>Если вектор равен 1, то он называется нормализованный?
да, если длина вектора=1. для нормализации нужно каждую составляющую (x,y,z) разделить на длину
>>У меня сфера из большого количества четырехугольников
т.е. сфера апроксимирована четырехугольниками и чентр ее не известен?

Последний раз редактировалось zamtmn, 01.03.2010 в 21:13.
zamtmn вне форума  
 
Автор темы   Непрочитано 01.03.2010, 21:21
#5
Circul


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


Центр известен и известны координаты каждой вершины образующих четырехугольников.

То есть P(x,y,z), а Po(xo,yo,zo) ?
Как мне воспользоваться вашей формулой?
В числители разность по модулю?
Circul вне форума  
 
Непрочитано 01.03.2010, 21:29
#6
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


в числителе - вектор разности между 2ми точками
в знаминателе длина этого вектора.

формула по шагам:

Nx,Ny,Nz - не нормализованная нормаль
Nx=Px-Pox
Ny=Py-Poy
Nz=Pz-Poz

L-длина не нормализованной нормали
L=кореньиз(Nx*Nx+Ny*Ny+Nz*Nz)

n-нормализованная нормаль (единичной длины)
nx=Nx/L
ny=Ny/L
nz=Nz/L
zamtmn вне форума  
 
Автор темы   Непрочитано 01.03.2010, 23:04
#7
Circul


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


Все получилось!

Спасибо.

А для эллипсоида (у меня эллипсоид вращения, то есть x=y , а z отличается от x и y). Как для него сделать тоже самое.

Наглость, второе счастье.
Circul вне форума  
 
Непрочитано 01.03.2010, 23:10
#8
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


Могу врать, но думаю это будет нормализованная сумма фокальных векторов (разностей от точки к центрам). по шагам сам соображай
zamtmn вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Определение нормали в точке на поверхности сферы



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определение площади поверхности и объема тел в AutoCAD на VBA. shumilovvv Программирование 23 21.07.2014 14:44
Определение коэффициента постели на боковой поверхности буронабивной сваи Sarman Основания и фундаменты 11 01.11.2009 18:12
аналог ssget или определение наличия примитива в точке sv_ispu Программирование 17 12.01.2006 21:16