How to use a simple renderer and simple fill symbol to visualize a true vertical polygon in WebScene (4.0beta3)?

2196
3
03-21-2016 05:31 AM
ÁkosHalmai
Occasional Contributor II

Here is my best try. However, the result is always a holow poylgon with black outline.

function (WebScene, SceneView, FeatureLayer, Extent, SpatialReference, SimpleRenderer, SimpleFillSymbol, FillSymbol3DLayer, PolygonSymbol3D) {

                        var clipExtent = new Extent({

                            xmax: 2145350.5831,

                            xmin: 2051889.3218,

                            ymax: 5920453.5331,

                            ymin: 5826963.4038,

                            spatialReference: new SpatialReference({

                                wkid: 3857

                            })

                        });

                        var wellsURL = "http://192.168.0.212:6080/arcgis/rest/services/fgp/FeatureServer/1";

                        var PolygonRenderer = new SimpleRenderer({

                            symbol: new PolygonSymbol3D({

                                symbolLayers: [new FillSymbol3DLayer({ material: { color: "red" } })]

                            })

                        });

                        var layer = new FeatureLayer({

                            url: wellsURL,

                            fullExtent: clipExtent,

                            renderer: PolygonRenderer,

                            returnZ: true,

                            elevationInfo: {

                                mode: "absoluteHeight"

                            }

                        });

                        var scene = new WebScene({

                            basemap: "topo",

                            viewingMode: "local",

                            clippingEnabled: true,

                            clippingArea: clipExtent,

                            layers: [layer]

                        });

                        var view = new SceneView({

                            container: "viewDiv",

                            map: scene,

                            extent: clipExtent,

                            constraints: {

                                collision: {

                                    enabled: false

                                },

                                tilt: {

                                    max: 179.99

                                }

                            },

                            environment: {

                                atmosphere: "none",

                                stars: "none"

                            }

                        });

                    })

Ákos Halmai

0 Kudos
3 Replies
KristianEkenes
Esri Regular Contributor

I'm not able to load the service, but I think I've seen this issue before. You're trying to display a 2D polygon geometry vertically so that it is perpendicular to the ground, but the fill symbol is hollow and shows no fill. Is that correct? Polygons like this are difficult to render because the drawing order of the vertices is hard to determine. If you're able to give them a very slight angle with respect to the ground, then they will render properly. If you must have a true vertical polygon, then it will render improperly. This is something we're aware of and continuing to discuss.

Can you provide the use case for this geometry type? It will be helpful for us in our discussions to know what users are trying to achieve so we can come up with the best possible solution. There may be several alternatives, but if I understand the goal/purpose of the app/features then it will be easier to come up with solutions. Thanks!

ÁkosHalmai
Occasional Contributor II

Dear Kristian,

I’ve got a lot of geologic boreholes and core samples. These boreholes are represented in SDE geodatabase as single-part polylines with Z & M values in the vertices. There are also several tables in the geodatabase used for linear referencing along the boreholes. For example I have a ‘geologic documentation’ table with a route ID and with ‘from’ and ‘to’ measurement values. I also have tectonic documentation, geophysical measurements, soil descriptions etc.

When I tried to visualize these linear referencing tables along the polylines of the boreholes I realized that this line-based visualization technique is barely usable because these readings along the core are interdependent. So I should present them synoptically.

I wrote a small ArcObjects routine to draw a six-sided multipatch tube (like the Buffer 3D geoprocessing tool) around the polyline of the borehole. Each side represent a geologic data or reading along the core. (I can send images or feature classes only privately.)

It works fine in ArcScene but I would like to share all over the company. So I thought the 4.0 beta would be ideal.

First, I converted the multipatches to polygons because no multipatch support in FeatureLayer and … the story is over.

I know, the best workaround is to share a local WebScene from ArcGIS Pro, but our Portal is not working properly. (I have to contact our distributor.)

Faithfully,

Ákos Halmai

0 Kudos
KristianEkenes
Esri Regular Contributor

It looks like you have a pretty complex visualization!

> First, I converted the multipatches to polygons because no multipatch support in FeatureLayer

There is support for multipatches in the API using SceneLayer. Have you looked into publishing a SceneLayer with this data?

The WebScene publishing from ArcGIS Pro is a good solution for what you're trying to accomplish. You can use the Portal API to load the Scene and your custom visualization will come into the app as well.

0 Kudos