チェス盤を描くには



Draw Chessboard



解決:

チェス盤パッケージを使用できます。

 documentclass {article}  usepackage {chessboard}  usepackage {skak}  begin {document}  setchessboard {showmover = false}  newgame  Chestsboard  end {document}

ここに画像の説明を入力してください



そして、あなたはあなたが望むようにあなたのチェスボードをパーソナライズすることができます。たとえば(私があなたが達成したいことを正しく理解している場合):

 documentclass {article}  usepackage [LSBC3、T1] {fontenc}  usepackage {chessboard}  usepackage {skak}  usepackage {color}  begin {document}  setboardfontencoding {LSBC3}  setchessboard {showmover = false}  newgame チェス盤[coloremph、fieldmaskcolor = red、fieldcolor = red、emphareas = {a1-a8、c1-c8、e1-e8、g1-g8}、coloremph、fieldmaskcolor = white、fieldcolor = white、emphareas = {b1-b8、d1 -d8、f1-f8、h1-h8}]  end {document}

ここに画像の説明を入力してください



またはより奇妙な構成:

 documentclass {article}  usepackage [LSBC3、T1] {fontenc}  usepackage {chessboard}  usepackage {skak}  usepackage {color}  begin {document}  setboardfontencoding {LSBC3}  setchessboard {showmover = false}  newgame チェス盤[coloremph、fieldmaskcolor = red、fieldcolor = red、emphareas = {a8-b7、c3-c5、e4-e7、f7-g7、g1-h3}、coloremph、fieldmaskcolor = white、fieldcolor = white、emphareas = {a1 -b6、c6-d8、c1-d2、d3-d5、e8-h8、e1-f3、f4-h6}]  end {document}

ここに画像の説明を入力してください


PSTricksで

 documentclass [pstricks] {standalone}  psset {linecolor = brown}  begin {document}  begin {pspicture}(8,8) multips(0,0)(0,2){4} {% multips( 0,0)(2,0){4} {% psframe *(1,1) psframe *(1,1)(2,2)}}  end {pspicture}  end {document}

ここに画像の説明を入力してください



アルゴリズム

次のアニメーションは、ボードの生成に使用されるアルゴリズムを示しています。

ここに画像の説明を入力してください

PSTricksなし

 documentclass [tikz] {standalone}  begin {document}  begin {tikzpicture} [x = 1cm]  foreach  y in {0,2、...、6} { foreach  x in {0,2、 ...、6} { fill( x、 y)rectangle(1+  x、1 +  y)rectangle(2 +  x、2 +  y);}}  end {tikzpicture}  end {資料}

出力は視覚的に同じなので、もう一度表示する必要はないと思います。


質問には「家の色は型破り」というテキストが含まれているため、適用する色と、チェス盤の行/列のサイズと数を制御する必要があると思いました。以下はあなたがそれをすることを可能にします;従来のチェス盤を簡単に描くことができますが、要求に応じて型破りなパターンを簡単に作成することもできます。

 documentclass {article}  usepackage [dvipsnames] {xcolor}  usepackage {keyval}  def  Side { ChessSide}  newcommand  ChessBoxA {%{ fboxsep = 0pt  fbox { color { ChessColori}  rule { Side} { Side}}}}  newcommand  ChessBoxB {%{ fboxsep = 0pt  fbox { color { ChessColorii}  rule { Side} { Side}}}}  makeatletter  newcommand  Row [1 ] {% par  nobreak  nointerlineskip  vskip-  fboxrule% @ tfor  @tempa:=#1  do { csname ChessBox  @tempa  endcsname  kern-  fboxrule}}  [メール保護] {chessB } {side} { def  ChessSide {#1}}  [メール保護] {chessB} {colori} { def  ChessColori {#1}}  [メール保護] {chessB} {colorii} { def  ChessColorii {#1}}  setkeys {chessB} {side = 1.5em、colori = black!70、colorii = white}  makeatother  newcommand  Conventional [1] [] {% begin {Chessboard} [#1] 行{B、A、B、A、B、A、B、A} 行{A、B、A、B、A、B、AB} 行{B、A、B、A、B、A、 B、A}  Row {A、B、A、B、A、B、AB}  Row {B、A、B、A、B、A、B、A}  Row {A、B、A、B 、A、B、AB}  Row {B、A、B、A、B、A、B、A}  Row {A、B、A、B、A、B、AB}  end {チェス盤}%}  newenvironment {Chessboard} [1] [] { setkeys {chessB} {#1}% par  medskip  setl ength  parindent {0pt}} { par  medskip}  begin {document}  Conventional  Conventional [side = 10pt、colori = Bittersweet]  begin {Chessboard}  Row {B、A、B、A、A、B }  Row {A、A、B、A、B、B}  Row {B、A、B、A、B、B}  Row {A、A、B、B、A、B}  Row {B 、A、B、A、B、B}  Row {A、A、A、A、B、A}  end {Chessboard}  begin {Chessboard} [side = 0.8em、colori = MidnightBlue、colorii = Dandelion]  Row {A、A、B、B}  Row {A、A、B、B}  Row {B、B、A、A}  Row {B、B、A、A}  end {Chessboard}  begin {Chessboard} [side = 1.2cm、colori = Maroon、colorii = ForestGreen]  Row {A、A、B、B、A}  Row {A、B、B、B、A}  Row {A、B 、B、A、A}  Row {B、B、A、A、B}  Row {B、B、B、A、B}  end {Chessboard}  end {document}

ここに画像の説明を入力してください

この例では、単純なkey = valueメカニズムにより、各正方形の辺と、パターンの生成に使用される2つの色を制御できます。キーはサイド(デフォルト=1.5em)、色(デフォルト=黒!70)、そしてcolorii(デフォルト=白い)。

Conventionalは従来のチェス盤を描きます。オプションの引数を使用すると、この従来のチェス盤にオプションを渡すことができます。

チェス盤環境では、さまざまなパターンを使用できます。この環境内では、各行を指定する Rowコマンド。必須の引数は、その行で使用される色に対応する文字「A」および「B」のコンマ区切りリストです。たとえば、デフォルト設定では、

 begin {Chessboard}  Row {B、A、B、A、A、B}  end {Chessboard}

を生成します

ここに画像の説明を入力してください