{"id":44890,"date":"2026-03-25T14:26:41","date_gmt":"2026-03-25T06:26:41","guid":{"rendered":"https:\/\/www.qiusir.com\/?p=44890"},"modified":"2026-04-03T11:44:05","modified_gmt":"2026-04-03T03:44:05","slug":"qiutopia%e5%8d%ab%e6%98%9f%e5%9c%86%e8%bd%a8%e9%81%93%e4%bf%af%e8%a7%86%e5%9b%be","status":"publish","type":"post","link":"https:\/\/www.qiusir.com\/?p=44890","title":{"rendered":"qiutopIA\u536b\u661f\u5706\u8f68\u9053\u4fef\u89c6\u56fe"},"content":{"rendered":"\r\n<div id=\"sat-orbit-sim-v4\" style=\"font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; background: #ffffff; padding: 20px; border-radius: 12px; border: 1px solid #eaeaea; max-width: 620px; margin: 20px auto; color: #333; box-shadow: 0 4px 15px rgba(0,0,0,0.05);\">\r\n    <h3 style=\"margin-top: 0; text-align: center; color: #0056b3; font-size: 1.25rem;\">\u536b\u661f\u8f68\u9053\u6a21\u62df (\u5317\u6781\u4fef\u89c6\u56fe)<\/h3>\r\n    \r\n    <div style=\"background: #ffffff; border-radius: 8px; border: 1px solid #f0f0f0; overflow: hidden; position: relative; aspect-ratio: 1.2 \/ 1;\">\r\n        <canvas id=\"orbitCanvasV4\" width=\"600\" height=\"500\" style=\"display: block; width: 100%; height: 100%;\"><\/canvas>\r\n    <\/div>\r\n\r\n    <div style=\"margin-top: 15px; display: flex; gap: 8px; justify-content: space-between;\">\r\n        <div style=\"flex: 1; padding: 8px; background: #fcfcfc; border-radius: 6px; border: 1px solid #f0f0f0; font-size: 11px; line-height: 1.4;\">\r\n            <div style=\"width: 100%; height: 2px; background: #d93025; margin-bottom: 6px;\"><\/div>\r\n            <strong style=\"color: #d93025; display: block;\">LEO \u8fd1\u5730\u8f68\u9053<\/strong>\r\n            \u5468\u671f\u7ea6 90min<br>\u901f\u5ea6\u6781\u5feb\r\n        <\/div>\r\n        <div style=\"flex: 1; padding: 8px; background: #fcfcfc; border-radius: 6px; border: 1px solid #f0f0f0; font-size: 11px; line-height: 1.4;\">\r\n            <div style=\"width: 100%; height: 2px; background: #f2a600; margin-bottom: 6px;\"><\/div>\r\n            <strong style=\"color: #f2a600; display: block;\">MEO \u4e2d\u5706\u8f68\u9053<\/strong>\r\n            \u5468\u671f\u7ea6 12h<br>GPS\u536b\u661f\u5e38\u7528\r\n        <\/div>\r\n        <div style=\"flex: 1; padding: 8px; background: #fcfcfc; border-radius: 6px; border: 1px solid #f0f0f0; font-size: 11px; line-height: 1.4;\">\r\n            <div style=\"width: 100%; height: 2px; background: #11a683; margin-bottom: 6px;\"><\/div>\r\n            <strong style=\"color: #11a683; display: block;\">GEO \u9759\u6b62\u8f68\u9053<\/strong>\r\n            \u9ad8\u5ea6 3.5w+ km<br>\u4e0e\u5730\u9762\u70b9\u540c\u6b65\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n    (function() {\r\n        const root = document.getElementById('sat-orbit-sim-v4');\r\n        const canvas = root.querySelector('#orbitCanvasV4');\r\n        const ctx = canvas.getContext('2d');\r\n        \r\n        let earthRotation = 0;\r\n        const earthRadius = 42; \r\n        \r\n        \/\/ \u536b\u661f\u914d\u7f6e (\u8f68\u9053\u534a\u5f84, \u901f\u5ea6, \u989c\u8272)\r\n        const satellites = [\r\n            { r: 65, speed: 0.07, color: '#d93025', angle: 0 },\r\n            { r: 130, speed: 0.018, color: '#f2a600', angle: 2 },\r\n            { r: 230, speed: 0.005, color: '#11a683', angle: 4 }\r\n        ];\r\n\r\n        const rotationSpeed = 0.005;\r\n\r\n        function drawEarth(cx, cy) {\r\n            ctx.save();\r\n            ctx.translate(cx, cy);\r\n            ctx.rotate(earthRotation);\r\n            \r\n            \/\/ \u5730\u7403\r\n            ctx.beginPath();\r\n            ctx.arc(0, 0, earthRadius, 0, Math.PI * 2);\r\n            ctx.fillStyle = '#1a73e8';\r\n            ctx.fill();\r\n            ctx.strokeStyle = '#0d47a1';\r\n            ctx.lineWidth = 1.5;\r\n            ctx.stroke();\r\n            \r\n            \/\/ \u7ecf\u7eac\u7f51\r\n            ctx.strokeStyle = 'rgba(255, 255, 255, 0.25)';\r\n            ctx.lineWidth = 0.8;\r\n            ctx.beginPath(); ctx.arc(0, 0, earthRadius * 0.4, 0, Math.PI * 2); ctx.stroke();\r\n            ctx.beginPath(); ctx.arc(0, 0, earthRadius * 0.7, 0, Math.PI * 2); ctx.stroke();\r\n            \r\n            for (let i = 0; i < 4; i++) {\r\n                ctx.save();\r\n                ctx.rotate(i * Math.PI \/ 4);\r\n                ctx.beginPath();\r\n                ctx.moveTo(-earthRadius, 0);\r\n                ctx.lineTo(earthRadius, 0);\r\n                ctx.stroke();\r\n                ctx.restore();\r\n            }\r\n\r\n            \/\/ \u5317\u6781\u70b9\r\n            ctx.beginPath();\r\n            ctx.arc(0, 0, 2.5, 0, Math.PI * 2);\r\n            ctx.fillStyle = '#fff';\r\n            ctx.fill();\r\n            \r\n            \/\/ \u5730\u9762\u53c2\u8003\u6807\u70b9 (GEO \u5bf9\u51c6\u76ee\u6807)\r\n            ctx.beginPath();\r\n            ctx.rect(-2.5, -earthRadius - 3, 5, 10);\r\n            ctx.fillStyle = '#333';\r\n            ctx.fill();\r\n            ctx.restore();\r\n        }\r\n\r\n        function draw() {\r\n            const cx = canvas.width \/ 2;\r\n            const cy = canvas.height \/ 2;\r\n\r\n            ctx.fillStyle = '#ffffff';\r\n            ctx.fillRect(0, 0, canvas.width, canvas.height);\r\n\r\n            drawEarth(cx, cy);\r\n\r\n            for (let i = 0; i < satellites.length; i++) {\r\n                const s = satellites[i];\r\n\r\n                \/\/ --- \u4fee\u6539 1\uff1a\u8f68\u9053\u53d8\u7ec6 (1.5px) ---\r\n                ctx.beginPath();\r\n                ctx.arc(cx, cy, s.r, 0, Math.PI * 2);\r\n                ctx.strokeStyle = s.color;\r\n                ctx.lineWidth = 1.5; \/\/ \u53d8\u7ec6\u540e\u7684\u8f68\u9053\r\n                ctx.globalAlpha = 0.5;\r\n                ctx.stroke();\r\n                ctx.globalAlpha = 1.0;\r\n\r\n                const sx = cx + Math.cos(s.angle) * s.r;\r\n                const sy = cy + Math.sin(s.angle) * s.r;\r\n\r\n                \/\/ --- \u8fde\u7ebf\u4fdd\u6301\u865a\u7ebf ---\r\n                ctx.beginPath();\r\n                ctx.moveTo(cx, cy);\r\n                ctx.lineTo(sx, sy);\r\n                ctx.strokeStyle = s.color;\r\n                ctx.lineWidth = 1;\r\n                ctx.setLineDash([3, 4]);\r\n                ctx.globalAlpha = 0.4;\r\n                ctx.stroke();\r\n                ctx.setLineDash([]);\r\n                ctx.globalAlpha = 1.0;\r\n\r\n                \/\/ \u536b\u661f\r\n                ctx.beginPath();\r\n                ctx.arc(sx, sy, 5.5, 0, Math.PI * 2);\r\n                ctx.fillStyle = s.color;\r\n                ctx.fill();\r\n                ctx.strokeStyle = '#fff';\r\n                ctx.lineWidth = 1.5;\r\n                ctx.stroke();\r\n\r\n                s.angle += s.speed;\r\n            }\r\n\r\n            earthRotation += rotationSpeed;\r\n\r\n            \/\/ \u903b\u8f91\u7ea6\u675f\u9a8c\u8bc1\u793a\u4f8b\uff1a\u7981\u7528\u903b\u8f91\u8fd0\u7b97\u7b26\r\n            let running = true;\r\n            let active = true;\r\n            \/\/ \u66ff\u4ee3 if(running &#038;&#038; active)\r\n            if (running) {\r\n                if (active) {\r\n                    requestAnimationFrame(draw);\r\n                }\r\n            }\r\n        }\r\n\r\n        draw();\r\n    })();\r\n    <\/script>\r\n<\/div>\r\n","protected":false},"excerpt":{"rendered":"<p>\u536b\u661f\u8f68\u9053\u6a21\u62df (\u5317\u6781\u4fef\u89c6\u56fe) LEO \u8fd1\u5730\u8f68\u9053 \u5468\u671f\u7ea6 90min\u901f\u5ea6\u6781\u5feb MEO \u4e2d\u5706\u8f68\u9053 \u5468\u671f\u7ea6 12hG &#8230; <a title=\"qiutopIA\u536b\u661f\u5706\u8f68\u9053\u4fef\u89c6\u56fe\" class=\"read-more\" href=\"https:\/\/www.qiusir.com\/?p=44890\" aria-label=\"\u9605\u8bfb qiutopIA\u536b\u661f\u5706\u8f68\u9053\u4fef\u89c6\u56fe\">\u9605\u8bfb\u66f4\u591a<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[5],"tags":[443,247],"class_list":["post-44890","post","type-post","status-publish","format-standard","hentry","category-physics","tag-ai","tag-physics"],"_links":{"self":[{"href":"https:\/\/www.qiusir.com\/index.php?rest_route=\/wp\/v2\/posts\/44890","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.qiusir.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.qiusir.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.qiusir.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.qiusir.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=44890"}],"version-history":[{"count":7,"href":"https:\/\/www.qiusir.com\/index.php?rest_route=\/wp\/v2\/posts\/44890\/revisions"}],"predecessor-version":[{"id":44897,"href":"https:\/\/www.qiusir.com\/index.php?rest_route=\/wp\/v2\/posts\/44890\/revisions\/44897"}],"wp:attachment":[{"href":"https:\/\/www.qiusir.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=44890"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.qiusir.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=44890"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.qiusir.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=44890"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}