M.App Enterprise Discussions

Discuss topics with other M.App Enterprise Product pioneers and experts to get the most out of it.
Showing results for 
Search instead for 
Do you mean 
Reply
Occasional Contributor
Posts: 16
Registered: ‎11-20-2015

Clusters not displaying , again..

Hi all,

after upgrading to M.App Enterprise 2019 Update 3 (16.6.287.3) , when I switch to advanced mode and then I change type from 2D primary to cluster, in the tab Additional Features, no clusters are displayed.

 

I read https://community.hexagongeospatial.com/t5/M-App-Enterprise-Discussions/Clusters-not-displaying/m-p/... 

but I do not have Lat/Long fields for  geometry x/y in Feature Configuration. I have GEOMETRY field  from Oracle spatial table.

 

In previous releases these fields were not mandatory and the cluster representation was fine.

 

I also tried setting 'GEOMETRY' (or 'geometry' , by the way what is the difference? )  in Lat/Long fields .

 

Cattura.PNG

cluster.PNG

 

what is going wrong ? 

Thanks

 

Frequent Contributor
Posts: 115
Registered: ‎01-20-2016

Re: Clusters not displaying , again..

Occasional Contributor
Posts: 16
Registered: ‎11-20-2015

Re: Clusters not displaying , again..

Thanks Ruth,

I read https://community.hexagongeospatial.com/t5/M-App-Enterprise-Discussions/Clusters-not-displaying/m-p/... 

but I do not have Lat/Long fields for  geometry x/y in Feature Configuration. I have GEOMETRY field  from Oracle spatial table.

Technical Evangelist
Posts: 871
Registered: ‎11-12-2015

Re: Clusters not displaying , again..

Hi g.sbacchi,

 

In addition to the cluster distance setting, the cluster here requires that lat/long or x/y fields be exposed as attributes in the dataset. These can be added via GeoMedia Desktop application. I suspect you have access to that application as it leads to my next point about the two different geometries here.

 

GeoMedia Desktop uses the two geometry columns for Oracle spatial database. One is native and one is GDO (added by specifically by GeoMedia).

M.App Enterprise (MAE) is designed to work without vendor specific columns and as such it does not read the GDO geometry only the native one. 

 

Specific to the cluster, the default behavior restoration from past versions that didnt require the setting of lat/long or x/y fields was missed in version 2019 Update 3 and is to be included in the next release. In the meantime, you may request via Support Ticket the hotfix version for Analzyer Views to restore this.

 

HTH

Occasional Contributor
Posts: 16
Registered: ‎11-20-2015

Re: Clusters not displaying , again..

Hi sclow ,

I wonder if i can use  a functional attribute for lat/long or x/y fields, using js library.

if so, which library can i use, and how?

an example will be very helpful!

 

Thanks in advance

Technical Evangelist
Posts: 871
Registered: ‎11-12-2015

Re: Clusters not displaying , again..

I suspect you are correct. 

Likley this can be done via JS and Functional Attributes as that is very powerful. That is something I haven't explored since the default behavior was expected in MAE 2019 Update 3. It is now on track for that Update 4. As well, the GeoMedia work around achieves the goal and for those without that option there is the hotfix available.

Staff
Posts: 1,134
Registered: ‎10-18-2015

Re: Clusters not displaying , again..

hi Giorgio,

 

you can use a functional attribute like this to extract X:

 

return turf.centroid(currentRecord["geometry"]).geometry.coordinates[0]

and a similar one for Y:

 

return turf.centroid(currentRecord["geometry"]).geometry.coordinates[1]

HTH,

Stefano

Stefano Turcato
Presale Engineer
Hexagon Geospatial
Occasional Contributor
Posts: 16
Registered: ‎11-20-2015

Re: Clusters not displaying , again..

Hi Stefano, 

thanks for your tips, but  I was unable to solve the problem.

 

my functional attributes  are :

X :               return turf.centroid(currentRecord["geometry"]).geometry.coordinates[0];

Y:                return turf.centroid(currentRecord["geometry"]).geometry.coordinates[1];

coordinate : return turf.getCoord(currentRecord["geometry"]);

 

OUTPUT IN DATA TABLE
ID ▴XYcoordinate
998040TypeError: Cannot read property 'type' of undefinedTypeError: Cannot read property 'type' of undefinedTypeError: turf.getCoord is not a function
998039TypeError: Cannot read property 'type' of undefinedTypeError: Cannot read property 'type' of undefinedTypeError: turf.getCoord is not a function
998038TypeError: Cannot read property 'type' of undefinedTypeError: Cannot read property 'type' of undefinedTypeError: turf.getCoord is not a function

My data source is a Oracle table  cached.

Turf.js  can be used with Oracle geometry ?

whichTurf.js functions are loaded into Feature Analyzer?

 

Grazie, ciao

Giorgio

 

 

Technical Evangelist
Posts: 1,420
Registered: ‎09-11-2015

Re: Clusters not displaying , again..

[ Edited ]

Can you try to put in front of the functional attribute return call this debug code and check the

console.log(JSON.stringify(currentRecord["geometry"]));

Or, you can even add debugger; statement after the console.log() and see the actual content of the currentRecord["geometry"] variable.

 

I think that there may not be the actual geometrical information in that field and you may need to expose the Lat/Lon fields in the database (or via DB view)...

Jan Neumann
Post Sales Engineer Web Applications
Hexagon Geospatial