I am using Stata 15.1 to estimate a latent growth curve mode. I have longitudinal data of infant length/height. The infants were supposed to be measured at birth, 1 month, 6 months and 12 months but in reality, the follow up visits occurred when practically possible.
Data example below. SIN is the unique ID. Agemonths is the age in months of the infant when the follow up visits actually occurred and then I have the length/height measurements in cm.

Code:
* Example generated by -dataex-. To install: ssc install dataex
clear
input int SIN double(agemonths0 agemonths1 agemonths6 agemonths12 length0 length1 length6 length12)
 3 .19726027397260273 2.0712328767123287  6.641095890410958  12.23013698630137 51   58   70 73.5
25 .39452054794520547  1.380821917808219  10.84931506849315                  . 51 54.4    .    .
46  .6246575342465753  .9205479452054794  7.035616438356164  17.49041095890411 49 54.4 75.1 79.7
70                  0  1.117808219178082 5.7534246575342465 16.306849315068494 50   53   61 74.5
end

For reference, I have shown the code for my unconstrained model for length below.

My question is – in the SEM framework, is it possible to include the actual time a measurement was taken, in this case the data contained in the agemonths variable instead of constraining the slope factor loadings to 0, 1, 6, and 12?


Code:
    sem (length0 <- Intercept@1 Slope@0)    ///
    (length1 <- Intercept@1 Slope@1 )        ///
    (length6 <- Intercept@1 Slope@6)          ///
    (length12 <- Intercept@1 Slope@12),   ///
    latent(Intercept Slope) ///
    means(Intercept Slope)  noconstant iterate(10) method(mlmv) ///
    cov(e.length0*e.length1) cov(e.length0*e.length6) cov(e.length0*e.length12) cov(e.length6*e.length12)  ///