소스 검색

remove three element

Falko Schindler 4 년 전
부모
커밋
aaf0b672da
4개의 변경된 파일0개의 추가작업 그리고 92개의 파일을 삭제
  1. 0 3
      custom_test.py
  2. 0 58
      nicegui/elements/three.js
  3. 0 30
      nicegui/elements/three.py
  4. 0 1
      nicegui/ui.py

+ 0 - 3
custom_test.py

@@ -9,6 +9,3 @@ ui.button('Add 100', on_click=lambda: example.add(100))
 label = ui.label()
 
 ui.joystick(on_move=lambda e: print("move", e.data.vector), color='blue', size=50)
-
-three = ui.three(on_click=lambda e: print("click", e.objects))
-ui.slider(min=0, max=10, on_change=lambda e: three.move_camera(e.value))

+ 0 - 58
nicegui/elements/three.js

@@ -1,58 +0,0 @@
-var camera;
-
-Vue.component("three", {
-  template: `<canvas v-bind:id="jp_props.id"></div>`,
-  mounted() {
-    const scene = new THREE.Scene();
-
-    const width = 400;
-    const height = 300;
-
-    camera = new THREE.PerspectiveCamera(75, width / height, 0.1, 1000);
-    camera.position.z = this.$props.jp_props.options.camera_z;
-
-    const renderer = new THREE.WebGLRenderer({
-      antialias: true,
-      canvas: document.getElementById(this.$props.jp_props.id),
-    });
-    renderer.setClearColor("#ddd");
-    renderer.setSize(width, height);
-
-    const geometry = new THREE.BoxGeometry(1, 1, 1);
-    const material = new THREE.MeshBasicMaterial({ color: "#433F81" });
-    const cube = new THREE.Mesh(geometry, material);
-    scene.add(cube);
-
-    new THREE.OrbitControls(camera, renderer.domElement);
-
-    const render = function () {
-      requestAnimationFrame(render);
-      renderer.render(scene, camera);
-    };
-    render();
-
-    const raycaster = new THREE.Raycaster();
-    document.getElementById(this.$props.jp_props.id).onclick = (mouseEvent) => {
-      let x = (mouseEvent.offsetX / renderer.domElement.width) * 2 - 1;
-      let y = -(mouseEvent.offsetY / renderer.domElement.height) * 2 + 1;
-      raycaster.setFromCamera({ x: x, y: y }, camera);
-      const objects = raycaster.intersectObjects(scene.children, true);
-      console.log(objects);
-      const event = {
-        event_type: "onClick",
-        vue_type: this.$props.jp_props.vue_type,
-        id: this.$props.jp_props.id,
-        page_id: page_id,
-        websocket_id: websocket_id,
-        objects: objects,
-      };
-      send_to_server(event, "event");
-    };
-  },
-  updated() {
-    camera.position.z = this.$props.jp_props.options.camera_z;
-  },
-  props: {
-    jp_props: Object,
-  },
-});

+ 0 - 30
nicegui/elements/three.py

@@ -1,30 +0,0 @@
-from .custom_view import CustomView
-from .element import Element
-
-class ThreeView(CustomView):
-
-    def __init__(self, on_click):
-
-        super().__init__('three', __file__, [
-            'https://cdn.jsdelivr.net/npm/three@0.129.0/build/three.min.js',
-            'https://cdn.jsdelivr.net/npm/three@0.129.0/examples/js/controls/OrbitControls.js',
-        ], camera_z=4)
-
-        self.on_click = on_click
-        self.allowed_events = ['onClick']
-        self.initialize(temp=False, onClick=self.handle_click)
-
-    def handle_click(self, msg):
-
-        if self.on_click is not None:
-            self.on_click(msg)
-
-class Three(Element):
-
-    def __init__(self, *, on_click=None):
-
-        super().__init__(ThreeView(on_click))
-
-    def move_camera(self, z):
-
-        self.view.options.camera_z = z

+ 0 - 1
nicegui/ui.py

@@ -15,7 +15,6 @@ class Ui:
     from .elements.select import Select as select
     from .elements.slider import Slider as slider
     from .elements.switch import Switch as switch
-    from .elements.three import Three as three
     from .elements.toggle import Toggle as toggle
 
     from .elements.plot import Plot as plot