From cb0b36ab3a6c98cad04601af88ce4cffa69f6678 Mon Sep 17 00:00:00 2001 From: Vidar Tonaas Fauske Date: Tue, 19 Mar 2019 17:38:22 +0100 Subject: [PATCH 1/4] Avoid importing twice in autogen --- js/scripts/generate-wrappers.js | 10 ++++++++++ js/scripts/templates/js_wrapper.mustache | 3 +++ js/scripts/templates/py_wrapper.mustache | 2 ++ 3 files changed, 15 insertions(+) diff --git a/js/scripts/generate-wrappers.js b/js/scripts/generate-wrappers.js index 32597278..9d20aa20 100644 --- a/js/scripts/generate-wrappers.js +++ b/js/scripts/generate-wrappers.js @@ -131,6 +131,16 @@ Handlebars.registerHelper('rst', function (data, indent) { return new Handlebars.SafeString(out); }); +Handlebars.registerHelper('notSuper', function (v1, options) { + if (v1 === ( + options.data.root.superClass.modelName || + options.data.root.superClass.className + )) { + return options.inverse(this); + } + return options.fn(this); +}); + // // Helper Functions // diff --git a/js/scripts/templates/js_wrapper.mustache b/js/scripts/templates/js_wrapper.mustache index 040daf4f..07b01412 100644 --- a/js/scripts/templates/js_wrapper.mustache +++ b/js/scripts/templates/js_wrapper.mustache @@ -3,6 +3,7 @@ // var _ = require('underscore'); +var Promise = require('bluebird'); var THREE = require('three'); var widgets = require('@jupyter-widgets/base'); var dataserializers = require('jupyter-dataserializers'); @@ -11,7 +12,9 @@ var serializers = require('{{ relativePathToBase }}/_base/serializers'); var {{ superClass.modelName }} = require('{{ superClass.requirePath }}').{{ superClass.modelName }}; {{#each dependencies as |dep depName|}} +{{#notSuper dep.modelName}} var {{ dep.modelName }} = require('{{ dep.requirePath }}').{{ dep.modelName }}; +{{/notSuper}} {{/each}} var {{ modelName }} = {{ superClass.modelName }}.extend({ diff --git a/js/scripts/templates/py_wrapper.mustache b/js/scripts/templates/py_wrapper.mustache index d30e7618..431bcda9 100644 --- a/js/scripts/templates/py_wrapper.mustache +++ b/js/scripts/templates/py_wrapper.mustache @@ -16,7 +16,9 @@ from {{ py_base_relative_path }}traits import * from {{ superClass.pyRelativePath }} import {{ superClass.className }} {{#each dependencies as |dep depName|}} +{{#notSuper dep.className}} from {{ dep.pyRelativePath }} import {{ dep.className }} +{{/notSuper}} {{/each}} {{#unless hasOverride}} From 8b6c6fb4c7463f46f8135061e68191d159e718d0 Mon Sep 17 00:00:00 2001 From: Vidar Tonaas Fauske Date: Tue, 19 Mar 2019 17:38:54 +0100 Subject: [PATCH 2/4] Add EdgesGeometry definition --- examples/Geometries.ipynb | 609 ++++++++++++++--------------- js/scripts/three-class-config.js | 9 +- js/src/geometries/EdgesGeometry.js | 37 ++ 3 files changed, 338 insertions(+), 317 deletions(-) create mode 100644 js/src/geometries/EdgesGeometry.js diff --git a/examples/Geometries.ipynb b/examples/Geometries.ipynb index a970ba2d..c1b95cb5 100644 --- a/examples/Geometries.ipynb +++ b/examples/Geometries.ipynb @@ -230,17 +230,35 @@ } ], "source": [ - "DodecahedronGeometry(radius=10, detail=0, _flat=True)" + "dodeca_geometry = DodecahedronGeometry(radius=10, detail=0, _flat=True)\n", + "dodeca_geometry" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "pythree_example_model_032", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Preview(child=LineSegments(geometry=EdgesGeometry(geometry=DodecahedronGeometry(radius=10.0)), material=LineBa…" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "# TODO:\n", - "# EdgesGeometry(...)" + "LineSegments(\n", + " EdgesGeometry(dodeca_geometry),\n", + " LineBasicMaterial(parameters=dict(color='ffffff'))\n", + ")" ] }, { @@ -255,13 +273,13 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_030", + "model_id": "pythree_example_model_036", "version_major": 2, "version_minor": 0 }, @@ -279,13 +297,13 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_034", + "model_id": "pythree_example_model_040", "version_major": 2, "version_minor": 0 }, @@ -312,13 +330,13 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_038", + "model_id": "pythree_example_model_044", "version_major": 2, "version_minor": 0 }, @@ -336,13 +354,13 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_042", + "model_id": "pythree_example_model_048", "version_major": 2, "version_minor": 0 }, @@ -367,13 +385,13 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_046", + "model_id": "pythree_example_model_052", "version_major": 2, "version_minor": 0 }, @@ -395,13 +413,13 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_050", + "model_id": "pythree_example_model_056", "version_major": 2, "version_minor": 0 }, @@ -433,13 +451,13 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_054", + "model_id": "pythree_example_model_060", "version_major": 2, "version_minor": 0 }, @@ -464,13 +482,13 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_058", + "model_id": "pythree_example_model_064", "version_major": 2, "version_minor": 0 }, @@ -505,13 +523,13 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_062", + "model_id": "pythree_example_model_068", "version_major": 2, "version_minor": 0 }, @@ -536,13 +554,13 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_066", + "model_id": "pythree_example_model_072", "version_major": 2, "version_minor": 0 }, @@ -567,13 +585,13 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_070", + "model_id": "pythree_example_model_076", "version_major": 2, "version_minor": 0 }, @@ -601,13 +619,13 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_074", + "model_id": "pythree_example_model_080", "version_major": 2, "version_minor": 0 }, @@ -630,13 +648,13 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_078", + "model_id": "pythree_example_model_084", "version_major": 2, "version_minor": 0 }, @@ -654,13 +672,13 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_082", + "model_id": "pythree_example_model_088", "version_major": 2, "version_minor": 0 }, @@ -684,13 +702,13 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_086", + "model_id": "pythree_example_model_092", "version_major": 2, "version_minor": 0 }, @@ -729,13 +747,13 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "pythree_example_model_091", + "model_id": "pythree_example_model_097", "version_major": 2, "version_minor": 0 }, @@ -782,17 +800,16 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.6" + "version": "3.6.4" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "pythree_example_model_001": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "BoxGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "depth": 15, @@ -805,12 +822,10 @@ }, "pythree_example_model_002": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_001", "layout": "IPY_MODEL_pythree_example_model_003", "shadowMap": "IPY_MODEL_pythree_example_model_004" @@ -824,20 +839,18 @@ }, "pythree_example_model_004": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_005": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "BoxBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "depth": 15, @@ -850,12 +863,10 @@ }, "pythree_example_model_006": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_005", "layout": "IPY_MODEL_pythree_example_model_007", "shadowMap": "IPY_MODEL_pythree_example_model_008" @@ -869,20 +880,18 @@ }, "pythree_example_model_008": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_009": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "CircleGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 10, @@ -893,12 +902,10 @@ }, "pythree_example_model_010": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_009", "layout": "IPY_MODEL_pythree_example_model_011", "shadowMap": "IPY_MODEL_pythree_example_model_012" @@ -912,20 +919,18 @@ }, "pythree_example_model_012": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_013": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "CircleBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 10, @@ -936,12 +941,10 @@ }, "pythree_example_model_014": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_013", "layout": "IPY_MODEL_pythree_example_model_015", "shadowMap": "IPY_MODEL_pythree_example_model_016" @@ -955,20 +958,18 @@ }, "pythree_example_model_016": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_017": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "CylinderGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "height": 15, @@ -979,12 +980,10 @@ }, "pythree_example_model_018": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_017", "layout": "IPY_MODEL_pythree_example_model_019", "shadowMap": "IPY_MODEL_pythree_example_model_020" @@ -998,20 +997,18 @@ }, "pythree_example_model_020": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_021": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "CylinderBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "height": 15, @@ -1022,12 +1019,10 @@ }, "pythree_example_model_022": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_021", "layout": "IPY_MODEL_pythree_example_model_023", "shadowMap": "IPY_MODEL_pythree_example_model_024" @@ -1041,20 +1036,18 @@ }, "pythree_example_model_024": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_025": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "DodecahedronGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 10 @@ -1062,12 +1055,10 @@ }, "pythree_example_model_026": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", "child": "IPY_MODEL_pythree_example_model_025", "layout": "IPY_MODEL_pythree_example_model_027", "shadowMap": "IPY_MODEL_pythree_example_model_028" @@ -1081,60 +1072,110 @@ }, "pythree_example_model_028": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, "pythree_example_model_029": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", + "model_name": "EdgesGeometryModel", + "state": { + "_view_module": null, + "_view_module_version": "", + "geometry": "IPY_MODEL_pythree_example_model_025" + } + }, + "pythree_example_model_030": { + "model_module": "jupyter-threejs", + "model_module_version": "^2.0.3", + "model_name": "LineBasicMaterialModel", + "state": { + "_view_module": null, + "_view_module_version": "" + } + }, + "pythree_example_model_031": { + "model_module": "jupyter-threejs", + "model_module_version": "^2.0.3", + "model_name": "LineSegmentsModel", + "state": { + "_view_module": null, + "_view_module_version": "", + "geometry": "IPY_MODEL_pythree_example_model_029", + "material": "IPY_MODEL_pythree_example_model_030" + } + }, + "pythree_example_model_032": { + "model_module": "jupyter-threejs", + "model_module_version": "^2.0.3", + "model_name": "PreviewModel", + "state": { + "_alpha": false, + "child": "IPY_MODEL_pythree_example_model_031", + "layout": "IPY_MODEL_pythree_example_model_033", + "shadowMap": "IPY_MODEL_pythree_example_model_034" + } + }, + "pythree_example_model_033": { + "model_module": "@jupyter-widgets/base", + "model_module_version": "1.1.0", + "model_name": "LayoutModel", + "state": {} + }, + "pythree_example_model_034": { + "model_module": "jupyter-threejs", + "model_module_version": "^2.0.3", + "model_name": "WebGLShadowMapModel", + "state": { + "_view_module": null, + "_view_module_version": "" + } + }, + "pythree_example_model_035": { + "model_module": "jupyter-threejs", + "model_module_version": "^2.0.3", "model_name": "IcosahedronGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 10 } }, - "pythree_example_model_030": { + "pythree_example_model_036": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_029", - "layout": "IPY_MODEL_pythree_example_model_031", - "shadowMap": "IPY_MODEL_pythree_example_model_032" + "child": "IPY_MODEL_pythree_example_model_035", + "layout": "IPY_MODEL_pythree_example_model_037", + "shadowMap": "IPY_MODEL_pythree_example_model_038" } }, - "pythree_example_model_031": { + "pythree_example_model_037": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_032": { + "pythree_example_model_038": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_033": { + "pythree_example_model_039": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "LatheBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "points": [ @@ -1162,81 +1203,73 @@ "segments": 16 } }, - "pythree_example_model_034": { + "pythree_example_model_040": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_033", - "layout": "IPY_MODEL_pythree_example_model_035", - "shadowMap": "IPY_MODEL_pythree_example_model_036" + "child": "IPY_MODEL_pythree_example_model_039", + "layout": "IPY_MODEL_pythree_example_model_041", + "shadowMap": "IPY_MODEL_pythree_example_model_042" } }, - "pythree_example_model_035": { + "pythree_example_model_041": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_036": { + "pythree_example_model_042": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_037": { + "pythree_example_model_043": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "OctahedronGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 10 } }, - "pythree_example_model_038": { + "pythree_example_model_044": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_037", - "layout": "IPY_MODEL_pythree_example_model_039", - "shadowMap": "IPY_MODEL_pythree_example_model_040" + "child": "IPY_MODEL_pythree_example_model_043", + "layout": "IPY_MODEL_pythree_example_model_045", + "shadowMap": "IPY_MODEL_pythree_example_model_046" } }, - "pythree_example_model_039": { + "pythree_example_model_045": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_040": { + "pythree_example_model_046": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_041": { + "pythree_example_model_047": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "ParametricGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "func": "function(u,v,out) { \n var x = 5 * (0.5 - u);\n var y = 5 * (0.5 - v);\n out.set(10 * x, 10 * y, x*x - y*y); \n }", @@ -1244,41 +1277,37 @@ "stacks": 10 } }, - "pythree_example_model_042": { + "pythree_example_model_048": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_041", - "layout": "IPY_MODEL_pythree_example_model_043", - "shadowMap": "IPY_MODEL_pythree_example_model_044" + "child": "IPY_MODEL_pythree_example_model_047", + "layout": "IPY_MODEL_pythree_example_model_049", + "shadowMap": "IPY_MODEL_pythree_example_model_050" } }, - "pythree_example_model_043": { + "pythree_example_model_049": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_044": { + "pythree_example_model_050": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_045": { + "pythree_example_model_051": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PlaneGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "height": 15, @@ -1287,41 +1316,37 @@ "widthSegments": 5 } }, - "pythree_example_model_046": { + "pythree_example_model_052": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_045", - "layout": "IPY_MODEL_pythree_example_model_047", - "shadowMap": "IPY_MODEL_pythree_example_model_048" + "child": "IPY_MODEL_pythree_example_model_051", + "layout": "IPY_MODEL_pythree_example_model_053", + "shadowMap": "IPY_MODEL_pythree_example_model_054" } }, - "pythree_example_model_047": { + "pythree_example_model_053": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_048": { + "pythree_example_model_054": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_049": { + "pythree_example_model_055": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PlaneBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "height": 15, @@ -1330,41 +1355,37 @@ "widthSegments": 5 } }, - "pythree_example_model_050": { + "pythree_example_model_056": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_049", - "layout": "IPY_MODEL_pythree_example_model_051", - "shadowMap": "IPY_MODEL_pythree_example_model_052" + "child": "IPY_MODEL_pythree_example_model_055", + "layout": "IPY_MODEL_pythree_example_model_057", + "shadowMap": "IPY_MODEL_pythree_example_model_058" } }, - "pythree_example_model_051": { + "pythree_example_model_057": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_052": { + "pythree_example_model_058": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_053": { + "pythree_example_model_059": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "RingGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "innerRadius": 10, @@ -1372,41 +1393,37 @@ "phiSegments": 12 } }, - "pythree_example_model_054": { + "pythree_example_model_060": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_053", - "layout": "IPY_MODEL_pythree_example_model_055", - "shadowMap": "IPY_MODEL_pythree_example_model_056" + "child": "IPY_MODEL_pythree_example_model_059", + "layout": "IPY_MODEL_pythree_example_model_061", + "shadowMap": "IPY_MODEL_pythree_example_model_062" } }, - "pythree_example_model_055": { + "pythree_example_model_061": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_056": { + "pythree_example_model_062": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_057": { + "pythree_example_model_063": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "RingBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "innerRadius": 10, @@ -1414,41 +1431,37 @@ "phiSegments": 12 } }, - "pythree_example_model_058": { + "pythree_example_model_064": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_057", - "layout": "IPY_MODEL_pythree_example_model_059", - "shadowMap": "IPY_MODEL_pythree_example_model_060" + "child": "IPY_MODEL_pythree_example_model_063", + "layout": "IPY_MODEL_pythree_example_model_065", + "shadowMap": "IPY_MODEL_pythree_example_model_066" } }, - "pythree_example_model_059": { + "pythree_example_model_065": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_060": { + "pythree_example_model_066": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_061": { + "pythree_example_model_067": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "SphereGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "phiLength": 4.71238898038469, @@ -1456,41 +1469,37 @@ "thetaLength": 2.0943951023931953 } }, - "pythree_example_model_062": { + "pythree_example_model_068": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_061", - "layout": "IPY_MODEL_pythree_example_model_063", - "shadowMap": "IPY_MODEL_pythree_example_model_064" + "child": "IPY_MODEL_pythree_example_model_067", + "layout": "IPY_MODEL_pythree_example_model_069", + "shadowMap": "IPY_MODEL_pythree_example_model_070" } }, - "pythree_example_model_063": { + "pythree_example_model_069": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_064": { + "pythree_example_model_070": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_065": { + "pythree_example_model_071": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "SphereBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "phiLength": 4.71238898038469, @@ -1498,82 +1507,74 @@ "thetaLength": 2.0943951023931953 } }, - "pythree_example_model_066": { + "pythree_example_model_072": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_065", - "layout": "IPY_MODEL_pythree_example_model_067", - "shadowMap": "IPY_MODEL_pythree_example_model_068" + "child": "IPY_MODEL_pythree_example_model_071", + "layout": "IPY_MODEL_pythree_example_model_073", + "shadowMap": "IPY_MODEL_pythree_example_model_074" } }, - "pythree_example_model_067": { + "pythree_example_model_073": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_068": { + "pythree_example_model_074": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_069": { + "pythree_example_model_075": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "TetrahedronGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "detail": 1, "radius": 10 } }, - "pythree_example_model_070": { + "pythree_example_model_076": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_069", - "layout": "IPY_MODEL_pythree_example_model_071", - "shadowMap": "IPY_MODEL_pythree_example_model_072" + "child": "IPY_MODEL_pythree_example_model_075", + "layout": "IPY_MODEL_pythree_example_model_077", + "shadowMap": "IPY_MODEL_pythree_example_model_078" } }, - "pythree_example_model_071": { + "pythree_example_model_077": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_072": { + "pythree_example_model_078": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_073": { + "pythree_example_model_079": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "TorusGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "arc": 4.71238898038469, @@ -1582,163 +1583,147 @@ "tube": 5 } }, - "pythree_example_model_074": { + "pythree_example_model_080": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_073", - "layout": "IPY_MODEL_pythree_example_model_075", - "shadowMap": "IPY_MODEL_pythree_example_model_076" + "child": "IPY_MODEL_pythree_example_model_079", + "layout": "IPY_MODEL_pythree_example_model_081", + "shadowMap": "IPY_MODEL_pythree_example_model_082" } }, - "pythree_example_model_075": { + "pythree_example_model_081": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_076": { + "pythree_example_model_082": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_077": { + "pythree_example_model_083": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "TorusBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 100 } }, - "pythree_example_model_078": { + "pythree_example_model_084": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_077", - "layout": "IPY_MODEL_pythree_example_model_079", - "shadowMap": "IPY_MODEL_pythree_example_model_080" + "child": "IPY_MODEL_pythree_example_model_083", + "layout": "IPY_MODEL_pythree_example_model_085", + "shadowMap": "IPY_MODEL_pythree_example_model_086" } }, - "pythree_example_model_079": { + "pythree_example_model_085": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_080": { + "pythree_example_model_086": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_081": { + "pythree_example_model_087": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "TorusKnotGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 20, "tube": 5 } }, - "pythree_example_model_082": { + "pythree_example_model_088": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_081", - "layout": "IPY_MODEL_pythree_example_model_083", - "shadowMap": "IPY_MODEL_pythree_example_model_084" + "child": "IPY_MODEL_pythree_example_model_087", + "layout": "IPY_MODEL_pythree_example_model_089", + "shadowMap": "IPY_MODEL_pythree_example_model_090" } }, - "pythree_example_model_083": { + "pythree_example_model_089": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_084": { + "pythree_example_model_090": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_085": { + "pythree_example_model_091": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "TorusKnotBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radius": 20, "tube": 5 } }, - "pythree_example_model_086": { + "pythree_example_model_092": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_085", - "layout": "IPY_MODEL_pythree_example_model_087", - "shadowMap": "IPY_MODEL_pythree_example_model_088" + "child": "IPY_MODEL_pythree_example_model_091", + "layout": "IPY_MODEL_pythree_example_model_093", + "shadowMap": "IPY_MODEL_pythree_example_model_094" } }, - "pythree_example_model_087": { + "pythree_example_model_093": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_088": { + "pythree_example_model_094": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } }, - "pythree_example_model_089": { + "pythree_example_model_095": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "TorusBufferGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", "radialSegments": 6, @@ -1747,42 +1732,38 @@ "tubularSegments": 20 } }, - "pythree_example_model_090": { + "pythree_example_model_096": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WireframeGeometryModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "", - "geometry": "IPY_MODEL_pythree_example_model_089" + "geometry": "IPY_MODEL_pythree_example_model_095" } }, - "pythree_example_model_091": { + "pythree_example_model_097": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "PreviewModel", "state": { "_alpha": false, - "_model_module_version": "^2.0.0", - "_view_module_version": "^2.0.0", - "child": "IPY_MODEL_pythree_example_model_090", - "layout": "IPY_MODEL_pythree_example_model_092", - "shadowMap": "IPY_MODEL_pythree_example_model_093" + "child": "IPY_MODEL_pythree_example_model_096", + "layout": "IPY_MODEL_pythree_example_model_098", + "shadowMap": "IPY_MODEL_pythree_example_model_099" } }, - "pythree_example_model_092": { + "pythree_example_model_098": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.1.0", "model_name": "LayoutModel", "state": {} }, - "pythree_example_model_093": { + "pythree_example_model_099": { "model_module": "jupyter-threejs", - "model_module_version": "^2.0.0", + "model_module_version": "^2.0.3", "model_name": "WebGLShadowMapModel", "state": { - "_model_module_version": "^2.0.0", "_view_module": null, "_view_module_version": "" } diff --git a/js/scripts/three-class-config.js b/js/scripts/three-class-config.js index bdb11382..4c869b58 100644 --- a/js/scripts/three-class-config.js +++ b/js/scripts/three-class-config.js @@ -1547,11 +1547,14 @@ module.exports = { detail: new Types.Int(0.0), }, }, - // TODO: EdgesGeometry: { - todo: true, relativePath: './geometries/EdgesGeometry', - superClass: 'BaseGeometry', + superClass: 'BaseBufferGeometry', + constructorArgs: [ 'geometry', 'thresholdAngle' ], + properties: { + geometry: new Types.ThreeType(['BaseGeometry', 'BaseBufferGeometry']), + thresholdAngle: new Types.Float(1), + } }, // TODO: ExtrudeGeometry: { diff --git a/js/src/geometries/EdgesGeometry.js b/js/src/geometries/EdgesGeometry.js new file mode 100644 index 00000000..6552befc --- /dev/null +++ b/js/src/geometries/EdgesGeometry.js @@ -0,0 +1,37 @@ +var EdgesGeometryAutogen = require('./EdgesGeometry.autogen').EdgesGeometryModel; + +var EdgesGeometryModel = EdgesGeometryAutogen.extend({ + + createPropertiesArrays: function() { + EdgesGeometryAutogen.prototype.createPropertiesArrays.call(this); + + // three.js DataTexture stores the data, width, and height props together in a dict called 'image' + this.property_mappers['EdgesGeometryProps'] = 'mapEdgesGeometryProps'; + delete this.property_converters['geometry']; + delete this.property_converters['thresholdAngle']; + }, + + mapEdgesGeometryPropsModelToThree: function() { + var params = this.obj.parameters; + params['geometry'] = this.convertThreeTypeModelToThree(this.get('geometry')); + params['thresholdAngle'] = this.convertFloatModelToThree(this.get('thresholdAngle')); + }, + + mapEdgesGeometryPropsThreeToModel: function() { + var params = this.obj.parameters; + var toSet = { + thresholdAngle: this.convertFloatThreeToModel(params.thresholdAngle), + }; + if (params.geometry) { + toSet.geometry = this.convertThreeTypeThreeToModel(params.geometry); + } else { + toSet.geometry = this.get('geometry'); + } + this.set(toSet, 'pushFromThree'); + }, + +}); + +module.exports = { + EdgesGeometryModel: EdgesGeometryModel, +}; From 53cc7337e68f705d0c953baa033dab68fb2bab3e Mon Sep 17 00:00:00 2001 From: Vidar Tonaas Fauske Date: Tue, 19 Mar 2019 17:38:59 +0100 Subject: [PATCH 3/4] Update package-lock.json --- js/package-lock.json | 80 ++++++++++++++++++++++++++------------------ 1 file changed, 47 insertions(+), 33 deletions(-) diff --git a/js/package-lock.json b/js/package-lock.json index 856e6da8..beecea57 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -452,7 +452,7 @@ }, "ansi-escapes": { "version": "3.1.0", - "resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", "dev": true }, @@ -749,7 +749,7 @@ }, "browserify-aes": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { @@ -786,7 +786,7 @@ }, "browserify-rsa": { "version": "4.0.1", - "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "dev": true, "requires": { @@ -820,7 +820,7 @@ }, "buffer": { "version": "4.9.1", - "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { @@ -849,7 +849,7 @@ }, "cacache": { "version": "10.0.4", - "resolved": "http://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "dev": true, "requires": { @@ -1158,7 +1158,7 @@ }, "create-hash": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { @@ -1171,7 +1171,7 @@ }, "create-hmac": { "version": "1.1.7", - "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { @@ -1325,7 +1325,7 @@ }, "diffie-hellman": { "version": "5.0.3", - "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, "requires": { @@ -1553,7 +1553,7 @@ }, "events": { "version": "1.1.1", - "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", "dev": true }, @@ -1926,12 +1926,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -1946,17 +1948,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -2073,7 +2078,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -2085,6 +2091,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -2099,6 +2106,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -2106,12 +2114,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -2130,6 +2140,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -2210,7 +2221,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -2222,6 +2234,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -2343,6 +2356,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -2428,7 +2442,7 @@ }, "get-stream": { "version": "3.0.0", - "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", "dev": true }, @@ -3008,7 +3022,7 @@ }, "json5": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", "dev": true }, @@ -3242,7 +3256,7 @@ }, "minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, "mississippi": { @@ -3286,7 +3300,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -3295,7 +3309,7 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true } @@ -3303,7 +3317,7 @@ }, "moment": { "version": "2.21.0", - "resolved": "http://registry.npmjs.org/moment/-/moment-2.21.0.tgz", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.21.0.tgz", "integrity": "sha512-TCZ36BjURTeFTM/CwRcViQlfkMvL1/vFISuNLO5GkcVm1+QHfbSiNqZuWeMFjj1/3+uAjXswgRk30j1kkLYJBQ==" }, "move-concurrently": { @@ -3533,7 +3547,7 @@ "dependencies": { "minimist": { "version": "0.0.10", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", "dev": true }, @@ -3596,7 +3610,7 @@ }, "p-is-promise": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", "dev": true }, @@ -3642,7 +3656,7 @@ }, "parse-asn1": { "version": "5.1.1", - "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", "dev": true, "requires": { @@ -3715,7 +3729,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -3876,7 +3890,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, "requires": { @@ -4060,7 +4074,7 @@ }, "safe-regex": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { @@ -4152,7 +4166,7 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { @@ -4463,7 +4477,7 @@ }, "strip-eof": { "version": "1.0.0", - "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, @@ -4533,7 +4547,7 @@ }, "through": { "version": "2.3.8", - "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, @@ -5002,7 +5016,7 @@ }, "wrap-ansi": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "dev": true, "requires": { @@ -5038,7 +5052,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { From 62fddb0a0e4194b952746a8349ca8fffee4d0e72 Mon Sep 17 00:00:00 2001 From: Vidar Tonaas Fauske Date: Tue, 19 Mar 2019 18:12:11 +0100 Subject: [PATCH 4/4] radiusSegments -> radialSegments --- examples/Animation.ipynb | 2 +- examples/Geometries.ipynb | 8 +++++--- js/package-lock.json | 28 +++++++--------------------- js/scripts/three-class-config.js | 12 ++++++------ pythreejs/sage.py | 4 ++-- 5 files changed, 21 insertions(+), 33 deletions(-) diff --git a/examples/Animation.ipynb b/examples/Animation.ipynb index b6a53667..af7ac049 100644 --- a/examples/Animation.ipynb +++ b/examples/Animation.ipynb @@ -2225,7 +2225,7 @@ "heightSegments": 15, "openEnded": true, "radiusBottom": 5, - "radiusSegments": 5, + "radialSegments": 5, "radiusTop": 5 } }, diff --git a/examples/Geometries.ipynb b/examples/Geometries.ipynb index c1b95cb5..1c4af0c2 100644 --- a/examples/Geometries.ipynb +++ b/examples/Geometries.ipynb @@ -158,7 +158,7 @@ "version_minor": 0 }, "text/plain": [ - "Preview(child=CylinderGeometry(height=15.0, heightSegments=10, radiusBottom=10.0, radiusTop=5.0), shadowMap=We…" + "Preview(child=CylinderGeometry(height=15.0, heightSegments=10, radialSegments=6, radiusBottom=10.0, radiusTop=…" ] }, "metadata": {}, @@ -190,7 +190,7 @@ "version_minor": 0 }, "text/plain": [ - "Preview(child=CylinderBufferGeometry(height=15.0, heightSegments=10, radiusBottom=10.0, radiusTop=5.0), shadow…" + "Preview(child=CylinderBufferGeometry(height=15.0, heightSegments=10, radialSegments=6, radiusBottom=10.0, radi…" ] }, "metadata": {}, @@ -741,7 +741,7 @@ " path=None,\n", " segments=64,\n", " radius=1,\n", - " radiusSegments=8,\n", + " radialSegments=8,\n", " close=False)" ] }, @@ -974,6 +974,7 @@ "_view_module_version": "", "height": 15, "heightSegments": 10, + "radialSegments": 6, "radiusBottom": 10, "radiusTop": 5 } @@ -1013,6 +1014,7 @@ "_view_module_version": "", "height": 15, "heightSegments": 10, + "radialSegments": 6, "radiusBottom": 10, "radiusTop": 5 } diff --git a/js/package-lock.json b/js/package-lock.json index beecea57..7c3e66cb 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -1926,14 +1926,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -1948,20 +1946,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -2078,8 +2073,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -2091,7 +2085,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -2106,7 +2099,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -2114,14 +2106,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -2140,7 +2130,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -2221,8 +2210,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -2234,7 +2222,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -2356,7 +2343,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", diff --git a/js/scripts/three-class-config.js b/js/scripts/three-class-config.js index 4c869b58..832c822b 100644 --- a/js/scripts/three-class-config.js +++ b/js/scripts/three-class-config.js @@ -1511,12 +1511,12 @@ module.exports = { CylinderBufferGeometry: { relativePath: './geometries/CylinderGeometry', superClass: 'BaseBufferGeometry', - constructorArgs: [ 'radiusTop', 'radiusBottom', 'height', 'radiusSegments', 'heightSegments', 'openEnded', 'thetaStart', 'thetaLength' ], + constructorArgs: [ 'radiusTop', 'radiusBottom', 'height', 'radialSegments', 'heightSegments', 'openEnded', 'thetaStart', 'thetaLength' ], properties: { radiusTop: new Types.Float(1.0), radiusBottom: new Types.Float(1.0), height: new Types.Float(1.0), - radiusSegments: new Types.Int(8), + radialSegments: new Types.Int(8), heightSegments: new Types.Int(1), openEnded: new Types.Bool(false), thetaStart: new Types.Float(0.0), @@ -1526,12 +1526,12 @@ module.exports = { CylinderGeometry: { relativePath: './geometries/CylinderGeometry', superClass: 'BaseGeometry', - constructorArgs: [ 'radiusTop', 'radiusBottom', 'height', 'radiusSegments', 'heightSegments', 'openEnded', 'thetaStart', 'thetaLength' ], + constructorArgs: [ 'radiusTop', 'radiusBottom', 'height', 'radialSegments', 'heightSegments', 'openEnded', 'thetaStart', 'thetaLength' ], properties: { radiusTop: new Types.Float(1.0), radiusBottom: new Types.Float(1.0), height: new Types.Float(1.0), - radiusSegments: new Types.Int(8), + radialSegments: new Types.Int(8), heightSegments: new Types.Int(1), openEnded: new Types.Bool(false), thetaStart: new Types.Float(0.0), @@ -1798,12 +1798,12 @@ module.exports = { TubeGeometry: { relativePath: './geometries/TubeGeometry', superClass: 'BaseGeometry', - constructorArgs: [ 'path', 'segments', 'radius', 'radiusSegments', 'close' ], + constructorArgs: [ 'path', 'segments', 'radius', 'radialSegments', 'close' ], properties: { path: new Types.ThreeType('Curve'), segments: new Types.Int(64), radius: new Types.Float(1.0), - radiusSegments: new Types.Int(8), + radialSegments: new Types.Int(8), close: new Types.Bool(false), }, }, diff --git a/pythreejs/sage.py b/pythreejs/sage.py index fff2f8ca..0067d527 100644 --- a/pythreejs/sage.py +++ b/pythreejs/sage.py @@ -72,7 +72,7 @@ def json_cone(t): return CylinderGeometry(radiusTop=0, radiusBottom=t['bottomradius'], height=t['height'], - radiusSegments=50) + radialSegments=50) def json_cylinder(t): return CylinderGeometry(radiusTop=t['radius'], @@ -99,7 +99,7 @@ def json_line(t): radiusBottom=.02*tree_geometry['thickness'], height=height, up=[1,0,0], - radiusSegments=50)) + radialSegments=50)) c.look_at(path[-1], path[-2]) q1 = c.quaternion q2 = [0.7071067811865475, 0.0, 0.0, 0.7071067811865476]