第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何閱讀 Javascript 游戲的關卡計劃?

如何閱讀 Javascript 游戲的關卡計劃?

暮色呼如 2023-02-24 16:00:01
我知道有辦法做到這一點,我只是不記得如何。我查看了所有舊的 javascript 項目,但在任何地方都找不到。這是我需要的:我有一個變量(如下所示),我希望能夠讓畫布將其解釋為圖像。let simpleLevelPlan = `........................##################....#................#....#...###....###...#....#...###....###...#....#................#....#................#....###################........................`;基本上,我希望將其解釋為每個標簽符號 (#) 是一個黑色方塊,句點 (.) 是一個白色方塊,從而形成一個圖像。我已經(jīng)嘗試了很多東西,但我遇到的問題是我無法將其拆分成將由循環(huán)讀取的片段。提前致謝!
查看完整描述

1 回答

?
藍山帝景

TA貢獻1843條經(jīng)驗 獲得超7個贊

這是一種基本(簡單)的方法,可以按照您想要的方向?qū)崿F(xiàn)某些目標。


const asciiArt = `

......................

..##################..

..#................#..

..#...###....###...#..

..#...###....###...#..

..#................#..

..#................#..

..###################.

......................`.split("\n");


const colorMap = {

  "." : "black",

  "#" : "white"

}


const canvas = document.getElementById("canvas");

const ctx = canvas.getContext("2d");

canvas.width = canvas.height = 300;


for (let y=0; y<asciiArt.length; y++) {

  for (let x=0; x<asciiArt[y].length; x++) {

    let sizeX = canvas.width / asciiArt[y].length,

        sizeY = canvas.height / asciiArt.length;

    let pixelX = sizeX * x,

        pixelY = sizeY * y;

    ctx.fillStyle = colorMap[asciiArt[y][x]] || "white";

    ctx.fillRect(pixelX, pixelY, 30, 30);  

  }

}

<canvas id="canvas"></canvas>


一些解釋:


我們在新行字符處拆分 asciiArt 使用.split("\n")

const asciiArt = `

......................

..##################..

..#................#..

..#...###....###...#..

..#...###....###...#..

..#................#..

..#................#..

..###################.

......................`.split("\n");

現(xiàn)在我們遍歷矩陣的y和x方向

for (let y=0; y<asciiArt.length; y++) {

  for (let x=0; x<asciiArt[y].length; x++) {

     // ...

  }

}

在內(nèi)部 for 循環(huán)中,我們在正確的位置用正確的顏色繪制矩形

colorMap[asciiArt[y][x]] 

// This is the desired color ('.' --> "black", '#' --> "white")


查看完整回答
反對 回復 2023-02-24
  • 1 回答
  • 0 關注
  • 113 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號