Skip to content

Collider.RectColliderVisitor ​

当たり判定関連 / 矩形コライダービジター

所属:collisionのAPI解説 · 全モジュール索引

読み方 ​

このページは実ファイルから生成したソース照合用資料です。公開関数の引数・戻り値の型、オーバーロード、列挙値を確認できます。public/protected/privateを区別し、privateメンバーを呼び出し例に使わないでください。コメントは原文であり、古い説明や誤記を含む場合があります。利用条件・訂正は上記のAPI解説と既知の制約を優先してください。

元ファイル:ProjectName/code/Collision/RectCollider/RectColliderVisitor.ixx。確認基準:08f9fa53。

インターフェースとインライン実装 ​

cpp
export module Collider.RectColliderVisitor;
import ColliderVisitor;
import Collider.RectColliderResolver;
import MyLib.Math.Vector2;

using namespace math;

/// <summary>
/// 当たり判定関連
/// </summary>
export namespace col2d
{
    // 前方宣言
    class RectCollider;
    class CircleCollider;

    /// <summary>
    /// 矩形コライダービジター
    /// </summary>
    /// <remarks>
    export class RectColliderVisitor final : public ColliderVisitor
    {
    public:
        /// <summary>
        /// コンストラクタ
        /// </summary>
        RectColliderVisitor(RectCollider& issue);

        // デフォルトコンストラクタは削除
        RectColliderVisitor() = delete;

        /// <summary>
        /// デストラクタ
        /// </summary>
        ~RectColliderVisitor() = default;

        /// <summary>
        /// 矩形コライダーを訪問
        /// </summary>
        /// <param name="_target">訪問する矩形コライダー</param>
        void Visit(RectCollider& target) override;

        /// <summary>
        /// 円形コライダーを訪問
        /// </summary>
        /// <param name="_target">訪問する円形コライダー</param>
        void Visit(CircleCollider& target) override;

    private:
        RectCollider& m_issue; // 訪問する矩形コライダーの参照
        RectColliderResolver m_resolver; // 矩形コライダーの解決処理を行うリゾルバー
    };
}

コード確認基準:08f9fa53 · C++実機検証は別途実施