Skip to content

pack_array()

Kevin110026 edited this page Mar 7, 2025 · 2 revisions

new pack_array(pos, gap = new pointer(50), rad = new pointer(0))

property - pointer gap 陣列背景框大小

property - pointer rad 陣列旋轉角度(單位:rad)

function - pointer coord(index) 回傳一個refer,為陣列第index格的位置

用法 - myArray[i] = stuff 像傳統陣列使用[]即可,若stuff為動畫物件,物件被固定在陣列的相對應位置上,若否,則生成一個pack_text顯示stuff內容,若該格已經有其他動畫物件存在,則會先嘗試刪除舊物件,再放入新物件

property - boxArray[i] 背景框

範例程式
let a = new pack_array();
a[0] = 0;
a[1] = 11;
a[3] = 33;
a[4] = new pack_circle();

function - release(index) 將綁定在陣列上的物件釋放,也可在替換陣列內容前使用,以避免位置要被取代的舊動畫物件被刪除

範例程式
let a = new pack_array();
a[2] = new pack_circle();
a.release(2);
a[2] = new pack_square();
範例程式(名為"myArray"的array)
let a_s = new pack_square();
a_s.text._val = "myArray";
a_s.fill._val = "transparent"
a_s.stroke._val = "transparent"
let myArray = new pack_array(a_s.pos);
myArray[3] = 3;
更多範例程式(2d array)
let n = 5, m = 3;
let c = new pack_circle();
let a = new pack_array(c.pos, 50, 1.57);
for (let i = 0; i < n; i++) {
    a[i] = new pack_array(a.coord(i));
    a.boxArray[i].hide._val = true;
    for (let j = 0; j < m; j++) {
        a[i][j] = 0;
    }
}

一個可拖拉的二維陣列

Clone this wiki locally