Subscribe to this thread
Home - General / All posts - GUI projection behaviour & GeomCenterInner behaviour
lionel

800 post(s)
#10-Oct-21 12:43

I follow the tutorial Example: Add a Second Computed Geom Field to a Table (manifold.net)

I used the world file below where I kept only 6 countries ( 6 names in invoices ) . I deleted all the islands except for England where I used

the new union menu to have 2 area/geom in one geom . I added a column Name (nvarchar) and LatLong (Geom) and Center (Geom).

LatLong is created using transform Center. The column Center is used using Schema Computed Field.

A) Why are the points all at the bottom and not inside the 6 countries?

Is there a problem with the projection management? By default the world file is in Lat/Long.so select this coordinate in each step !.

I solved the problem by copying and pasting in the mfd_meta table from the value associated to the Property column linked to the original World file (FieldCoordSystem.xxx ).

The projection is not in a Drawing but store once in the attach table ( property) because FieldGeomType.Geom for uk appear for each [Geom].

For center2 projection

{ "Base": "World Geodetic 1984 (WGS84)", "Eccentricity": 0.08181919084262149, "LocalScaleX": 0.0001, "LocalScaleY": 0.0001, "MajorAxis": 6378137, "Name": "Latitude \/ Longitude", "System": "Latitude \/ Longitude", "Unit": "Degree" }

as to be copy paste to

{ "Name": "WGS 84 \/ Pseudo-Mercator (EPSG:3857)", "System": "Pseudo Mercator", "CenterLat": 0, "CenterLon": 0, "Axes": "XY", "Base": "WGS 84 (EPSG:4326)", "MajorAxis": 6378137, "Eccentricity": 0.08181919084262149, "Unit": "Meter", "UnitScale": 1, "UnitShort": "m" }

B) by testing UK composed of 2 areas or only one. The function GeomMakePoint(GeomCenterInner([Geom], 0)) works only on 1 area (logic would want it to be the one where the area has the largest surface, and it is the case after changing the size of Ireland).

from Geom SQL Functions (manifold.net) ( google search Form inside manifold don't find it )

GeomCenterInner(<geom>, <tolerance>) : <valuex2>

Given a geom returns a float64x2 value that specifies the location of the center of the""" minimum enclosing circle for areas ???""", with the location adjusted so that it falls within the area object. NULL is returned for lines and points. A tolerance of zero means automatic tolerance.

Attachments:
2areainGeom_Inner.png
OneCenterInner_same_for-without-Union.png
point_above_UK_projectionBehaviour.png
step_with-projectionsChoice.png
unionPRojection.map


union, doc , APIand most important deepl & keyboard shortcut

lionel

800 post(s)
#10-Oct-21 13:11

The question is does the inner center of A and AB is the same in this case ?

Center and Centroids (manifold.net)

NotaBene : The invoices table in the map file is the table is find ( raster file ) in COLLECT (manifold.net) after this post new tutorial topic on group by, collect (georeference.org) . Where Does this table ( SQL cvs ..file come From ? ) .

Attachments:
uk_irland_circle.jpg


union, doc , APIand most important deepl & keyboard shortcut

lionel

800 post(s)
#10-Oct-21 13:56

what mean """ minimum enclosing circle for areas ???""" when use 1 geom with 2 area ?

The center ( GeomCenter(..) ) blue ( England + irland= UK ) is not the center red of UK

This was the case by using GeomCenterInner(..)

What is the difference beetween GeomCenter and GeomCenterInner ?

Attachments:
Centerinner_notCenterCircle.png
unionPRojection.map


union, doc , APIand most important deepl & keyboard shortcut

Dimitri


6,803 post(s)
#10-Oct-21 16:04

What is the difference beetween GeomCenter and GeomCenterInner ?

See the Center and Centroids topic.

Manifold User Community Use Agreement Copyright (C) 2007-2021 Manifold Software Limited. All rights reserved.