p5.js编写一棵递归分形树代码

代码语言:html

所属分类:动画

代码描述:p5.js编写一棵递归分形树代码,树枝角度使用sin(millis())实现动画效果。树技合随着屋级弯银的鱼从棕色。

代码标签: p5 编写 递归 分形 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>动态递归分形树</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.9.0/p5.min.js"></script>
    <link href="https://fonts.googleapis.com/css2?family=Cinzel:wght@700;900&family=Noto+Sans+SC:wght@300;400;600&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css">
    <style>
        :root {
            --bg: #0d1117;
            --fg: #e2e8f0;
            --muted: #7b8a9e;
            --accent: #d4a04a;
            --card: rgba(14, 22, 32, 0.88);
            --border: rgba(255, 255, 255, 0.07);
        }

        * { margin: 0; padding: 0; box-sizing: border-box; }

        body {
            background: var(--bg);
            color: var(--fg);
            font-family: 'Noto Sans SC', sans-serif;
            overflow: hidden;
            height: 100vh;
            width: 100vw;
        }

        #canvas-container {
            position: fixed;
            inset: 0;
            z-index: 1;
        }

        #canvas-container canvas { display: block; }

        /* 左上角标题 */
        .overlay-title {
            position: fixed;
            top: 28px;
            left: 36px;
            z-index: 10;
            pointer-events: none;
        }

        .overlay-title h1 {
            font-family: 'Cinzel', serif;
            font-size: 2.2rem;
            font-weight: 900;
            color: var(--fg);
            letter-spacing: 0.06em;
            text-shadow: 0 2px 30px rgba(0,0,0,0.6);
            opacity: 0.92;
        }

        .overlay-title p {
            font-size: 0.82rem;
            color: var(--muted);
            margin-top: 5px;
            font-weight: 300;
            letter-spacing: 0.04em;
        }

        /* 控制面板 */
        .control-panel {
            position: fixed;
            top: 50%;
            right: 26px;
            transform: translateY(-50%);
            z-index: 10;
            background: var(--card);
            backdrop-filter: blur(24px);
            -webkit-backdrop-filter: blur(24px);
            border: 1px solid var(--border);
            border-radius: 18px;
            padding: 22px 22px 18px;
            width: 256px;
            transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                        padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            box-shadow: 0 8px 40px rgba(0,0,0,0.35);
        }

        .control-panel.collapsed {
            width: 48px;
            padding: 14px;
            border-radius: 14px;
        }

        .control-panel.collapsed .panel-body { display: none; }
        .control-panel.collapsed .panel-header h2 { display: none; }

        .panel-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
        .........完整代码请登录后点击上方下载按钮下载查看

网友评论0