iT邦幫忙

2025 iThome 鐵人賽

DAY 15
0

來畫個簡易迷宮吧!產生迷宮的方式有好幾種,通常可以使用 DFS 繪製較為簡易,但是由於 state 的關係我們必須自己模擬遞迴。

在繪製迷宮之前,我們可以簡單介紹一下在 Typst 裡面的偽隨機數產生器 suiji 套件。由於近期他們將底層置換為 wasm, 整體效率有提高~

我們可以使用 #rng = gen-rng-f(seed) 得到一個偽隨機數產生器,並且使用 integers-frandom-f 產生偽隨機數,或是使用 shuffle-f 產生隨機排列。在 Typst 裡面並沒有物件的觀念,所以引入函數以後還是需要把 rng 傳進去。

例如,我們想要產生 10 個 $(0, 1)$ 之間的浮點數,可以使用:

https://ithelp.ithome.com.tw/upload/images/20250829/20112376SSjQ3vUcyk.png

注意到它回傳了兩個東西,一個是修改後的 rng 另一個才是輸出的陣列。


上一篇
Day 14: 八皇后問題
下一篇
Day 16: 繪製簡易迷宮
系列文
Typst 與 CeTZ:對演算法與程式設計超友好的排版製圖工具19
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言