Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Google ha appena rinnovato la sua celebre serie A con il Pixel 10a, lo smartphone della serie più conveniente se consideriamo il rapporto tra costo e prestazioni. Con il chip Tensor G4, un design raffinato soprattutto sul retro e l'integrazione profonda di Gemini, il colosso di Mountain View promette un'esperienza premium a un prezzo accessibile. E il retro non ha nessuno scalino
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
Al MWC Qualcomm annuncia una coalizione industriale per lanciare il 6G entro il 2029 e introduce agenti IA per la gestione autonoma della RAN. Ericsson, presente sul palco, conferma la direzione: le reti del futuro saranno IA-native fin dalla progettazione
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air è un ultraleggero da 1 kg con Ryzen 5 6600H, display 14" 16:10 e 16 GB LPDDR5. Offre buona portabilità, autonomia discreta e costruzione in alluminio, ma storage PCIe 3.0 e RAM saldata limitano l'espandibilità. A 549 euro sfida brand più noti nella stessa fascia di mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-05-2008, 19:01   #1
ArchangelInHell
Member
 
Iscritto dal: Nov 2007
Messaggi: 36
[C]Consigli su programmino in C su problema geometrico

Buonasera a tutti!Volevo sapere se potete darmi qualche consiglio(meglio se prima possibile)su questo problema che il mio professore mi ha detto di fare.
Allora..il problema è..data una griglia(considerata come una matrice di poligoni)geografica data con coordinate LAT e LON(latitudine e longitudine)di tipo float e rispettivamente di dimensioni 300x200,assegnato in modo random un punto trovare in quale poligono si trova il punto.Il punto campione lo assegniamo noi.Inoltre ci ha consigliato di considerare sia LAT che LON come matrici nei quali inserire rispettivamente le coordinate x e y.
Quindi il problema è testare tutti i poligoni che formano la griglia e dire quindi in quale poligono è il punto.Già di base possiamo sfruttare un algoritmo che serve per vedere se un punto è in un poligono e ve lo posto:
Codice:
// cn_PnPoly(): crossing number test for a point in a polygon
//      Input:   P = a point,
//               V[] = vertex points of a polygon V[n+1] with V[n]=V[0]
//      Return:  0 = outside, 1 = inside
// This code is patterned after [Franklin, 2000]
int
cn_PnPoly( Point P, Point* V, int n )
{
    int    cn = 0;    // the crossing number counter

    // loop through all edges of the polygon
    for (int i=0; i<n; i++) {    // edge from V[i] to V[i+1]
       if (((V[i].y <= P.y) && (V[i+1].y > P.y))    // an upward crossing
        || ((V[i].y > P.y) && (V[i+1].y <= P.y))) { // a downward crossing
            // compute the actual edge-ray intersect x-coordinate
            float vt = (float)(P.y - V[i].y) / (V[i+1].y - V[i].y);
            if (P.x < V[i].x + vt * (V[i+1].x - V[i].x)) // P.x < intersect
                ++cn;   // a valid crossing of y=P.y right of P.x
        }
    }
    return (cn&1);    // 0 if even (out), and 1 if odd (in)

}
Inoltre,oltre a definire il punto come una struttura e a definire le matrici LAT e LON,molto gentilmente un amico del mio gruppo mi ha consigliato un modo per passare la matrice sempre nel verso positivo e non considerare numeri molto alti in questo modo:

Codice:
#include <stdio.h>

#define N 10
#define M 10

typedef struct {float x,y;}Point;

int main(int argc,char* argv[])
{
 flat lat[M][N];
 flat lon[M][N];
 flat latoff=0.0;
 flat lonoff=0.0;

 for (int i=0;i<M;i++)
 {
  for(int j=0;j<N;j++)
  {
   if(i != 0)
   {
    latoff=lat[i-1][j]
   }
   lat[i][j]=latoff+random()%5;
   lon[i][j]=lonoff+random()%5;
   lonoff=lon[i][j];
  }
  lonoff=0;
 }
}
Ora l'unico problema è che dovrei definire i vertici dei poligoni,mi potete dare qualche consiglio?

Ultima modifica di ArchangelInHell : 21-05-2008 alle 19:35. Motivo: Codice
ArchangelInHell è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2008, 19:16   #2
wizard_at
Senior Member
 
L'Avatar di wizard_at
 
Iscritto dal: Jul 2006
Città: MILANO
Messaggi: 1645
ciao.
ti consiglio di mettere il codice tra CODE.
[code].....[\CODE] (con la sbarra nell'altro senso)
__________________
xoooxoooxooox
wizard_at è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2008, 09:06   #3
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da ArchangelInHell Guarda i messaggi
Ora l'unico problema è che dovrei definire i vertici dei poligoni,mi potete dare qualche consiglio?
Definirei un Poligono come un Vector di puntatori a struttura Punto [ordinati in senso antiorario]
banryu79 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso CHUWI CoreBook Air alla prova: design premium, b...
Roborock Saros 20: il robot preciso e molto sottile Roborock Saros 20: il robot preciso e molto sott...
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Fra 3 giorni, a mezzanotte, Amazon attiv...
Il principale limite del MacBook Neo &eg...
899€ in tutti i colori, crolla il prezzo...
Sempre più pubblicità su Y...
Costo della memoria alle stelle? Non ave...
GPT-5.4 cambia il modo di usare ChatGPT:...
Centinaia di petabyte in una molecola: l...
Lenovo al MWC 2026: dal PC modulare all'...
Huawei presenta gli agenti di IA per le ...
Alla scoperta di GAIA, la piattaforma IA...
Crimson Desert alla ricerca dell'equilib...
Ray-Ban Meta, video privati visionati da...
Epic Games fa causa a un ex collaborator...
BYD Blade Battery di seconda generazione...
Pop Mart vs Bambu Lab: la battaglia lega...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:31.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v