878
878
fdrawline(rect.xmin+w3, yofs+h*240.0f/255.0f, rect.xmax+1, yofs+h*240.0f/255.0f);
880
880
/* 7.5 IRE black point level for NTSC */
881
if (scopes->wavefrm_mode== SCOPES_WAVEFRM_LUM)
881
if (scopes->wavefrm_mode== SCOPES_WAVEFRM_LUMA)
882
882
fdrawline(rect.xmin, yofs+h*0.075f, rect.xmax+1, yofs+h*0.075f);
884
/* LUMA (1 channel) */
885
glBlendFunc(GL_ONE,GL_ONE);
886
glColor3f(alpha, alpha, alpha);
887
if (scopes->wavefrm_mode == SCOPES_WAVEFRM_LUM){
889
glBlendFunc(GL_ONE,GL_ONE);
892
glEnableClientState(GL_VERTEX_ARRAY);
894
glTranslatef(rect.xmin, yofs, 0.f);
896
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_1);
897
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
899
glDisableClientState(GL_VERTEX_ARRAY);
903
glColor3f(.5f, .5f, .5f);
904
min= yofs+scopes->minmax[0][0]*h;
905
max= yofs+scopes->minmax[0][1]*h;
906
CLAMP(min, rect.ymin, rect.ymax);
907
CLAMP(max, rect.ymin, rect.ymax);
908
fdrawline(rect.xmax-3,min,rect.xmax-3,max);
911
/* RGB / YCC (3 channels) */
912
else if (ELEM4(scopes->wavefrm_mode, SCOPES_WAVEFRM_RGB, SCOPES_WAVEFRM_YCC_601, SCOPES_WAVEFRM_YCC_709, SCOPES_WAVEFRM_YCC_JPEG)) {
913
int rgb = (scopes->wavefrm_mode == SCOPES_WAVEFRM_RGB);
915
glBlendFunc(GL_ONE,GL_ONE);
918
glEnableClientState(GL_VERTEX_ARRAY);
920
glTranslatef(rect.xmin, yofs, 0.f);
921
glScalef(w3, h, 0.f);
923
glColor3fv((rgb)?colors_alpha[0]:colorsycc_alpha[0]);
924
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_1);
925
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
927
glTranslatef(1.f, 0.f, 0.f);
928
glColor3fv((rgb)?colors_alpha[1]:colorsycc_alpha[1]);
929
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_2);
930
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
932
glTranslatef(1.f, 0.f, 0.f);
933
glColor3fv((rgb)?colors_alpha[2]:colorsycc_alpha[2]);
934
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_3);
935
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
937
glDisableClientState(GL_VERTEX_ARRAY);
942
for (c=0; c<3; c++) {
943
if (scopes->wavefrm_mode == SCOPES_WAVEFRM_RGB)
944
glColor3f(colors[c][0]*0.75, colors[c][1]*0.75, colors[c][2]*0.75);
946
glColor3f(colorsycc[c][0]*0.75, colorsycc[c][1]*0.75, colorsycc[c][2]*0.75);
947
min= yofs+scopes->minmax[c][0]*h;
948
max= yofs+scopes->minmax[c][1]*h;
884
if (scopes->ok && scopes->waveform_1 != NULL) {
886
/* LUMA (1 channel) */
887
glBlendFunc(GL_ONE,GL_ONE);
888
glColor3f(alpha, alpha, alpha);
889
if (scopes->wavefrm_mode == SCOPES_WAVEFRM_LUMA){
891
glBlendFunc(GL_ONE,GL_ONE);
894
glEnableClientState(GL_VERTEX_ARRAY);
896
glTranslatef(rect.xmin, yofs, 0.f);
898
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_1);
899
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
901
glDisableClientState(GL_VERTEX_ARRAY);
905
glColor3f(.5f, .5f, .5f);
906
min= yofs+scopes->minmax[0][0]*h;
907
max= yofs+scopes->minmax[0][1]*h;
949
908
CLAMP(min, rect.ymin, rect.ymax);
950
909
CLAMP(max, rect.ymin, rect.ymax);
951
fdrawline(rect.xmin+w+2+c*2,min,rect.xmin+w+2+c*2,max);
910
fdrawline(rect.xmax-3,min,rect.xmax-3,max);
913
/* RGB / YCC (3 channels) */
914
else if (ELEM4(scopes->wavefrm_mode, SCOPES_WAVEFRM_RGB, SCOPES_WAVEFRM_YCC_601, SCOPES_WAVEFRM_YCC_709, SCOPES_WAVEFRM_YCC_JPEG)) {
915
int rgb = (scopes->wavefrm_mode == SCOPES_WAVEFRM_RGB);
917
glBlendFunc(GL_ONE,GL_ONE);
920
glEnableClientState(GL_VERTEX_ARRAY);
922
glTranslatef(rect.xmin, yofs, 0.f);
923
glScalef(w3, h, 0.f);
925
glColor3fv((rgb)?colors_alpha[0]:colorsycc_alpha[0]);
926
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_1);
927
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
929
glTranslatef(1.f, 0.f, 0.f);
930
glColor3fv((rgb)?colors_alpha[1]:colorsycc_alpha[1]);
931
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_2);
932
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
934
glTranslatef(1.f, 0.f, 0.f);
935
glColor3fv((rgb)?colors_alpha[2]:colorsycc_alpha[2]);
936
glVertexPointer(2, GL_FLOAT, 0, scopes->waveform_3);
937
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
939
glDisableClientState(GL_VERTEX_ARRAY);
944
for (c=0; c<3; c++) {
945
if (scopes->wavefrm_mode == SCOPES_WAVEFRM_RGB)
946
glColor3f(colors[c][0]*0.75, colors[c][1]*0.75, colors[c][2]*0.75);
948
glColor3f(colorsycc[c][0]*0.75, colorsycc[c][1]*0.75, colorsycc[c][2]*0.75);
949
min= yofs+scopes->minmax[c][0]*h;
950
max= yofs+scopes->minmax[c][1]*h;
951
CLAMP(min, rect.ymin, rect.ymax);
952
CLAMP(max, rect.ymin, rect.ymax);
953
fdrawline(rect.xmin+w+2+c*2,min,rect.xmin+w+2+c*2,max);
955
959
/* outline, scale gripper */
1079
1081
for(i=0; i<6; i++)
1080
1082
vectorscope_draw_target(centerx, centery, diam, colors[i][0], colors[i][1], colors[i][2]);
1082
/* pixel point cloud */
1083
glBlendFunc(GL_ONE,GL_ONE);
1084
glColor4f(alpha, alpha, alpha, alpha);
1087
glEnableClientState(GL_VERTEX_ARRAY);
1089
glTranslatef(centerx, centery, 0.f);
1090
glScalef(diam, diam, 0.f);
1091
glVertexPointer(2, GL_FLOAT, 0, scopes->vecscope);
1092
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
1094
glDisableClientState(GL_VERTEX_ARRAY);
1084
if (scopes->ok && scopes->vecscope != NULL) {
1085
/* pixel point cloud */
1086
glBlendFunc(GL_ONE,GL_ONE);
1087
glColor3f(alpha, alpha, alpha);
1090
glEnableClientState(GL_VERTEX_ARRAY);
1092
glTranslatef(centerx, centery, 0.f);
1093
glScalef(diam, diam, 0.f);
1095
glVertexPointer(2, GL_FLOAT, 0, scopes->vecscope);
1096
glDrawArrays(GL_POINTS, 0, scopes->waveform_tot);
1098
glDisableClientState(GL_VERTEX_ARRAY);
1097
1102
/* outline, scale gripper */
1098
1103
draw_scope_end(&rect, scissor);