Commit 27755921 authored by iSergio's avatar iSergio
Browse files

Extend functional. Fix example.

parent b3825ec8
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -396,6 +396,12 @@ public class Cesium3DTilesetOptions {
     */
    @JsProperty
    public boolean debugColorizeTiles;
    /**
     * For debugging only. This must be true for debugWireframe to work in WebGL1. This cannot be set after the
     * tileset has loaded.
     */
    @JsProperty
    public boolean enableDebugWireframe;
    /**
     * For debugging only. When true, render's each tile's content as a wireframe.
     * Defaule: false;
+12 −10
Original line number Diff line number Diff line
@@ -19,15 +19,18 @@ package org.cleanlogic.cesiumjs4gwt.showcase.examples;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.HTML;
import org.cesiumjs.cs.core.BoundingSphere;
import org.cesiumjs.cs.core.IonResource;
import org.cesiumjs.cs.core.Matrix4;
import org.cesiumjs.cs.promise.Fulfill;
import org.cesiumjs.cs.scene.Cesium3DTileset;
import org.cesiumjs.cs.scene.options.Cesium3DTilesetOptions;
import org.cesiumjs.cs.widgets.ViewerPanel;
import org.cesiumjs.cs.widgets.viewerCesium3DTilesInspectorMixin;
import org.cleanlogic.cesiumjs4gwt.showcase.basic.AbstractExample;
import org.cleanlogic.cesiumjs4gwt.showcase.components.store.ShowcaseExampleStore;

import javax.inject.Inject;
import javax.swing.plaf.IconUIResource;

/**
 * @author Serge Silaev aka iSergio
@@ -46,18 +49,17 @@ public class Tiles3DInspector extends AbstractExample {

        csVPanel.getViewer().extend(viewerCesium3DTilesInspectorMixin.instance());

        Cesium3DTileset tileset = (Cesium3DTileset) csVPanel.getViewer().scene().primitives().add(Cesium3DTileset.create(
                "https://beta.cesium.com/api/assets/1461?access_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJkYWJmM2MzNS02OWM5LTQ3OWItYjEyYS0xZmNlODM5ZDNkMTYiLCJpZCI6NDQsImFzc2V0cyI6WzE0NjFdLCJpYXQiOjE0OTkyNjQ3NDN9.vuR75SqPDKcggvUrG_vpx0Av02jdiAxnnB1fNf-9f7s"));
        Cesium3DTilesetOptions tilesetOptions = Cesium3DTilesetOptions.create(IonResource.fromAssetId(75343));
        tilesetOptions.enableDebugWireframe = true;
        Cesium3DTileset tileset = new Cesium3DTileset(tilesetOptions);
        csVPanel.getViewer().scene().primitives().add(tileset);
        csVPanel.getViewer().cesium3DTilesInspector.viewModel.tileset = tileset;

        tileset.readyPromise().then(new Fulfill<Cesium3DTileset>() {
            @Override
            public void onFulfilled(Cesium3DTileset value) {
        tileset.readyPromise().then(value -> {
            BoundingSphere boundingSphere = value.boundingSphere();
            csVPanel.getViewer().camera.viewBoundingSphere(boundingSphere,
                    new org.cesiumjs.cs.core.HeadingPitchRange(0.0, -0.5, boundingSphere.radius / 4.0));
            csVPanel.getViewer().camera.lookAtTransform(Matrix4.IDENTITY());
            }
        });

        contentPanel.add(new HTML("<p>Use the 3D Tiles inspector as a debugging tool for different tilesets.</p>"));
+31 −10
Original line number Diff line number Diff line
/*
 * Copyright 2017 iserge.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.cleanlogic.cesiumjs4gwt.showcase.examples;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.HTML;
import org.cesiumjs.cs.core.BoundingSphere;
import org.cesiumjs.cs.core.IonResource;
import org.cesiumjs.cs.core.Matrix4;
import org.cesiumjs.cs.promise.Fulfill;
import org.cesiumjs.cs.scene.Cesium3DTileset;
import org.cesiumjs.cs.scene.options.Cesium3DTilesetOptions;
import org.cesiumjs.cs.widgets.ViewerPanel;
import org.cesiumjs.cs.widgets.viewerCesium3DTilesInspectorMixin;
import org.cleanlogic.cesiumjs4gwt.showcase.basic.AbstractExample;
import org.cleanlogic.cesiumjs4gwt.showcase.components.store.ShowcaseExampleStore;

import javax.inject.Inject;
import javax.swing.plaf.IconUIResource;

/**
 * @author Serge Silaev aka iSergio <s.serge.b@gmail.com>
 * @author Serge Silaev aka iSergio
 */
public class Tiles3DInspector extends AbstractExample {

    @Inject
    public Tiles3DInspector(ShowcaseExampleStore store) {
        super("3D Tiles Inspector", "Use the 3D Tiles inspector as a debugging tool for different tilesets.", new String[]{"Showcase", "Cesium", "3D Tiles"}, store);
        super("3D Tiles Inspector", "Use the 3D Tiles inspector as a debugging tool for different tilesets.",
                new String[]{"Showcase", "Cesium", "3D Tiles"}, store);
    }

    @Override
@@ -29,16 +49,17 @@ public class Tiles3DInspector extends AbstractExample {

        csVPanel.getViewer().extend(viewerCesium3DTilesInspectorMixin.instance());

        Cesium3DTileset tileset = csVPanel.getViewer().scene().primitives().add(Cesium3DTileset.create("https://beta.cesium.com/api/assets/1461?access_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJkYWJmM2MzNS02OWM5LTQ3OWItYjEyYS0xZmNlODM5ZDNkMTYiLCJpZCI6NDQsImFzc2V0cyI6WzE0NjFdLCJpYXQiOjE0OTkyNjQ3NDN9.vuR75SqPDKcggvUrG_vpx0Av02jdiAxnnB1fNf-9f7s"));
        Cesium3DTilesetOptions tilesetOptions = Cesium3DTilesetOptions.create(IonResource.fromAssetId(75343));
        tilesetOptions.enableDebugWireframe = true;
        Cesium3DTileset tileset = new Cesium3DTileset(tilesetOptions);
        csVPanel.getViewer().scene().primitives().add(tileset);
        csVPanel.getViewer().cesium3DTilesInspector.viewModel.tileset = tileset;

        tileset.readyPromise().then(new Fulfill<Cesium3DTileset>() {
            @Override
            public void onFulfilled(Cesium3DTileset value) {
        tileset.readyPromise().then(value -> {
            BoundingSphere boundingSphere = value.boundingSphere();
                csVPanel.getViewer().camera.viewBoundingSphere(boundingSphere, new org.cesiumjs.cs.core.HeadingPitchRange(0.0, -0.5, boundingSphere.radius / 4.0));
            csVPanel.getViewer().camera.viewBoundingSphere(boundingSphere,
                    new org.cesiumjs.cs.core.HeadingPitchRange(0.0, -0.5, boundingSphere.radius / 4.0));
            csVPanel.getViewer().camera.lookAtTransform(Matrix4.IDENTITY());
            }
        });

        contentPanel.add(new HTML("<p>Use the 3D Tiles inspector as a debugging tool for different tilesets.</p>"));