Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-06-2011, 19:33   #1
Hideki-San
Member
 
L'Avatar di Hideki-San
 
Iscritto dal: Mar 2011
Città: Catania
Messaggi: 217
[vb2005] Disegno di funzioni matematiche

Ciao ragazzi. Allora ho un problema.
Devo sviluppare un programma che disegni una funzione del tipo
f(x)= (ax^2+bx+c)/(a2x^2+b2x+c2)

Faccio così:
dc è una variabile che mi indica se il dominio della funziona sia qualunque x(dc=1) oppure se abbia dei punti di discontinuità(dc=0)
s è una variabili che contiene il valore della scala/zoom e può assumere il valore min di 10
xpoint e ypoint sono le coordinate dell'origine degli assi
If dc = 1 Then
xc = -50
y = ((a * xc ^ 2 + b * xc + c) / (a2 * xc ^ 2 + b2 * xc + c2)) * s
For i = xc To 50 Step 1
y2 = ((a * i ^ 2 + b * i + c) / (a2 * i ^ 2 + b2 * i + c2)) * s
e.Graphics.DrawLine(Pens.Blue, xpoint + xc * s, ypoint - y, xpoint + i * s, ypoint - y2)
xc = i
y = y2
Next
End If
If dc = 0 Then
dom1 = dom * s
dom3 = dom2 * s
If dom1 > dom3 Then
temp = dom3
dom3 = dom1
dom1 = temp
End If
e.Graphics.DrawLine(Pens.Red, xpoint + dom1, 0, xpoint + dom1, 700)
e.Graphics.DrawLine(Pens.Red, xpoint + dom3, 0, xpoint + dom3, 700)
dom1 = (dom + 0.1) * s
dom3 = (dom2 + 0.1) * s
If dom1 > dom3 Then
temp = dom3
dom3 = dom1
dom1 = temp
End If
xc = 100
y = ((a * (xc) ^ 2 + b * (xc) + c) / (a2 * (xc) ^ 2 + b2 * (xc) + c2)) * s
For i = xc To dom3 Step -1
y2 = ((a * i ^ 2 + b * i + c) / (a2 * i ^ 2 + b2 * i + c2)) * s
e.Graphics.DrawLine(Pens.Blue, xpoint + xc * s, ypoint - y, xpoint + i * s, ypoint - y2)
xc = i
y = y2
Next
xc = dom1
y = ((a * (xc) ^ 2 + b * (xc) + c) / (a2 * (xc) ^ 2 + b2 * (xc) + c2)) * s
For i = xc To -150 Step -1
y2 = ((a * i ^ 2 + b * i + c) / (a2 * i ^ 2 + b2 * i + c2)) * s
e.Graphics.DrawLine(Pens.Blue, xpoint + xc * s, ypoint - y, xpoint + i * s, ypoint - y2)
xc = i
y = y2
Next
xc = dom1
y = ((a * (xc) ^ 2 + b * (xc) + c) / (a2 * (xc) ^ 2 + b2 * (xc) + c2)) * s
For i = xc To (dom3) Step 1
y2 = ((a * i ^ 2 + b * i + c) / (a2 * i ^ 2 + b2 * i + c2)) * s
e.Graphics.DrawLine(Pens.Blue, xpoint + xc * s, ypoint - y, xpoint + i * s, ypoint - y2)
xc = i
y = y2
Next
End If


Ho alcuni problemi nel fatto che non funziona sempre xD cioè con alcuni valori che inserisco il disegno va, in altri mi da overflow. Poi vorrei sapere qual è il metodo per poter disegnare la funzione mettendo lo step del 'for' non intero tipo 0.1, perchè così il disegno mi viene incompleto e se metto meno di 1 il programma non funge.
Grz in anticipo
__________________
Cpu: AMD FX-8350@ 4.2Ghz |Ram: Kit 2x2 Gb DDR3 1333Mhz + 1x4Gb 1600Mhz Corsairs XMS3| Mobo: Asus M5A97 Evo r2.0 |Vga: G1 Gaming GTX 970 4GB |HDD: Maxtor 250Gb 7200rpm + SSD: SanDisk Ultra II 240Gb|Alimentatore : Cooler Master GX650W |S.o: Win 10 Pro 64 bit|Case: HAF XB EVO| Cooler: Artic cooling freezer extreme v2

Ultima modifica di Hideki-San : 07-06-2011 alle 19:42.
Hideki-San è offline   Rispondi citando il messaggio o parte di esso
Old 07-06-2011, 21:50   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Anzitutto un paio di considerazioni :

1. Un qualsiasi processo finalizzato al disegno di una Funzione matematica dovrebbe prevedere la separazione della parte destinata al calcolo dei punti chiave, dalla parte destinata alla rappresentazione grafica degli stessi.
Nel tuo codice mi pare di leggere che queste due parti sono "fuse" in un unico flusso...

2. I punti non calcolabili, vanno intercettati e gestiti nella prima parte.

C'è un mio articolo su altro Forum che penso potrai trovare interessante :

http://forum.masterdrive.it/visual-b...grafici-51874/

__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2011, 09:13   #3
Hideki-San
Member
 
L'Avatar di Hideki-San
 
Iscritto dal: Mar 2011
Città: Catania
Messaggi: 217
Grazie per la risposta leggere il tuo articolo è stato molto interessante, anche se essendo al 4^ anno dell'itis non conosco alcune delle cose che hai utilizzato nel codice, ho capito cosa fanno, e sono riuscito a finire il programma Grazie mille!!!

Ti posto il link dell'eseguibile così gli dai un'occhiata se ti va
http://www.megaupload.com/?d=2WE8TLO7

Ancora devo completare qualcosa per i risultati, ma la parte grafica è completa. Ha un piccolo difettuccio per via dell'effetto grafico della comparsa del grafico, che a volte appesantisce la cpu e rallenta la visualizzazione xD
__________________
Cpu: AMD FX-8350@ 4.2Ghz |Ram: Kit 2x2 Gb DDR3 1333Mhz + 1x4Gb 1600Mhz Corsairs XMS3| Mobo: Asus M5A97 Evo r2.0 |Vga: G1 Gaming GTX 970 4GB |HDD: Maxtor 250Gb 7200rpm + SSD: SanDisk Ultra II 240Gb|Alimentatore : Cooler Master GX650W |S.o: Win 10 Pro 64 bit|Case: HAF XB EVO| Cooler: Artic cooling freezer extreme v2

Ultima modifica di Hideki-San : 08-06-2011 alle 14:12.
Hideki-San è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
Blue Origin potrebbe realizzare il lande...
Artemis II: il prossimo Wet Dress Rehear...
Il nuovo HONOR 600 sta arrivando e avr&a...
La crisi delle memorie non coinvolger&ag...
Windows domina su Steam, ma molti utenti...
Per non incorrere in nuovi aumenti delle...
Cubi Z AI 8M visto da vicino, un mini-PC...
Datacenter nello Spazio, affascinante ma...
Social e minori, Butti apre al dibattito...
Tutte le offerte Amazon del weekend, sol...
Amazon spinge sull'usato garantito: 10% ...
TikTok rischia una maxi-multa in Europa:...
Bose su Amazon: QuietComfort SC over ear...
Scope elettriche super accessoriate in o...
Umidità e muffa addio: questo deu...
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: 18:06.


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