Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    178

    [C++] VCL - rotazione di una figura

    Salve a tutti
    ho un problema come da titolo, andiamo per gradi...
    utilizzo l'ambiente RAD borland c++ builder 6 e il progetto che sto facendo utilizza una TPaintBox (la domanda vale anche per un oggeto TImage) sulla quale disegno dei punti con il metodo "ellipse" della classe Canvas.

    con lo stesso metodo devo disegnare delle ellissi ma che possono essere ruotate rispetto alle coordinate x e y di default


    fare una semplice rotazione delle coordinate dei due punti che individuano il "rettangolo esterno" all'ellisse credo sia inutile, si va a modificare solo la dimensione del rettangolo (e quindi dell'ellissi) senza ruotarlo...

    ho trovato qualcosa ma non usano la libreria vcl ma la libreria gdi
    link1
    link2
    link3
    link4
    ma sopratutto come faccio a girare l'ellissi per intero?

    qualcuno di voi ha mai usato questa gdi ?

    è possibile ruotare direttamente il sistema di riferimento ? (così poi da disegnare una ellissi tranquillamente con "ellipse") ...


    grazie anticipatamente!!
    ∇•E=ρ/ε ; ∇•B=0 ; ∇xE=-∂B/∂t ; ∇xB=μJ+με∂E/∂t....e ho detto tutto!
    Nessun sistema è sicuro se c'è un idiota a gestirlo!
    Coltiva Linux che Windows si pianta da solo!

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    La libreria GDI+ si può considerare il successore della classica GDI (che è quella su cui si basano generalmente le interfacce convenzionali dei programmi Windows, le cui API sono "wrappate" dalla libreria VCL.

    Per quanto queste librerie forniscano l'accesso "automatico" a funzionalità che dovresti altrimenti determinare a mano, non si tratta dell'unica implementazione esistente per svolgere questo tipo di compito.

    Se fai uso di C++Builder, ti consiglio di valutare se è possibile adottare la libreria Graphics32 (che io uso in Delphi).

    Il sito ufficiale della libreria, OpenSource e gratuita, è il seguente:
    http://www.graphics32.org/

    Vuoi un esempio di cosa si può ottenere? Guarda questo demo.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    178
    il demo fa riferimento ad un programma, è stato per caso creato usando la graphic32?

    nella directory include ho trovato molti file "gdiplus qualcosa", quindi questa libreria è presente mentre non ho trovato "graphic32", scaricata, oltre alla documentazione ufficiale hai qualche documento molto "di base" (sia ita che inglese) ?


    sono un po "scettico" sull'uso di questa graphics32 visto che il progetto lo devo consegnare ad un professore universitario e vorrei evitare "noie"...utilizzando la gdi+ altrimenti come potrei risolvere?


    grazie ancora!
    ∇•E=ρ/ε ; ∇•B=0 ; ∇xE=-∂B/∂t ; ∇xB=μJ+με∂E/∂t....e ho detto tutto!
    Nessun sistema è sicuro se c'è un idiota a gestirlo!
    Coltiva Linux che Windows si pianta da solo!

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da Le0n
    il demo fa riferimento ad un programma, è stato per caso creato usando la graphic32?
    Ovvio, viene indicato anche all'inizio del demo stesso, altrimenti non te lo avrei segnalato.

    Originariamente inviato da Le0n
    nella directory include ho trovato molti file "gdiplus qualcosa", quindi questa libreria è presente mentre non ho trovato "graphic32", scaricata, oltre alla documentazione ufficiale hai qualche documento molto "di base" (sia ita che inglese) ?
    La documentazione è allegata al package scaricato, in formato ZIP, dal sito ufficiale che ti ho segnalato.

    Originariamente inviato da Le0n
    sono un po "scettico" sull'uso di questa graphics32 visto che il progetto lo devo consegnare ad un professore universitario e vorrei evitare "noie"...utilizzando la gdi+ altrimenti come potrei risolvere?
    Presumo che dovresti individuare prima il file header per l'importazione delle funzioni esposte dalla libreria, in seguito leggere la documentazione relativa su MSDN e invocare le funzioni specifiche per il compito che devi svolgere.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Non hai bisogno della GDI+, la GDI è più che sufficiente:

    Drawing Rotated and Skewed Ellipses.

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    178
    grazie ad entrambi

    la documentazione della graphics32 è solo online, non si può consultare offline

    se avete altre novità non esitate a postare


    grazie ancora!
    ∇•E=ρ/ε ; ∇•B=0 ; ∇xE=-∂B/∂t ; ∇xB=μJ+με∂E/∂t....e ho detto tutto!
    Nessun sistema è sicuro se c'è un idiota a gestirlo!
    Coltiva Linux che Windows si pianta da solo!

  7. #7
    la documentazione della graphics32 è solo online, non si può consultare offline
    All'interno del file compresso trovi la documentazione sotto forma di help CHM, apri il file graphics32.chm.

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    178
    Originariamente inviato da pallinopinco
    All'interno del file compresso trovi la documentazione sotto forma di help CHM, apri il file graphics32.chm.
    grazie mille, non lo sapevo che fosse un file di help!
    ∇•E=ρ/ε ; ∇•B=0 ; ∇xE=-∂B/∂t ; ∇xB=μJ+με∂E/∂t....e ho detto tutto!
    Nessun sistema è sicuro se c'è un idiota a gestirlo!
    Coltiva Linux che Windows si pianta da solo!

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    178
    scusate se sono quai ancora a chiedere ma sto provando l'esempio "rotate" con scarso successo...


    allora, io ho copiato la cartella "graphics32" nella cartella "include" del borland (quindi ora ho include->graphics32) e poi ho caricato il progetto "rotate" contenuto in include->graphics32->examples->vcl->general->rotate_Ex ma mi restituisce un errore dicendo che non trova la classe TImage32 (mi sembra di aver visto la sua definizione in G32_Image.pas), come faccio ad "importarla" ?
    ho sbagliato a copiare la cartella graphics32 in include?

    ho visto che i files dell'archivio graphics32 sono quasi tutti dei .pas , come faccio a usarli in un progetto di c++ ?

    vorrei almeno vedere se l'esempio "rotate" può fare al caso mio, così da decidere se usare questa libreria o mantenermi sulla gdi+...


    grazie mille!
    ∇•E=ρ/ε ; ∇•B=0 ; ∇xE=-∂B/∂t ; ∇xB=μJ+με∂E/∂t....e ho detto tutto!
    Nessun sistema è sicuro se c'è un idiota a gestirlo!
    Coltiva Linux che Windows si pianta da solo!

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    178
    sono ancora qua a chiedere, e intanto mi rispondo da solo ad alcune domande da me poste...

    seguendo la documentazione sull'installazione della libreria sono riuscito ad aggiungere il path al "library path" ma per quanto riguarda il passo successivo, il pacchetto non contiene NESSUN file "GR32_DSGN_B5" (sto usando il c++ builder)...
    ho provato con GR32_DSGN_CB5 e _CB6 ma quando faccio "compile" mi restituisce errori sulla licenza del pascal (e chi ce l'ha installato?!? )...

    sono bloccato qua, come devo procedere??
    ∇•E=ρ/ε ; ∇•B=0 ; ∇xE=-∂B/∂t ; ∇xB=μJ+με∂E/∂t....e ho detto tutto!
    Nessun sistema è sicuro se c'è un idiota a gestirlo!
    Coltiva Linux che Windows si pianta da solo!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.