Rename Vector2.tangent() to Vector2.orthogonal()
This commit is contained in:
@@ -409,7 +409,7 @@ bool BodyPair2DSW::setup(real_t p_step) {
|
||||
kNormal += A->get_inv_inertia() * (c.rA.dot(c.rA) - rnA * rnA) + B->get_inv_inertia() * (c.rB.dot(c.rB) - rnB * rnB);
|
||||
c.mass_normal = 1.0f / kNormal;
|
||||
|
||||
Vector2 tangent = c.normal.tangent();
|
||||
Vector2 tangent = c.normal.orthogonal();
|
||||
real_t rtA = c.rA.dot(tangent);
|
||||
real_t rtB = c.rB.dot(tangent);
|
||||
real_t kTangent = A->get_inv_mass() + B->get_inv_mass();
|
||||
@@ -469,7 +469,7 @@ void BodyPair2DSW::solve(real_t p_step) {
|
||||
|
||||
real_t vn = dv.dot(c.normal);
|
||||
real_t vbn = dbv.dot(c.normal);
|
||||
Vector2 tangent = c.normal.tangent();
|
||||
Vector2 tangent = c.normal.orthogonal();
|
||||
real_t vt = dv.dot(tangent);
|
||||
|
||||
real_t jbn = (c.bias - vbn) * c.mass_normal;
|
||||
|
||||
@@ -88,7 +88,7 @@ _FORCE_INLINE_ static void _generate_contacts_edge_edge(const Vector2 *p_points_
|
||||
#endif
|
||||
|
||||
Vector2 n = p_collector->normal;
|
||||
Vector2 t = n.tangent();
|
||||
Vector2 t = n.orthogonal();
|
||||
real_t dA = n.dot(p_points_A[0]);
|
||||
real_t dB = n.dot(p_points_B[0]);
|
||||
|
||||
@@ -209,7 +209,7 @@ public:
|
||||
if (!test_axis(na)) {
|
||||
return false;
|
||||
}
|
||||
if (!test_axis(na.tangent())) {
|
||||
if (!test_axis(na.orthogonal())) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -219,7 +219,7 @@ public:
|
||||
if (!test_axis(nb)) {
|
||||
return false;
|
||||
}
|
||||
if (!test_axis(nb.tangent())) {
|
||||
if (!test_axis(nb.orthogonal())) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -450,7 +450,7 @@ static void _collision_segment_circle(const Shape2DSW *p_a, const Transform2D &p
|
||||
|
||||
//segment normal
|
||||
if (!separator.test_axis(
|
||||
(p_transform_a.xform(segment_A->get_b()) - p_transform_a.xform(segment_A->get_a())).normalized().tangent())) {
|
||||
(p_transform_a.xform(segment_A->get_b()) - p_transform_a.xform(segment_A->get_a())).normalized().orthogonal())) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -75,9 +75,9 @@ static inline real_t k_scalar(Body2DSW *a, Body2DSW *b, const Vector2 &rA, const
|
||||
|
||||
static inline Vector2
|
||||
relative_velocity(Body2DSW *a, Body2DSW *b, Vector2 rA, Vector2 rB) {
|
||||
Vector2 sum = a->get_linear_velocity() - rA.tangent() * a->get_angular_velocity();
|
||||
Vector2 sum = a->get_linear_velocity() - rA.orthogonal() * a->get_angular_velocity();
|
||||
if (b) {
|
||||
return (b->get_linear_velocity() - rB.tangent() * b->get_angular_velocity()) - sum;
|
||||
return (b->get_linear_velocity() - rB.orthogonal() * b->get_angular_velocity()) - sum;
|
||||
} else {
|
||||
return -sum;
|
||||
}
|
||||
@@ -264,7 +264,7 @@ bool GrooveJoint2DSW::setup(real_t p_step) {
|
||||
Space2DSW *space = A->get_space();
|
||||
|
||||
// calculate axis
|
||||
Vector2 n = -(tb - ta).tangent().normalized();
|
||||
Vector2 n = -(tb - ta).orthogonal().normalized();
|
||||
real_t d = ta.dot(n);
|
||||
|
||||
xf_normal = n;
|
||||
@@ -282,7 +282,7 @@ bool GrooveJoint2DSW::setup(real_t p_step) {
|
||||
} else {
|
||||
clamp = 0.0f;
|
||||
//joint->r1 = cpvsub(cpvadd(cpvmult(cpvperp(n), -td), cpvmult(n, d)), a->p);
|
||||
rA = ((-n.tangent() * -td) + n * d) - A->get_transform().get_origin();
|
||||
rA = ((-n.orthogonal() * -td) + n * d) - A->get_transform().get_origin();
|
||||
}
|
||||
|
||||
// Calculate mass tensor
|
||||
@@ -332,7 +332,7 @@ GrooveJoint2DSW::GrooveJoint2DSW(const Vector2 &p_a_groove1, const Vector2 &p_a_
|
||||
A_groove_1 = A->get_inv_transform().xform(p_a_groove1);
|
||||
A_groove_2 = A->get_inv_transform().xform(p_a_groove2);
|
||||
B_anchor = B->get_inv_transform().xform(p_b_anchor);
|
||||
A_groove_normal = -(A_groove_2 - A_groove_1).normalized().tangent();
|
||||
A_groove_normal = -(A_groove_2 - A_groove_1).normalized().orthogonal();
|
||||
|
||||
A->add_constraint(this, 0);
|
||||
B->add_constraint(this, 1);
|
||||
|
||||
@@ -228,7 +228,7 @@ void SegmentShape2DSW::set_data(const Variant &p_data) {
|
||||
Rect2 r = p_data;
|
||||
a = r.position;
|
||||
b = r.size;
|
||||
n = (b - a).tangent();
|
||||
n = (b - a).orthogonal();
|
||||
|
||||
Rect2 aabb;
|
||||
aabb.position = a;
|
||||
@@ -612,7 +612,7 @@ void ConvexPolygonShape2DSW::set_data(const Variant &p_data) {
|
||||
for (int i = 0; i < point_count; i++) {
|
||||
Vector2 p = points[i].pos;
|
||||
Vector2 pn = points[(i + 1) % point_count].pos;
|
||||
points[i].normal = (pn - p).tangent().normalized();
|
||||
points[i].normal = (pn - p).orthogonal().normalized();
|
||||
}
|
||||
} else {
|
||||
Vector<real_t> dvr = p_data;
|
||||
@@ -740,7 +740,7 @@ bool ConcavePolygonShape2DSW::intersect_segment(const Vector2 &p_begin, const Ve
|
||||
if (nd < d) {
|
||||
d = nd;
|
||||
r_point = res;
|
||||
r_normal = (b - a).tangent().normalized();
|
||||
r_normal = (b - a).orthogonal().normalized();
|
||||
inters = true;
|
||||
}
|
||||
}
|
||||
@@ -960,7 +960,7 @@ void ConcavePolygonShape2DSW::cull(const Rect2 &p_local_aabb, Callback p_callbac
|
||||
Vector2 a = pointptr[s.points[0]];
|
||||
Vector2 b = pointptr[s.points[1]];
|
||||
|
||||
SegmentShape2DSW ss(a, b, (b - a).tangent().normalized());
|
||||
SegmentShape2DSW ss(a, b, (b - a).orthogonal().normalized());
|
||||
|
||||
p_callback(p_userdata, &ss);
|
||||
stack[level] = (VISIT_DONE_BIT << VISITED_BIT_SHIFT) | node;
|
||||
|
||||
@@ -237,7 +237,7 @@ public:
|
||||
virtual PhysicsServer2D::ShapeType get_type() const { return PhysicsServer2D::SHAPE_SEGMENT; }
|
||||
|
||||
_FORCE_INLINE_ Vector2 get_xformed_normal(const Transform2D &p_xform) const {
|
||||
return (p_xform.xform(b) - p_xform.xform(a)).normalized().tangent();
|
||||
return (p_xform.xform(b) - p_xform.xform(a)).normalized().orthogonal();
|
||||
}
|
||||
virtual void project_rangev(const Vector2 &p_normal, const Transform2D &p_transform, real_t &r_min, real_t &r_max) const { project_range(p_normal, p_transform, r_min, r_max); }
|
||||
virtual void get_supports(const Vector2 &p_normal, Vector2 *r_supports, int &r_amount) const;
|
||||
@@ -431,7 +431,7 @@ public:
|
||||
Vector2 a = points[p_idx].pos;
|
||||
p_idx++;
|
||||
Vector2 b = points[p_idx == point_count ? 0 : p_idx].pos;
|
||||
return (p_xform.xform(b) - p_xform.xform(a)).normalized().tangent();
|
||||
return (p_xform.xform(b) - p_xform.xform(a)).normalized().orthogonal();
|
||||
}
|
||||
|
||||
virtual PhysicsServer2D::ShapeType get_type() const { return PhysicsServer2D::SHAPE_CONVEX_POLYGON; }
|
||||
|
||||
Reference in New Issue
Block a user