Skip to content

Higashi-Kota/road-tile

Repository files navigation

road-tile

生成

Gemini Advanced 2.5 Pro

設計

Claude 3.7 Sonnet

プロンプト

以下の定義に厳密に従い、パスの設計の対称性を意識して、1パターンごとに、SVG ファイルダウンロードできるようにアーティファクト別で作成してください それぞれの SVG にはパターンを認識できる論理 ID を svg の ID 属性に付番してください

SVG L 字道路タイル生成プロンプト設計

基本仕様

タイルの基本情報

  • タイルサイズ: 40×40 ピクセル(正方形、1:1 のアスペクト比)
  • グリッド分割: 4×4 の格子(16 等分)- 1 マスあたり 10 ピクセル
  • 座標系: 問題では左下が原点(0,0)、右上が(4,4)
  • SVG 座標系変換: SVG では左上が原点のため、Y 座標の反転が必要
    • 変換式: SVG_X = 元の X 座標 × 10、SVG_Y = (4 - 元の Y 座標) × 10

作成パターン

  • 上から侵入して右に退出する(4パターン)
  • 右から侵入して下に退出する(4パターン)
  • 下から侵入して左に退出する(4パターン)
  • 左から侵入して上に退出する(4パターン)

要素の仕様

  1. グリッドライン:

    • 色: 薄いグレー (#cccccc)
    • 線幅: 0.5 ピクセル
    • 5×5 のグリッド線(4×4 のマスを作るため)
    • エッジのグリッド線は見切れないように
  2. 按分点(交点):

    • 色: 赤 (#ff0000)
    • サイズ: 半径 1 ピクセルの円
    • 位置:
      • 上端: (1,4), (2,4), (3,4) → SVG 座標 (10,0), (20,0), (30,0)
      • 右端: (4,1), (4,2), (4,3) → SVG 座標 (40,30), (40,20), (40,10)
      • 下端: (1,0), (2,0), (3,0) → SVG 座標 (10,40), (20,40), (30,40)
      • 左端: (0,1), (0,2), (0,3) → SVG 座標 (0,30), (0,20), (0,10)
  3. L 字道路:

    • 色: 黒 (#000000)
    • 線幅: 1 ピクセル
    • 道路幅: 2 マス分(20 ピクセル)を表現するため、2 本線で描画
    • 形状: Cubic Bezier 曲線を使用した滑らかな L 字カーブでカーブラインは交差しないように
    • 経路:
      • 侵入: 上端の(1,4)-(2,4) → SVG 座標(10,0)-(20,0)
      • 退出: 右端の(4,1)-(4,2) → SVG 座標(40,30)-(40,20)

SVG の実装詳細

パスの設計

  1. 外側の曲線(道路の外側の境界):

    M 10 0 L 10 20 C 10 25, 15 30, 20 30 L 40 30
    
    • 始点: (10,0) - 上端の入口
    • 直線: (10,0)から(10,20)へ垂直に下降
    • Bezier 曲線: (10,20)から曲がり始め、制御点(10,25)と(15,30)を使用
    • 曲線終点: (20,30)
    • 直線: (20,30)から(40,30)へ水平に右へ
  2. 内側の曲線(道路の内側の境界):

    M 20 0 L 20 15 C 20 18, 22 20, 25 20 L 40 20
    
    • 始点: (20,0) - 上端の入口
    • 直線: (20,0)から(20,15)へ垂直に下降
    • Bezier 曲線: (20,15)から曲がり始め、制御点(20,18)と(22,20)を使用
    • 曲線終点: (25,20)
    • 直線: (25,20)から(40,20)へ水平に右へ

制御点の設計原理

  • 曲線の滑らかさを確保するため、制御点は曲線の自然な流れに沿って配置
  • 内側と外側の曲線が平行に見えるよう制御点の位置を調整
  • 外側の曲線は内側の曲線より大きな半径で曲がるため、制御点も比例して調整

SVG コード全体の構造

  1. SVG 宣言とビューポート設定
  2. グリッドラインのグループ(縦線と横線)
  3. L 字道路の定義(外側と内側の 2 本のパス)
  4. 按分点のグループ(上端、右端、下端、左端)

実装上の考慮点

  1. 座標系の変換を正確に行い、問題の座標系と SVG 座標系の整合を取る
  2. 曲線の滑らかさと道路幅の一貫性を確保
  3. 視覚的に明確なコントラストを持つ色の選択
  4. 全ての要素を問題の仕様に厳密に適合させる

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages