35#pragma region 算術演算子 %抜き
57#pragma region 算術代入子 %抜き
128 return x * _num.
x +
y * _num.
y;
134 return x * _num.
y -
y * _num.
x;
152 T vecLength = sqrt((
x *
x) + (
y *
y));
236 T cross =
Cross(_vec);
243 return (
Dot(_vec) >= 0.0f);
279 template<
typename Type>
326 return atan2(_vec.
y, _vec.
x);
339 return atan2(_vec.
y, _vec.
x);
349 template<
typename type>
353 tmp.
x = cos(_radian);
354 tmp.
y = sin(_radian);
409 Line2D<T>(_startPoint, _direction){}
static T Pow(const T &_num, const unsigned int &_cnt)
べき乗,累乗
Definition KisaragiMath.hpp:126
static double RadianToDegree(const double &_radian)
ラジアン値を角度に変換する.
Definition KisaragiMath.hpp:47
Definition Accessor.hpp:110
static bool IsRange(T _val, T _rangeMin, T _rangeMax)
valが範囲内か調べる
Definition utility.hpp:59
Point2D< T > Scale2D
サイズを表すプリミティブ型 実体はPoint2D<T>と変わりありません
Definition Primitive.hpp:193
static bool EpsilonIf(T _val01, T _val02, T _epsilon)
_valの差が_許容範囲内か調べる
Definition utility.hpp:44
static const double EPSILON
Definition Primitive.hpp:20
AABB(Scale2D< T > _size)
Definition Primitive.hpp:467
Point2D< T > RightBottomPoint()
Definition Primitive.hpp:479
AABB(Point2D< T > _offset, Scale2D< T > _size)
Definition Primitive.hpp:466
Point2D< T > offset
Definition Primitive.hpp:462
Point2D< T > LeftTopPoint()
Definition Primitive.hpp:471
Scale2D< T > size
Definition Primitive.hpp:464
T radius
Definition Primitive.hpp:443
Capsule2D()
Definition Primitive.hpp:445
Segment2D< T > segment
Definition Primitive.hpp:442
Capsule2D(Point2D< T > _point, Vector2D< T > _vector, T _radius)
Definition Primitive.hpp:449
Capsule2D(Segment2D< T > _segment, T)
Definition Primitive.hpp:447
Circle2D(Point2D< T > _center, T _radius)
Definition Primitive.hpp:431
Circle2D()
Definition Primitive.hpp:429
Point2D< T > center
Definition Primitive.hpp:426
T radius
Definition Primitive.hpp:427
Line2D()
Definition Primitive.hpp:373
Point2D< T > startPoint
Definition Primitive.hpp:370
Line2D(Point2D< T > _startPoint, Vector2D< T > _direction)
Definition Primitive.hpp:375
Point2D< T > GetPoint(T _length)
Definition Primitive.hpp:380
Vector2D< T > direction
Definition Primitive.hpp:371
点を表すプリミティブ型
Definition Primitive.hpp:29
Point2D GetNormalize() const
Definition Primitive.hpp:176
const Point2D operator+=(const Point2D _num)
Definition Primitive.hpp:58
Point2D operator*(const Point2D _num) const
Definition Primitive.hpp:46
Point2D operator+(const Point2D _num) const
Definition Primitive.hpp:36
T y
Definition Primitive.hpp:30
T Dot(const Point2D _num) const
Definition Primitive.hpp:126
const Point2D operator-=(const Point2D _num)
Definition Primitive.hpp:66
T x
Definition Primitive.hpp:30
Point2D< T > Normalize()
ベクトルを正規化する.
Definition Primitive.hpp:150
Point2D operator/(const Point2D _num) const
Definition Primitive.hpp:51
T Cross(const Point2D _num) const
Definition Primitive.hpp:132
T Length() const
Definition Primitive.hpp:138
const Point2D operator*=(const Point2D _num)
Definition Primitive.hpp:74
Point2D operator-() const
Definition Primitive.hpp:120
Point2D(T _x, T _y)
Definition Primitive.hpp:33
const Point2D operator/=(const Point2D _num)
Definition Primitive.hpp:82
Point2D()
Definition Primitive.hpp:32
始点と方向ベクトルで示される有限の直線を表すプリミティブ型
Definition Primitive.hpp:402
Segment2D()
Definition Primitive.hpp:406
Segment2D(Point2D< T > _startPoint, Vector2D< T > _direction)
Definition Primitive.hpp:408
Point2D< T > EndPoint() const
Definition Primitive.hpp:411
ベクトルを表すプリミティブ型
Definition Primitive.hpp:203
static Vector2D< type > RadianToVector(const type _radian)
ラジアンからベクトルを取得する. 0度がどこかは知らない.
Definition Primitive.hpp:350
bool isParallel(const Vector2D _vec) const
Definition Primitive.hpp:234
double Degree()
自身の角度を求める.
Definition Primitive.hpp:305
Vector2D()
Definition Primitive.hpp:212
static double ToDegree(Vector2D< T > _vec)
正規化された方向ベクトルから角度を求める.
Definition Primitive.hpp:291
static Vector2D< T > GetNormalVector(Vector2D< T > _vec, bool _clockwise=true)
ベクトルから法線ベクトルを求める
Definition Primitive.hpp:252
double ToRadian()
方向ベクトルからラジアン値を求める.
Definition Primitive.hpp:334
Vector2D(const Point2D< T > &_p)
Definition Primitive.hpp:224
bool isVertical(const Vector2D _vec) const
Definition Primitive.hpp:227
static double ToRadian(Vector2D< T > _vec)
方向ベクトルからラジアン値を求める.
Definition Primitive.hpp:321
Vector2D(T _x, T _y)
Definition Primitive.hpp:213
Vector2D operator=(Point2D< T > _p)
Definition Primitive.hpp:215
static Vector2D< Type > PointToVector(const Point2D< Type > _startPoint, const Point2D< Type > _endPoint)
2点から方向ベクトル(非正規)を得る
Definition Primitive.hpp:280
bool isSharpAngle(const Vector2D _vec) const
Definition Primitive.hpp:241