Files
o3de/Gems/WhiteBox/Editor/Scripts/WhiteBoxMath.py
T
Steve Pham b4a2edec6a Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
2021-06-30 19:51:55 -07:00

31 lines
966 B
Python
Executable File

"""
Copyright (c) Contributors to the Open 3D Engine Project. For complete copyright and license terms please see the LICENSE at the root of this distribution.
SPDX-License-Identifier: Apache-2.0 OR MIT
"""
# setup path
import azlmbr.object
import azlmbr.math as math
# returns a Vector3 of cartesian coordinates from spherical coordinates
# phi and theta are in degrees
def spherical_to_cartesian(phi, theta, dist=1.0):
phi = math.Math_DegToRad(phi)
theta = math.Math_DegToRad(theta)
x = float(dist) * float(math.Math_Sin(phi)) * float(math.Math_Cos(theta))
y = float(dist) * float(math.Math_Sin(phi)) * float(math.Math_Sin(theta))
z = float(dist) * float(math.Math_Cos(phi))
return math.Vector3(x, y, z)
# converts two Cartesian points into their midpoint, normalized into a vector of size r
def normalize_midpoint(pos1, pos2, r=1.0):
pos = pos1.Add(pos2).MultiplyFloat(0.5)
pos.Normalize()
return pos.MultiplyFloat(r)