[Gfoss] Un problema interessante

NOn sono sicuro di aver compreso il problema in ogni suo aspetto.

Io pero' proverei cosi'.

La prima domanda che mi porrei è capire se i punti-quotati sono sulla
medesima proiezione planare della linea di contorno
del poligono3D.

Credo che gli attuali sistemi (come spatialite 4.0) consentano di fare
intersezioni sul piano, ma se sono oggetti in quota esrpimono anche la
quota di contatto per cui dovresti riuscire a farlo.

creare una linea ideale verticale tra il punto quotato e la libea a
quota zero con stesse coordinate x,y.

G1 = MakeLine(MakePointZ(x1 y1 z1), MakePointZ(x1 y1 0));

Intersechi con il contorno del poligono ricavando con la Intersection
le coordinate del punto di intersezione
e a quel punto fai la differenza di quota.

G2 = Intersection(G1, ExteriorRing(PolygonZ));

se ti va bene ottieni un punto se ti va male ottieni un NULL.

Poi una volta ottenuto il punto di intersezione G2,
basta fare la differenza di quota tra i due punti.

Prova cosi' e vedi quanti punti riesci a risolvere.

Infatti il problema è che a causa delle approssimazioni
dell'aritmetica finita, il punto quotato potrebbe non essere sulla
planare del confine.
Se fosse cosi' allora avresti troppi null e non arriveresti allo scopo.

--
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------

On Thu, 20 Dec 2012 20:37:44 +0100
Andrea Peri <aperi2007@gmail.com> wrote:

NOn sono sicuro di aver compreso il problema in ogni suo aspetto.

Io pero' proverei cosi'.

La prima domanda che mi porrei è capire se i punti-quotati sono sulla
medesima proiezione planare della linea di contorno
del poligono3D.
.......
......... il punto quotato potrebbe non essere sulla
planare del confine.
Se fosse cosi' allora avresti troppi null e non arriveresti allo scopo.

penso sia questo il problema principale perchè se i punti fossero
allineati con i lati del contorno basta interpolare, come
effettivamente fai, ma chissà perchè, mi sono immaginato dei poligoni
forniti da qualche database ed una serie di punti rilevati in campagna:
l'allineamento non è scontato :frowning:

problema risolvibile mediante codice ad hoc, ma purtroppo non conosco
abbastanza bene il codice disponibile per dire se c'è già qualcosa :-((

-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------

ciao,
giuliano

Il 20/12/2012 22:54, giuliano su Tiscali ha scritto:

problema risolvibile mediante codice ad hoc, ma purtroppo non conosco
abbastanza bene il codice disponibile per dire se c'è già qualcosa :-((

si', certo, volevo vedere se era possibile risolverlo con comandi standard.
saluti, e grazie.

--
Paolo Cavallini - Faunalia
www.faunalia.eu
Full contact details at www.faunalia.eu/pc
Nuovi corsi QGIS e PostGIS: http://www.faunalia.it/calendario