Caspita... che tatto sublime!
Per rispondere all'ultima domanda: la questione non è così banale.
"Una volta" l'approccio era disegnare direttamente sulla memoria della scheda video, accendendo i pixel uno per uno.
In questo caso se vuoi tracciare una linea devi scriverti la funzione, in C, C++ o quello che vuoi, che poi diventerà linguaggio macchina (o direttamente in linguaggio macchina) che date tipicamente due coordinate (inizio e fine) "lavora" disegnando i pixel.
Se vuoi ho di tutto e di più sull'argomento video grafica, ma è un mondo ormai scomparso.
---
Il passo successivo è utilizzare un sistema operativo che mette a disposizione delle chiamate API più o meno evolute per disegnare sullo schermo.
Le quali a loro volta possono appoggiarsi, in modo trasparente, a un driver che utilizza primitive di un eventuale coprocessore grafico, o magari dell'80x87.
Aumentando l'astrazione ci sono librerie più o meno portabili con le quali dai comandi del genere "traccia una linea da qui a lì" senza preoccuparti troppo di come cioè avviene.
Nulla ti vieta di usare librerie C, C++, Java o quello che vuoi.
Insomma si tratta di "comodità": da lavoro sporco (e difficile), fino a banale e a livello di un principiante.