Splitting polygons

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Splitting polygons

pcav
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Salve.
Mi hanno sottoposto un problema interessante: data una serie di poligoni regolari
(rettangoli), ed un attributo (N, integer), come suddividere ogni poligono in N parti
uguali, lungo l'asse maggiore? Si possono inventare un po' di strategie arzigogolate,
ma ho il sospetto che ci possa essere un metodo semplice, che mi sfugge.
Saluti, e buona giornata.
- --
Paolo Cavallini - www.faunalia.eu
Corsi QGIS e PostGIS: http://www.faunalia.eu/training.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Using GnuPG with Icedove - http://www.enigmail.net/

iEYEARECAAYFAlMisj8ACgkQ/NedwLUzIr6zrgCaA7MjcIFHIODcFFaPL7bZvYvm
4UgAoKN6Fji6aDUS6YZmiwYJvqasU7Uq
=vooT
-----END PGP SIGNATURE-----
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Splitting polygons

emigrato
Di un problema analogo parlammo anche qui, e finora non c'è soluzione...

:(
Reply | Threaded
Open this post in threaded view
|

Re: Splitting polygons

Giuliano Curti
In reply to this post by pcav
Il giorno Fri, 14 Mar 2014 08:39:43 +0100
Paolo Cavallini <[hidden email]> ha scritto:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Salve.

ciao,


> Mi hanno sottoposto un problema interessante: data una serie di
> poligoni regolari (rettangoli), ed un attributo (N, integer), come
> suddividere ogni poligono in N parti uguali,.....

non so se ho capito bene: dividere un rettangolo (immagino comunque
orientato nello piano) in strisce ortogonali al

> ....  lungo l'asse maggiore?

effettivamente il più lungo, indipendentemente dall'orientamento?


> Si possono inventare un po' di strategie arzigogolate, .....

ci provo :-)

a) individuazione del lato più lungo (in un rettangolo basta confrontare
i primi due: P2-P1 e P3-P2)

b) interpolazione di N-1 punti lungo il lato più lungo e sull'omologo
(P1+(k/N)*(P2-P1) e P4+(k/N)*(P3-P4) ovvero P2+(k/N)*(P3-P2) e
P1+(k/N)*(P4-P1) per 1<=k<=N; i settori stanno fra k-1 e k);

spero di aver capito bene (anche se la condizione non è sufficiente a
garantire l'assenza di cavolate nella proposta) :-)


> Saluti, e buona giornata.
> - --
> Paolo Cavallini - www.faunalia.eu

ciao,
giuliano

_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Splitting polygons

Sandro Santilli
On Fri, Mar 14, 2014 at 12:43:28PM +0100, giulianc51 wrote:

> a) individuazione del lato più lungo (in un rettangolo basta confrontare
> i primi due: P2-P1 e P3-P2)
>
> b) interpolazione di N-1 punti lungo il lato più lungo e sull'omologo
> (P1+(k/N)*(P2-P1) e P4+(k/N)*(P3-P4) ovvero P2+(k/N)*(P3-P2) e
> P1+(k/N)*(P4-P1) per 1<=k<=N; i settori stanno fra k-1 e k);

La (b) la farei a colpi di ST_OffsetCurve passando il lato corto
come primo argomento e x*(distanza_massima/N) come secondo
argomento, dove x va da 1 a N-1 e cambiando segno se ci si accorge che
si sta andando dalla parte sbagliata ;).

--strk;

 ()  ASCII ribbon campaign  --  Keep it simple !
 /\  http://strk.keybit.net/rants/ascii_mails.txt 
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Splitting polygons

Giuliano Curti
In reply to this post by emigrato
Il giorno Fri, 14 Mar 2014 02:19:02 -0700 (PDT)
emigrato <[hidden email]> ha scritto:

ciao Novarese (o ti devo chiamare "Creativo" visto le molteplici tue
identità? :-)


> Di un problema analogo parlammo anche  qui
> <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/split-poligono-tp7584909.html>
> , e finora non c'è soluzione...
>
> :(

no, non mi sembra lo stesso problema;

quello di Marco (tuo link) non è che non ha soluzioni, non ha
soluzione univoca, come nota Paolo nel suo commento;

il problema di Paolo su questa lista invece sì, sempre ovviamente che
io abbia capito bene :-)

ciao,
giuliano

_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013
Reply | Threaded
Open this post in threaded view
|

Re: Splitting polygons

Andrea Peri
Vi è anche il problema che nell'aritmetica dei computers non si riesce a
esprimere un numero reale qualsiasi.

Mettendo da parte il come fare a trovarla.
Vi è comunque il problema che la regola richiesta:

La somma delle aree dei poligoni contenuti (tutti con area uguale) deve
essere pari all'area del poligono risultante.

Non sempre è possibile nell'aritmetica dei computers.

Pensa a un poligono che abbia area 0.1.
Ovvero un  numero non esprimibile in aritmetica binaria.

A parer mio non è possibile trovare un numero finito di poligoni aventi
area esprimibile in aritmetica binaria e la cui somma dia l'area di
partenza (che in binario non è esprimibile)

Per cui la risposta è che come regola generale : con i computers non è
possibile ottenere cio' che chiede Paolo.
Poi in casi particolari , ovvero quando l'area di un poligono assume
valori particolari puo' anche essere possibile trovare questi N
sotto-poligoni.


A.

On 15/03/2014 00:20, giulianc51 wrote:

> Il giorno Fri, 14 Mar 2014 02:19:02 -0700 (PDT)
> emigrato <[hidden email]> ha scritto:
>
> ciao Novarese (o ti devo chiamare "Creativo" visto le molteplici tue
> identità? :-)
>
>
>> Di un problema analogo parlammo anche  qui
>> <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/split-poligono-tp7584909.html>
>> , e finora non c'è soluzione...
>>
>> :(
> no, non mi sembra lo stesso problema;
>
> quello di Marco (tuo link) non è che non ha soluzioni, non ha
> soluzione univoca, come nota Paolo nel suo commento;
>
> il problema di Paolo su questa lista invece sì, sempre ovviamente che
> io abbia capito bene :-)
>
> ciao,
> giuliano
>
> _______________________________________________
> [hidden email]
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
> 666 iscritti al 22.7.2013

_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013