library(readr)
library(dplyr)
library(magrittr)

source("write_three_d.R")

fields = c("SMOC_ID","OBJ_ID_RUN","OBJ_ID_COL","OBJ_ID_FIELD","OBJ_ID_OBJ","ROWC","COLC","JD_ZERO","RA","DEC","LAMBDA","BETA","PHI","VMU","VMU_ERROR","VNU","VNU_ERROR","VLAMBDA","VBETA","U_MAG","U_ERR","G_MAG","G_ERR","R_MAG","R_ERR","I_MAG","I_ERR","Z_MAG","Z_ERR","A_MAG","A_ERR","V_MAG","B_MAG","IDFLAG","AST_NUMBER","PROV_ID","D_COUNTER","TOTAL_D_COUNT","RA_COMPUTED","DEC_COMPUTED","V_MAG_COMPUTED","R_DIST","G_DIST","PHASE","OSC_CAT_ID","H","G","ARC","EPOCH_OSC","A_OSC","E_OSC","I_OSC","LON_OSC","AP_OSC","M_OSC","PROP_CAT_ID","A_PROP","E_PROP","SIN_I_PROP")
start_i = c(1,8,14,16,21,27,36,45,60,71,82,93,104,116,125,132,140,147,155,163,170,175,181,186,192,197,203,208,214,219,225,230,237,243,245,253,274,277,280,292,303,309,318,326,333,353,360,365,371,385,398,409,420,431,442,454,475,488,499)
end_i = c(7,13,15,20,26,35,44,59,70,81,92,103,115,124,131,139,146,154,162,169,174,180,185,191,196,202,207,213,218,224,229,236,242,244,252,273,276,279,291,302,308,317,325,331,352,359,364,370,384,397,408,419,430,441,452,474,487,498,509)

asteroids.df =
  read_fwf("SDSS_MOC/data/sdssmocadr4.tab", fwf_positions(start_i, end_i, fields)) %>%
  filter(grepl("ASTORB", OSC_CAT_ID) & (A_MAG < 90) & (I_MAG < 90) & (Z_MAG < 90))
  
mini.df = asteroids.df[1:50000, ]

write_three_d(mini.df, "js_to_copy.txt", x="A_OSC", y="E_OSC", z="I_OSC", other_vars = c("A_MAG", "I_MAG", "Z_MAG"))
