Skip to content

Repository files navigation

ソフトテニスIQ|陣形ラボ

ソフトテニスの陣形をドラッグで自由に試せるコート分析Webアプリです。選手をタップするとセオリー線・返球エリア・デッドゾーンが表示され、相手の守備範囲を「ラケット◯本分」で読めます。競技者・指導者・保護者がスマホ・タブレット・PCのブラウザからそのまま使えます。

公開URL

主な機能

  • 選手をタップでセオリー線・返球エリア・デッドゾーンを表示(最大4人分の同時表示)、ドラッグで自由配置
  • 距離はすべて「ラケット◯本分」換算(1本 = 0.69m)。大人も子供も同じ物差しで、カバー圏内/踏み込みで届く/リーチ外の判定バッジ付き
  • 相手選手ごとに担当コース(近い外側とセンター)への距離をコート上とパネルに表示
  • 配置プリセット: 正クロス/逆クロス/右ストレート/左ストレート+チーム別陣形(雁行陣・W後衛・W前衛)
  • コートの縦横に実寸ラケットの定規(つかんで平行移動できる物差し)
  • ピンチズーム・コートのスライド・90度回転・配置メモリ(端末内3枠)・前提メモ・配置の画像保存
  • オフライン利用に備えたPWA対応(ホーム画面に追加するとアプリのように起動)

使い方

  1. 公開URLを開きます。
  2. 選手をタップしてセオリー線と守備範囲を表示し、ドラッグで配置を動かします。
  3. 右端の「設定」から展開・陣形プリセットや利き手・打球面を切り替えます。
  4. コート右下のカメラボタンで、配置を画像として保存・共有できます。

データ/プライバシー

  • アカウント登録はありません。
  • 配置メモリ・初回ヒント表示の記録は、利用者のブラウザ内(localStorage)にのみ保存されます。
  • 入力データを開発者や外部サーバーへ送信する機能はありません。外部API・アクセス解析も使用していません。
  • 前提メモ等に個人名・学校名などを入力して画像共有する場合は、投稿先での見え方に注意してください。
  • 詳細は PRIVACY.md を確認してください。

権利/ライセンス

  • コード: All rights reserved(オープンソースライセンスは付与していません)
  • 画面デザイン・文言・コート分析の表現・画像も omicreate に帰属します。
  • 詳細は LICENSE.mdTERMS.mdSECURITY.md を確認してください。

技術構成

  • 実行方式: Vite + React + TypeScript(ビルド後は静的配信・バックエンドなし)
  • PWA: public/manifest.webmanifestpublic/sw.js。Service Worker の事前キャッシュ一覧はビルド時に scripts/build-sw.mjsdist/sw.js へ埋め込みます(npm run build に含まれます)
  • 主なファイル: src/App.tsx(画面と状態)、src/CourtCanvas.tsx(コート描画と操作)、src/geometry.ts(座標・距離計算)、src/presets.ts(監修済み基準配置)
  • コート寸法は公式規格(23.77m × 10.97m・シングルス幅8.23m)を座標系の基準にしています。

確認方法

npm install
npm run build
npm run dev

ブラウザで表示し、選手のタップ・ドラッグ・プリセット読込・距離表示・画像保存を確認します。

注意事項

  • このアプリは公式団体の認定・監修アプリではありません。
  • セオリー線・デッドゾーン・距離判定は、平面上の戦術分析を目的とした簡略モデルです。ボールの高さ・回転・速度は扱っていません。

About

ソフトテニスIQ|陣形ラボ — 陣形をドラッグで試せるコート分析Webアプリ

Topics

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages