首页 > 解决方案 > 如何运行方法的多个实例

问题描述

使用 p5js,我正在画布上创建一棵树的图像。

我有一个名为 tree 的类,其中有一个创建树的方法。这个想法是,对于每个实例,x 坐标都是不同的,以便创建一个“森林”

tree = {
    pos_x :800,
    pos_y :410,
    tree_scale:random(40,60),
    tree_scale_2:random(20,40),
    tree_scale_3:random(20,50),
    color:random(150,180),
    color_2:random(120,150),
    color_3:random(150,175),
    trunk_color:random(20,84),
    new_tree:function(p){
        for(var i = 0; i < trees_x.length; i++){
            //Trunk
            fill(107, tree.trunk_color, 7);
            rect(p,tree.pos_y,15,25);
            //Leaves
            fill(0,tree.color,0);
            ellipse(p +35,tree.pos_y -25,tree.tree_scale_2);
            
            fill(0,tree.color_2,0);
            ellipse(p +39,tree.pos_y -75,tree.tree_scale_2);
            fill(0,tree.color,0);
            ellipse(p -25,tree.pos_y -72,tree.tree_scale_3);
            fill(0,tree.color_3,0);
            ellipse(p +5,tree.pos_y -90,tree.tree_scale);
            ellipse(p -27,tree.pos_y -52,tree.tree_scale_3);
            ellipse(p +37,tree.pos_y -55,50);
            ellipse(p +7,tree.pos_y -15,50);
            ellipse(p -27,tree.pos_y -25,40);
            ellipse(p +7,tree.pos_y -55,60);
        }
    }

我用它来为树分配一个随机的 x 坐标

loc = 1500;
    p = random(loc);

目前我正在创建 2 棵树,但它们是“相同”的树。我正在寻找的是每次返回具有不同 x 坐标的不同树的方法。

tree.new_tree(p);
tree.new_tree(p);

标签: javascriptmethods

解决方案


推荐阅读