Part of this is finding the primitive integer null vectors of an indefinite ternary quadratic form $f(x,y,z).$ Mordell points out that these occur in a finite number of parametrizations. The process you mention, stereographic projection around a rational point, does not do a good job of finding primitive integral solutions. Instead, it immediately finds all rational solutions, with no bound on denominators.


The  Hessian matrix $H$ of an isotropic ternary form has this feature: there is an integer matrix $P$ and an integer $n$ such that
$$ P^T HP = nG \; ,  $$
where $G$ is the Hessian matrix of $g(x,y,z) = y^2 - zx \; . \;$ Indeed, there are infinitely of these. For a fixed $n,$ there are typically several such $P$ if any.

Let's see, the primitive null vectors of $y^2 - zx$ are precisely $(p^2,pq,q^2).$ Applying $P$ to this (as a column vector) gives a null vector for $H,$ and we get some ability to say when this will be primitive. 

I worked this out for isotropic forms of the sort $A(x^2 + y^2 + z^2) - B(yz+zx+xy).$ The number of inequivalent $P$ matrices needed to produce all primitive null vectors can be arbitrarily large. I kept a list somewhere...


The original proof is in Fricke and Klein (1897), where it is mentioned in passing.  Different versions have been published over the years. I eventually wrote down a proof using just matrices, gcd and the like. 

The twelve matrices $P$ needed for
$$ 100(x^2 + y^2 + z^2) -541(yz + zx + xy) =0  $$
This includes something about the order of the (very symmetric) solutions.

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    
     A = 100       B = 541
    
        445   1009    430
        430   -149   -134
       -134   -119    445
    
        478   1003    394
        394   -215   -131
       -131    -47    478
    
        514    985    349
        349   -287   -122
       -122     43    514
    
        529    973    328
        328   -317   -116
       -116     85    529
    
        541    961    310
        310   -341   -110
       -110    121    541
    
        574    913    253
        253   -407    -86
        -86    235    574
    
        580    901    241
        241   -419    -80
        -80    259    580
    
        604    835    184
        184   -467    -47
        -47    373    604
    
        610    811    166
        166   -479    -35
        -35    409    610
    
        616    781    145
        145   -491    -20
        -20    451    616
    
        625    709    100
        100   -509     16
         16    541    625
    
        628    643     64
         64   -515     49
         49    613    628
    
    
       count was  12     end of  A = 100       B = 541
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=