🌸 「なでしこ」
>
🍯 「貯蔵庫」
plugin_weykturtle3d(動作確認用)
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
plugin_weykturtle3d(動作確認用) 📖
plugin_weykturtle3dの貯蔵庫での動作確認用
プログラム:
(→大)
"use strict";(()=>{var y=class t{static isDisporsal(e){return"dispose"in e&&typeof e.dispose=="function"}static isMesh(e){return"isMesh"in e&&e.isMesh===!0}static disposeChildObject(e){for(;e.children.length>0;)this.disposeChildObject(e.children[0]),e.remove(e.children[0]);if(t.isMesh(e)&&(e.geometry&&e.geometry.dispose(),e.material)){for(let r of Object.keys(e.material)){let n=e.material[r];t.isDisporsal(n)&&n.dispose()}e.material.dispose()}}};var H=class{constructor(e,r,n,s){this.v1=e,this.v2=r,this.width=n,this.color=s}},h=class{},b=class{constructor(e,r,n){this.command=e,this.resolve=r,this.reject=n}},v=class extends h{constructor(r){super();this.cmd="home";this.mode=r}},S=class extends h{constructor(r){super();this.cmd="jump";this.v=r}},w=class extends h{constructor(r){super();this.cmd="move";this.v=r}},N=class extends h{constructor(r){super();this.cmd="angle";this.angle=r}},d=class extends h{constructor(r,n){super();this.cmd="slide";this.direction=r,this.length=n}},E=class extends h{constructor(r,n){super();this.cmd="rotate";this.direction=r,this.angle=n}},T=class extends h{constructor(r,n){super();this.cmd="roll";this.direction=r,this.angle=n}},D=class extends h{constructor(r){super();this.cmd="pen";this.subcmd="enable";this.enable=r}},R=class extends h{constructor(r){super();this.cmd="pen";this.subcmd="color";this.color=r}},j=class extends h{constructor(r){super();this.cmd="pen";this.subcmd="width";this.width=r}},_=class extends h{constructor(r){super();this.cmd="attr";this.subcmd="visible";this.visible=r}},k=class extends h{constructor(r){super();this.cmd="attr";this.subcmd="model";this.model=r}},L=EventTarget,C=class extends L{constructor(e,r){super(),this.three=e,this.id=r;let n=new e.Group;this.obj=n,this.home={position:new e.Vector3(0,0,0),quaternion:new e.Quaternion},this.color=new e.Color(16777215),this.disposal=!1,this.lineWidth=4,this.flagDown=!0,this.flagLoaded=!1,this.f_visible=!0,this.macros=[],this.home.position.copy(n.position),this.home.quaternion.copy(n.quaternion)}clear(){for(let e of this.macros)e.resolve(0);this.macros=[],this.discardModel(),this.f_visible=!0,this.obj.visible=!0}discardModel(){this.disposal?(y.disposeChildObject(this.obj),this.disposal=!1):this.obj.remove(this.obj.children[0]),this.flagLoaded=!1}loadTurtle(e){if(this.isObject3D(e)){this.discardModel(),this.obj.add(e),this.disposal=!1,this.flagLoaded=!0,this.raiseModelChanged();return}let r=e;if(r.length===0){this.discardModel(),this.obj.add(this.createDefaultTurtle()),this.disposal=!0,this.flagLoaded=!0,this.raiseModelChanged();return}new this.three.ObjectLoader().load(r,s=>{this.discardModel(),this.obj.add(s),this.disposal=!0,this.flagLoaded=!0,this.raiseModelChanged()},s=>{},s=>{this.discardModel(),this.f_visible=!1,this.obj.visible=!1,this.raiseModelChanged()})}doMacro(e){if(!this.flagLoaded&&!e)return!0;let r=this.macros.shift();if(typeof r>"u")return!1;let n=r instanceof b?r.command:r;if(n instanceof S)this.obj.position.copy(n.v);else if(n instanceof w){let s=this.obj.position.clone(),i=n.v;this.line(s,i),this.obj.lookAt(i);let u=new this.three.Quaternion,l=new this.three.Vector3(1,0,0);u.setFromAxisAngle(l,Math.PI/2),this.obj.quaternion.multiply(u),this.obj.position.copy(i)}else if(n instanceof d){let s=n.direction,i=n.length*(s==="b"?-1:1),u=this.obj.position.clone(),l=new this.three.Vector3(0,i,0);if(s==="f"||s==="b")l.applyQuaternion(this.obj.quaternion);else{let a=new this.three.Quaternion,f=this.obj.quaternion.clone();if(s==="u"||s==="d"){let c=new this.three.Vector3(1,0,0);s==="u"?a.setFromAxisAngle(c,-90*Math.PI/180):a.setFromAxisAngle(c,90*Math.PI/180)}else{let c=new this.three.Vector3(0,0,1);s==="l"?a.setFromAxisAngle(c,90*Math.PI/180):a.setFromAxisAngle(c,-90*Math.PI/180)}f.multiply(a),l.applyQuaternion(f)}l.add(u),this.line(u,l),this.obj.position.copy(l)}else if(n instanceof v)switch(n.mode){case"set":this.home.position.copy(this.obj.position),this.home.quaternion.copy(this.obj.quaternion);break;case"jump":this.obj.position.copy(this.home.position),this.obj.quaternion.copy(this.home.quaternion);break}else if(n instanceof E){let s=n.direction,i=n.angle*(s==="l"||s==="d"?1:-1),u=new this.three.Quaternion,l;s==="l"||s==="r"?l=new this.three.Vector3(0,0,1):l=new this.three.Vector3(1,0,0),u.setFromAxisAngle(l,i%360*Math.PI/180),this.obj.quaternion.multiply(u)}else if(n instanceof T){let s=n.direction,i=n.angle*(s==="r"?1:-1),u=new this.three.Vector3(0,1,0),l=new this.three.Quaternion;l.setFromAxisAngle(u,i%360*Math.PI/180),this.obj.quaternion.multiply(l)}else if(n instanceof R)this.color=n.color;else if(n instanceof j)this.lineWidth=n.width;else if(n instanceof D)this.flagDown=n.enable;else if(n instanceof _)this.f_visible=n.visible,this.f_visible?this.obj.visible=!0:this.obj.visible=!1;else if(n instanceof k)this.flagLoaded=!1,this.loadTurtle(n.model);else if(n instanceof N){let s=new this.three.Euler;s.fromArray(n.angle);let i=new this.three.Quaternion;this.obj.quaternion.setFromEuler(s)}return r instanceof b&&r.resolve(0),this.macros.length>0}createDefaultTurtle(){let e=new Float32Array([0,1,0,-.6,-1,0,0,-.5,0,.6,-1,0,0,0,.5,0,1,0,-.6,-1,0,0,-.5,0,.6,-1,0,0,0,-.5,0,1,0,-.6,-1,0,0,-.5,0,.6,-1,0]),r=new Float32Array([0,1,0,0,1,0,0,1,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1]),n=[0,1,1,2,2,3,3,0,4,5,4,6,4,7,4,8,9,10,9,11,9,12,9,13],s=new this.three.Group,i=new this.three.LineBasicMaterial({vertexColors:!0}),u=new this.three.BufferGeometry;u.setIndex(n),u.setAttribute("position",new this.three.BufferAttribute(e,3)),u.setAttribute("color",new this.three.BufferAttribute(r,3)),u.computeBoundingSphere();let l=new this.three.LineSegments(u,i);return l.scale.set(30,30,30),s.add(l),s}raiseModelChanged(){let e=new CustomEvent("modelChanged");this.dispatchEvent(e)}raiseDrawLine(e,r,n,s){let i=new H(e,r,n,s),u=new CustomEvent("drawLine",{detail:i});this.dispatchEvent(u)}line(e,r){this.flagDown&&this.raiseDrawLine(e,r,this.lineWidth,this.color)}isObject3D(e){return e instanceof this.three.Object3D}},o=class t{static getInstance(e){t.instance===void 0?t.instance=new t(e):t.instance.sys!==e&&(console.log("T3D: difference sys instance"),t.instance.sys=e);let r=t.instance;return r.instanceCount+=1,t.instance}constructor(e){this.instanceCount=0,this.three=null,this.sys=e,this.containerid="",this.camera=-1,this.target=-1,this._renderer=null,this._scene=null,this._lines=null,this._camera=null,this._controls=null,this._camerahelper=null,this._axishelper=null,this.turtles=[],this.flagSetTimer=!1,this._prevUpdatedTime=0}clearAll(){this.disposeAllTurtle(),this.disposeAllLine();let e=this._scene;e&&this._lines&&(e.remove(this._lines),e.add(this._lines),this._camerahelper!==null&&(this._camerahelper.visible=!1,e.remove(this._camerahelper),e.add(this._camerahelper)),this._axishelper!==null&&(this._axishelper.visible=!1,e.remove(this._axishelper),e.add(this._axishelper)))}disposeAllTurtle(){for(let e of this.turtles)e.clear();this.turtles=[],this.target=-1,this.camera=-1,this.flagSetTimer=!1}disposeAllLine(){this._lines!==null&&y.disposeChildObject(this._lines)}getThree(){if(!this.three)throw new Error("ThreeJS\u306E\u6E96\u5099\u3055\u308C\u308B\u524D\u306B\u4F7F\u7528\u3057\u3088\u3046\u3068\u3057\u307E\u3057\u305F");return this.three}createTurtle(e){let r=this.getThree(),n=this.turtles.length,s=new C(r,n);return s.addEventListener("modelChanged",u=>{!!this.sys.__getSysVar("T3D\u81EA\u52D5\u63CF\u753B")&&this.doDraw(!0)}),s.addEventListener("drawLine",u=>{this.drawLine(u.detail.v1,u.detail.v2,u.detail.width,u.detail.color)}),this.turtles.push(s),this.target=n,s.loadTurtle(e),this.getScene().add(s.obj),n}initTurtle(){if(this.turtles.length===0){this._renderer===null&&this.initRenderer();let e=this.getThree(),r=this.createTurtle(""),n=this.turtles[r];n.obj.position.set(0,0,1e3);let s=new e.Vector3(0,0,-1).normalize();n.obj.quaternion.setFromAxisAngle(s,0),n.home.position.copy(n.obj.position),n.home.quaternion.copy(n.obj.quaternion),n.f_visible=!1,n.obj.visible=!1,this.camera=r,this.target=-1}}getCur(){if(this.turtles.length===0)throw Error("\u6700\u521D\u306B\u300ET3D\u30AB\u30E1\u4F5C\u6210\u300F\u547D\u4EE4\u3092\u547C\u3073\u51FA\u3057\u3066\u304F\u3060\u3055\u3044\u3002");if(this.target<0||this.target>=this.turtles.length)throw Error("\u6307\u5B9A\u3055\u308C\u305F\u756A\u53F7\u306E\u30AB\u30E1\u306F\u3044\u307E\u305B\u3093\u3002");return this.turtles[this.target]}queCurrentTurtle(e){let r=this.getCur();return new Promise((s,i)=>{let u=new b(e,s,i);r.macros.push(u),this.animationStart()})}doDraw(e){if(this.camera===-1||!this._scene||(this.getRenderer(),!this._renderer)||(this.getCamera(),!this._camera))return;let r=this.turtles[this.camera];this._controls===null&&(this._camera.position.copy(r.obj.position),this._camera.quaternion.copy(r.obj.quaternion)),this._camerahelper!==null&&this._camerahelper.update(),this._controls!==null&&(this._controls.update(),r.obj.position.copy(this._camera.position),r.obj.quaternion.copy(this._camera.quaternion)),e&&this._renderer.clear(),this._renderer.render(this._scene,this._camera)}setCameraHelper(e){let r=this.getThree();if(e){if(this._camerahelper===null&&this._scene&&this._camera){if(typeof r.CameraHelper>"u")throw Error("\u30AB\u30E1\u30E9\u30D8\u30EB\u30D1\u306E\u6A5F\u80FD\u304C\u898B\u5F53\u305F\u308A\u307E\u305B\u3093\u3002");let n=new r.CameraHelper(this._camera);this._camerahelper=n,this._scene.add(n)}this._camerahelper.visible=!0}else this._camerahelper!==null&&(this._camerahelper.visible=!1)}setAxisHelper(e){let r=this.getThree();if(e){if(this._axishelper===null&&this._scene){if(typeof r.AxisHelper>"u")throw Error("AXIS\u30D8\u30EB\u30D1\u306E\u6A5F\u80FD\u304C\u898B\u5F53\u305F\u308A\u307E\u305B\u3093\u3002");let n=new r.AxisHelper(1e3);this._axishelper=n,this._scene.add(n)}this._axishelper.visible=!0}else this._axishelper!==null&&(this._axishelper.visible=!1)}getScene(){let e=this.getThree();return this._scene===null&&(this._scene=new e.Scene),this._scene}getCamera(){let e=this.getThree();if(this._camera===null){let r=new e.PerspectiveCamera(60,1,1,65e3);this.resetCamera(r),this._camera=r}return this._camera}resetCamera(e){let r=this.getThree();if(e.position.set(0,0,1e3),this._renderer!==null){let n=new r.Vector2;this._renderer.getSize(n),"aspect"in e&&(e.aspect=n.width/n.height)}e.up=new r.Vector3(0,1,0),e.lookAt(new r.Vector3(0,0,0))}initTrutle3dEnv(e){e.setClearColor(0,1),e.autoClear=!1;let r=this.getScene(),n=this.getCamera();r&&this._lines&&(r.add(this._lines),this.turtles.length===0&&this.initTurtle())}initRenderer(){let e=this.sys.__getSysVar("T3D\u30AB\u30E1\u63CF\u753B\u5148");if(typeof e=="string"&&(e=document.querySelector(e)||document.getElementById(e)),!e)throw new Error("[ERROR] T3D\u30AB\u30E1\u63CF\u753B\u5148\u304C\u898B\u5F53\u305F\u308A\u307E\u305B\u3093\u3002");let r=this.setRenderer(e);return this.setupRenderer(),r}setRenderer(e){let r=this.getThree(),n=null;if(e instanceof r.WebGLRenderer)n=e;else if(e instanceof HTMLCanvasElement){if(n=new r.WebGLRenderer({antialias:!1,alpha:!0,canvas:e}),n===null)throw new Error("\u30EC\u30F3\u30C0\u30E9\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3002\u6307\u5B9A\u3057\u305FCanvas\u8981\u7D20\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093");n.setSize(e.width,e.height)}else if(e instanceof Element){if(n=new r.WebGLRenderer({antialias:!1,alpha:!0}),n===null)throw new Error("\u30EC\u30F3\u30C0\u30E9\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3002\u6307\u5B9A\u3057\u305FDOM\u8981\u7D20\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093");n.setSize(e.clientWidth,e.clientHeight),e.appendChild(n.domElement)}else throw new Error("\u30EC\u30F3\u30C0\u30E9\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3002\u305D\u308C\u306F\u4F5C\u6210\u5148\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093");return n.setPixelRatio(window.devicePixelRatio),this._renderer=n,this._renderer}clearRenderer(){this._renderer=null,this._controls&&(this._controls.enabled=!1,this._controls=null)}setupRenderer(){this._renderer&&this.initTrutle3dEnv(this._renderer)}getRenderer(){return this._renderer===null&&this.initRenderer(),this._renderer}setupControl(e){if(typeof e>"u")throw new Error("\u6307\u5B9A\u3055\u308C\u305F\u30B3\u30F3\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u304C\u898B\u5F53\u305F\u308A\u307E\u305B\u3093\u3002");if(this._controls!==null){if(this._controls instanceof e)return this._controls;throw new Error("\u65E2\u306B\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u3092\u9069\u7528\u3057\u3066\u3044\u307E\u3059\u3002\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u306E\u5909\u66F4\u306F\u3067\u304D\u307E\u305B\u3093\u3002")}let r=this.getRenderer(),n=this.getCamera(),s=new e(n,r.domElement);return s.enabled=!0,this._controls=s,this._controls}drawLine(e,r,n,s){let i=this.getThree(),u=new i.BufferGeometry,l=new i.Float32BufferAttribute(6,3);l.copyArray([e.x,e.y,e.z,r.x,r.y,r.z]);let a=new i.LineBasicMaterial({color:s,linewidth:n});u.setAttribute("position",l);let f=new i.Line(u,a);this._lines&&this._lines.add(f)}doMacroAllTurtles(){let e=!1;for(let r of this.turtles)r.doMacro(this.isNoWait())&&(e=!0);return e}animationStart(){let e=this.getWait();if(this.sys.__getSysVar("T3D\u81EA\u52D5\u5B9F\u884C")){if(this.isNoWait()){this.animation();return}this.flagSetTimer||(this.flagSetTimer=!0,this.animationFrame(()=>this.animation()))}}getWait(){return this.sys.__getSysVar("T3D\u30AB\u30E1\u901F\u5EA6")}isNoWait(){return this.sys.__getSysVar("T3D\u30AB\u30E1\u901F\u5EA6")===0}animation(){let e=!!this.sys.__getSysVar("T3D\u81EA\u52D5\u63CF\u753B"),r=!!this.sys.__getSysVar("T3D\u81EA\u52D5\u5B9F\u884C"),n=this.animationTick();e&&this.doDraw(!0),(n||this._controls!==null)&&r?this.animationFrame(()=>this.animation()):this.flagSetTimer=!1}animationTick(){let e=Date.now(),r=this.isNoWait();if(!r){let s=e-this._prevUpdatedTime,i=this.getWait();if(i>0&&s<i)return!0}this._prevUpdatedTime=e;let n;if(r){for(;this.doMacroAllTurtles(););n=!1}else n=this.doMacroAllTurtles();return n}animationFrame(e,r){window.setTimeout(e,1e3/60)}ck(){if(this.three===null&&(this.sys.__getSysVar("THREE")!==null?this.three=this.sys.__getSysVar("THREE"):typeof window.THREE<"u"&&(this.three=window.THREE)),this.three===null)throw new Error("three.module.js\u304C\u8AAD\u307F\u8FBC\u307E\u308C\u3066\u3044\u307E\u305B\u3093");return this.sys.__getSysVar("THREE")===null&&this.sys.__setSysVar("THREE",this.three),this._lines===null&&(this._lines=new this.three.Group),this.three}static getTurtle3D(e){if(!e.tags.weykturtle3d)throw new Error("\u30D7\u30E9\u30B0\u30A4\u30F3\u306E\u521D\u671F\u5316\u304C\u884C\u308F\u308C\u3066\u3044\u307E\u305B\u3093");return e.tags.weykturtle3d}static getEnv(e){let r=t.getTurtle3D(e),n=r.ck();return[r,n]}},x={meta:{type:"const",value:{pluginName:"plugin_weykturtle3d",description:"3D\u3067\u30BF\u30FC\u30C8\u30EB\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30B9\u63CF\u753B\u30D7\u30E9\u30B0\u30A4\u30F3",pluginVersion:"3.6.0",nakoRuntime:["wnako"],nakoVersion:"3.6.0"}},\u521D\u671F\u5316:{type:"func",josi:[],pure:!0,fn:function(t){if(t.tags.weykturtle3d)return;let e=o.getInstance(t);t.tags.weykturtle3d=e,t.__setSysVar("THREE",null)}},"!\u30AF\u30EA\u30A2":{type:"func",josi:[],pure:!0,fn:function(t){t.tags.weykturtle3d&&(t.tags.weykturtle3d.clearAll(),t.tags.weykturtle3d.clearRenderer())}},THREE:{type:"const",value:""},T3D\u30D9\u30FC\u30B9URL:{type:"var",value:"https://cdn.jsdelivr.net/npm/three@0.127.0"},T3D\u30E9\u30A4\u30D6\u30E9\u30EA\u8AAD\u8FBC:{type:"func",josi:[],asyncFn:!0,pure:!0,fn:async function(t){let e=o.getTurtle3D(t);if(e.three===null&&t.__getSysVar("THREE")===null){let r=t.__getSysVar("T3D\u30D9\u30FC\u30B9URL"),s=import(r===""?"three":r+"/build/three.module.js");return s.then(i=>(e.three=Object.assign({},i),e.ck(),!0)),s.catch(i=>(console.error("T3D:ThreeJS\u306E\u30E9\u30A4\u30D6\u30E9\u30EA\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F"),console.error(i),!1)),await s}else return e.ck(),!0},return_none:!1},T3D\u30E9\u30A4\u30D6\u30E9\u30EA\u8AAD\u8FBC\u5F8C:{type:"func",josi:[["\u306B"]],pure:!0,fn:function(t,e){let r=o.getTurtle3D(e);if(r.three===null&&e.__getSysVar("THREE")===null){let n=e.__getSysVar("T3D\u30D9\u30FC\u30B9URL"),i=import(n===""?"three":n+"/build/three.module.js");i.then(u=>{r.three=Object.assign({},u),r.ck(),t(r.three!==null)}),i.catch(u=>{console.error("T3D:ThreeJS\u306E\u30E9\u30A4\u30D6\u30E9\u30EA\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F"),console.error(u),t(r.three!==null)})}else r.ck(),t(r.three!==null)},return_none:!0},T3D\u30D7\u30E9\u30B0\u30A4\u30F3\u8AAD\u8FBC:{type:"func",josi:[["\u3092"]],asyncFn:!0,pure:!0,fn:async function(t,e){let[r,n]=o.getEnv(e),s=t.length;if(s===0)return;let i=e.__getSysVar("T3D\u30D9\u30FC\u30B9URL");return new Promise((l,a)=>{let f=function(c){let p=0,m=0;return function(g){p+=1,g&&(m+=1),p===c&&(p===m?l():a(new Error("\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u305F\u30D7\u30E9\u30B0\u30A4\u30F3\u304C\u3042\u308A\u307E\u3059")))}}(s);for(let c of t){let m=import(i===""?c:i+"/examples/jsm/"+c);m.then(g=>{Object.assign(n,g),f(!0)}),m.catch(g=>{console.error("T3D:ThreeJS\u306E\u30D7\u30E9\u30B0\u30A4\u30F3\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F"),console.error(g),f(!1)})}})},return_none:!0},T3D\u30D7\u30E9\u30B0\u30A4\u30F3\u8AAD\u8FBC\u5F8C:{type:"func",josi:[["\u306B"],["\u3092"]],pure:!0,fn:function(t,e,r){let[n,s]=o.getEnv(r),i=e.length;if(i===0){t();return}let u=r.__getSysVar("T3D\u30D9\u30FC\u30B9URL"),l=function(a,f){let c=0;return function(p){c+=1,c===f&&a()}}(t,i);for(let a=0;a<i;a++){let f=e[a],p=import(u===""?f:u+"/examples/jsm/"+f);p.then(m=>{Object.assign(s,m),l(!0)}),p.catch(m=>{console.error("T3D:ThreeJS\u306E\u30D7\u30E9\u30B0\u30A4\u30F3\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F"),console.error(m),l(!1)})}},return_none:!0},T3D\u30AB\u30E1\u4F5C\u6210:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.initTurtle();let n=t.__getSysVar("T3D\u30AB\u30E1\u30E2\u30C7\u30EBURL");return e.createTurtle(n)},return_none:!1},T3D\u30AB\u30E1\u64CD\u4F5C\u5BFE\u8C61\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078","\u306E"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);r.target=t},return_none:!0},T3D\u30AB\u30E1\u63CF\u753B\u5148:{type:"var",value:"turtle3d_div"},T3D\u30AB\u30E1\u30E2\u30C7\u30EBURL:{type:"var",value:""},T3D\u30AB\u30E1\u30E2\u30C7\u30EB\u5909\u66F4:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new k(t))},return_none:!1},T3D\u30AB\u30E1\u901F\u5EA6:{type:"const",value:100},T3D\u30AB\u30E1\u901F\u5EA6\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){e.__setSysVar("T3D\u30AB\u30E1\u901F\u5EA6",t)},return_none:!0},T3D\u30AB\u30E1\u79FB\u52D5:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new w(new n.Vector3(t[0],t[1],t[2])))},return_none:!1},T3D\u30AB\u30E1\u539F\u70B9\u8A2D\u5B9A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.queCurrentTurtle(new v("set"))},return_none:!1},T3D\u30AB\u30E1\u539F\u70B9\u79FB\u52D5:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.queCurrentTurtle(new v("jump"))},return_none:!1},T3D\u30AB\u30E1\u8D77\u70B9\u79FB\u52D5:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new S(new n.Vector3(t[0],t[1],t[2])))},return_none:!1},T3D\u30AB\u30E1\u9032:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new d("f",t))},return_none:!1},T3D\u30AB\u30E1\u623B:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new d("b",t))},return_none:!1},T3D\u30AB\u30E1\u4E0A\u5E73\u884C\u79FB\u52D5:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new d("u",t))},return_none:!1},T3D\u30AB\u30E1\u4E0B\u5E73\u884C\u79FB\u52D5:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new d("d",t))},return_none:!1},T3D\u30AB\u30E1\u5DE6\u5E73\u884C\u79FB\u52D5:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new d("l",t))},return_none:!1},T3D\u30AB\u30E1\u53F3\u5E73\u884C\u79FB\u52D5:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new d("r",t))},return_none:!1},T3D\u30AB\u30E1\u52D5:{type:"func",josi:[["\u3078","\u306B"],["\u3060\u3051"]],pure:!0,fn:function(t,e,r){let[n,s]=o.getEnv(r),i;if(t==="\u524D"||t==="FORWARD"||t==="\u307E\u3048")i="f";else if(t==="\u5F8C"||t==="BACK"||t==="\u3046\u3057\u308D"||t==="BACKWARD"||t==="\u3042\u3068")i="b";else if(t==="\u4E0A"||t==="UP"||t==="\u3046\u3048")i="u";else if(t==="\u4E0B"||t==="DOWN"||t==="\u3057\u305F")i="d";else if(t==="\u53F3"||t==="RIGHT"||t==="\u307F\u304E")i="r";else if(t==="\u5DE6"||t==="LEFT"||t==="\u3072\u3060\u308A")i="l";else throw Error("\u65B9\u5411\u306E\u6307\u5B9A\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002\u524D\u5F8C\u4E0A\u4E0B\u5DE6\u53F3\u306E\u3044\u305A\u308C\u304B\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return n.queCurrentTurtle(new d(i,e))},return_none:!1},T3D\u30AB\u30E1\u89D2\u5EA6\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078","\u306E"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new N(t))},return_none:!1},T3D\u30AB\u30E1\u53F3\u56DE\u8EE2:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new E("r",t))},return_none:!1},T3D\u30AB\u30E1\u5DE6\u56DE\u8EE2:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new E("l",t))},return_none:!1},T3D\u30AB\u30E1\u4E0A\u56DE\u8EE2:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new E("u",t))},return_none:!1},T3D\u30AB\u30E1\u4E0B\u56DE\u8EE2:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new E("d",t))},return_none:!1},T3D\u30AB\u30E1\u56DE\u8EE2:{type:"func",josi:[["\u3078","\u306B"],["\u3060\u3051"]],pure:!0,fn:function(t,e,r){let[n,s]=o.getEnv(r),i;if(t==="\u4E0A"||t==="UP"||t==="\u3046\u3048")i="u";else if(t==="\u4E0B"||t==="DOWN"||t==="\u3057\u305F")i="d";else if(t==="\u53F3"||t==="RIGHT"||t==="\u307F\u304E")i="r";else if(t==="\u5DE6"||t==="LEFT"||t==="\u3072\u3060\u308A")i="l";else throw Error("\u65B9\u5411\u306E\u6307\u5B9A\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002\u4E0A\u4E0B\u5DE6\u53F3\u306E\u3044\u305A\u308C\u304B\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return n.queCurrentTurtle(new E(i,e))},return_none:!1},T3D\u30AB\u30E1\u53F3\u30ED\u30FC\u30EB:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new T("r",t))},return_none:!1},T3D\u30AB\u30E1\u5DE6\u30ED\u30FC\u30EB:{type:"func",josi:[["\u3060\u3051"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new T("l",t))},return_none:!1},T3D\u30AB\u30E1\u50BE:{type:"func",josi:[["\u306B","\u3078"],["\u3060\u3051"]],pure:!0,fn:function(t,e,r){let[n,s]=o.getEnv(r),i;if(t==="\u53F3"||t==="RIGHT"||t==="\u307F\u304E")i="r";else if(t==="\u5DE6"||t==="LEFT"||t==="\u3072\u3060\u308A")i="l";else throw Error("\u5411\u304D\u306E\u6307\u5B9A\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002\u5DE6\u53F3\u306E\u3069\u3061\u3089\u304B\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return n.queCurrentTurtle(new T(i,e))},return_none:!1},T3D\u30AB\u30E1\u30DA\u30F3\u8272\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return typeof t=="number"&&(t=new n.Color(t)),r.queCurrentTurtle(new R(t))},return_none:!1},T3D\u30AB\u30E1\u30DA\u30F3\u30B5\u30A4\u30BA\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new j(t))},return_none:!1},T3D\u30AB\u30E1\u30DA\u30F3\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);return r.queCurrentTurtle(new D(!!t))},return_none:!1},T3D\u30AB\u30E1\u5168\u6D88\u53BB:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.clearAll()},return_none:!0},T3D\u30AB\u30E1\u975E\u8868\u793A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.queCurrentTurtle(new _(!1))},return_none:!1},T3D\u30AB\u30E1\u8868\u793A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.queCurrentTurtle(new _(!0))},return_none:!1},T3D\u8996\u70B9\u30AB\u30E1\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);if(t<0||t>=r.turtles.length)throw Error("\u6307\u5B9A\u3055\u308C\u305F\u756A\u53F7\u306E\u30AB\u30E1\u306F\u3044\u307E\u305B\u3093\u3002");r.camera=t,r.animationStart()},return_none:!0},T3D\u81EA\u52D5\u63CF\u753B:{type:"var",value:!0},T3D\u81EA\u52D5\u5B9F\u884C:{type:"var",value:!0},T3D\u63CF\u753B\u6E96\u5099:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);if(typeof t=="string"&&(t=document.querySelector(t)||document.getElementById(t)),!t)throw new Error("T3D\u63CF\u753B\u6E96\u5099\u306B\u6307\u5B9A\u3057\u305F\u63CF\u753B\u5148\u306B\u8AA4\u308A\u304C\u3042\u308A\u307E\u3059");let s=r.setRenderer(t);return r.setupRenderer(),s},return_none:!1},T3D\u63CF\u753B:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.doDraw(!0)},return_none:!0},T3D\u4E0A\u66F8\u63CF\u753B:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.doDraw(!1)},return_none:!0},T3D\u5B9F\u884C:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.animationTick()},return_none:!0},T3D\u80CC\u666F\u8272\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);r.getRenderer().setClearColor(t),r.animationStart()},return_none:!0},T3D\u80CC\u666F\u900F\u904E\u8A2D\u5B9A:{type:"func",josi:[["\u306B","\u3078"]],pure:!0,fn:function(t,e){let[r,n]=o.getEnv(e);r.getRenderer().setClearAlpha(t),r.animationStart()},return_none:!0},T3DJSON\u53D6\u5F97:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e._lines?JSON.stringify(e._lines.toJSON()):null},return_none:!1},T3D\u30EC\u30F3\u30C0\u30E9\u7834\u68C4:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.clearRenderer()},return_none:!0},T3D\u5185\u90E8\u30EC\u30F3\u30C0\u30E9\u53D6\u5F97:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.getRenderer()},return_none:!1},T3D\u5185\u90E8\u30B7\u30FC\u30F3\u53D6\u5F97:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.getScene()},return_none:!1},T3D\u5185\u90E8\u30AB\u30E1\u30E9\u53D6\u5F97:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e.getCamera()},return_none:!1},T3D\u5185\u90E8\u7DDA\u63CF\u753B\u53C2\u7167\u53D6\u5F97:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return e._lines},return_none:!1},T3D\u5185\u90E8\u7DDA\u63CF\u753B\u53D6\u51FA:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t),n=e._lines;return e._lines=new r.Group,e.animationStart(),n},return_none:!1},T3D\u5F85:{type:"func",josi:[["\u3092"]],asyncFn:!0,pure:!0,fn:function(t,e){return t},return_none:!1},T3D\u30AA\u30FC\u30D3\u30C3\u30C8\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u8A2D\u5B9A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);return typeof r.OrbitControls<"u"?e.setupControl(r.OrbitControls):null},return_none:!1},T3D\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u6709\u52B9:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e._controls&&(e._controls.enabled=!0)},return_none:!0},T3D\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u7121\u52B9:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e._controls&&(e._controls.enabled=!1)},return_none:!0},T3D\u30AB\u30E1\u30E9\u30D8\u30EB\u30D1\u8868\u793A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.setCameraHelper(!0)},return_none:!0},T3D\u30AB\u30E1\u30E9\u30D8\u30EB\u30D1\u975E\u8868\u793A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.setCameraHelper(!1)},return_none:!0},T3D\u8EF8\u7DDA\u30D8\u30EB\u30D1\u8868\u793A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.setAxisHelper(!0)},return_none:!0},T3D\u8EF8\u7DDA\u30D8\u30EB\u30D1\u975E\u8868\u793A:{type:"func",josi:[],pure:!0,fn:function(t){let[e,r]=o.getEnv(t);e.setAxisHelper(!1)},return_none:!0}},q=x;typeof navigator=="object"&&navigator.nako3.addPluginObject("PluginWeykTurtle3D",x);})();
⭐ てぃふと@うぇいく 作
タイトル:
plugin_weykturtle3d(動作確認用)
ライセンス:
未指定 (未指定/貯蔵庫のみ)
タイプ:
js
タグ:
-
利用バージョン:
3.7.3
作成日時:
2025/05/11 02:59 (編集: 2025/05/11 03:59)
公開の投稿
ログイン
して★を付けよう!
Twitterへ投稿
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
通報数:
0
通報って何?