Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [C/C++] Interfaccia Utente

    Buona sera a tutti e grazie per il vostro tempo.

    Non so se il titolo sia propriamente corretto e se una volta individuata la/e parola/e chiave/i corretta/e non ci siano già migliaia di post a riguardo, per cui mi scuso per l'eventuale ridondanza. Ora vengo al problema in questione.

    Vi riassumo brevemente la mia posizione tanto da darvi un quadro per indirizzarmi verso la giusta direzione.

    Sono uno studente del politecnico di milano, in ingegneria informatica,sono al terzo anno. Checchè possa sembrare di cultura programmativa ce ne danno poca, pochissima, e tutto quello che so fare è, gran parte merito mio. Non ho problemi a sbattere la testa su un problema per ore e non mi dispiace imparere cose nuove. Da solo ho imparato tutto quello che mi serviva per mettere in pratica la teoria che ci danno e renderla divertente anche per me.

    Il problema in questione è il seguente. Spesso mi sono trovato a realizzare programmi anche un filo complessi, l'ultimo in ordine è un programma di gestione e analisi di grafi.

    Chiaramente tutto va e funziona da console e il programma macina e genera file consultabili dall'utente e usufruibili per vari scopi.

    Quello che volevo fare era il passo aggiuntivo. Infatti la creazione e gestione del grafo è fatto tutto a riga di comando.. cose tipo

    Il vertice i è collegato con il vertice j?
    Quanto pesa il collegamento?

    Tutti dati che l'utente (la prima volta) deve inserirsi e dati che poi restano solo sul foglio di carta che l'utente ha usato per farsi il suo bel grafo. EDIT: intendo dire che il programma si salva il suo bel grafo come matrice e alla riapertura successiva lo reimporta, però se io sto lavorando con un grafo da 20 nodi e perdo il disegno da cui sono partito per creare il programma, il programma sotto questo lato mi aiuta stampando un bel matriciotto, poco utile per la mia mente umana XD

    Quello che dico è che anche solo la funzione : "stampa a video il grafo" è un comando che con le mie capacità attuali risulta una montagna insormontabile e non saprei da che punto cominciare.

    Chiaramente se si riuscisse con non molto (1 mesetto) a gestire il grafo con un interfaccia utente dove lo stesso possa "cliccare" e pesare i nodi tutto con mouse e tastiera e rimappare l'immagine che l'utente vede sul mio programma, sarei più che felice.

    Quindi chiedo a voi, di indicarmi la via. Cercando online ho letto OpenGL da tutte le parti, ma tutte le guide o partono da cose molto complesse o cmq non mi sembrano portino nella mia direzione.

    Sono anche disposto a cambiare linguaggio di programmazione se la cosa risultasse facilitante per il mio scopo. Detto ciò mi rimetto a voi! Grazie della lettura, dei consigli e buona serata

  2. #2
    L'argomento "grafica in C e C++" è stato affrontato diverse volte, cerca GUI C++ e sicuramente trovi diverse discussioni.
    In ogni caso, C e C++ non forniscono di default alcunché per realizzare GUI; ci sono diversi toolkit, di cui alcuni non portabili (ad esempio le API GUI di Windows o la terribile xlib), altri multipiattaforma (in C tipicamente le GTK+, in C++ si usano spesso Qt, wxWidgets, gtk-- e altri ancora) che vengono utilizzati per realizzare programmi grafici (con finestre, pulsanti, textbox, eccetera).
    Le OpenGL sono un'altra questione, servono per realizzare grafica (2D o 3D) ad alte prestazioni, ad esempio per CAD, videogiochi, eccetera. Il target è piuttosto diverso, se con i toolkit citati prima hai i "blocchi" per costruire interfacce grafiche, qui hai funzioni per realizzare grafica ad alte prestazioni.

    Per inciso, per la questione grafi, puoi appoggiarti a graphviz, che nasce esattamente per produrre rappresentazioni grafiche di grafi.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    ...xlib...
    Giusto per precisare xlib è deprecata e per nuovi progetti si consiglia l'uso di XCB...
    Non che consigli l'uso di una di queste due, anzi lo sconsiglio vivamente...
    Esiste un'altra categoria di librerie grafiche: quelle di grafica vettoriale (come Cairo)...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  4. #4
    Originariamente inviato da Scara95
    Giusto per precisare xlib è deprecata e per nuovi progetti si consiglia l'uso di XCB...
    Giustissimo, ma, come dici, bisogna essere matti per iniziare oggi un progetto che usa direttamente xlib/xcb.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Intanto vi volevo ringraziare per la risposta e mi scuso per la mia risposta tardiva, ma ero preso in una bella sessione d'esami xP

    Tralasciando ciò.. quello che mi sembra di capire è che non ci sia bisogno di buttarsi sulle OpenGL ma che basti sfruttare ad esempio le Qt... Avevo provato a scaricare il programma ma mi dava diversi errori di compilazione all'esecuzione xP quindi avevo rinunciato

    Ora proseguirò nella ricerca dato che ho qualche parola chiave e vedo cosa riesco a trovare! Siete stati gentilissimi, grazie mille

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.