Remove stupid "show any datum" link, and replace with a link to
show/hide the mesh (drawn as wireframe triangles). [git-p4: depot-paths = "//depot/solvespace/": change = 1754]
This commit is contained in:
parent
502211495b
commit
3c9084b240
@ -116,7 +116,8 @@ void GraphicsWindow::Init(void) {
|
|||||||
showPoints = true;
|
showPoints = true;
|
||||||
showConstraints = true;
|
showConstraints = true;
|
||||||
showHdnLines = false;
|
showHdnLines = false;
|
||||||
showSolids = true;
|
showShaded = true;
|
||||||
|
showMesh = true;
|
||||||
|
|
||||||
solving = SOLVE_ALWAYS;
|
solving = SOLVE_ALWAYS;
|
||||||
|
|
||||||
@ -1108,17 +1109,6 @@ void GraphicsWindow::ToggleBool(int link, DWORD v) {
|
|||||||
SS.TW.Show();
|
SS.TW.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
void GraphicsWindow::ToggleAnyDatumShown(int link, DWORD v) {
|
|
||||||
bool t = !(SS.GW.showWorkplanes && SS.GW.showNormals && SS.GW.showPoints);
|
|
||||||
SS.GW.showWorkplanes = t;
|
|
||||||
SS.GW.showNormals = t;
|
|
||||||
SS.GW.showPoints = t;
|
|
||||||
|
|
||||||
SS.GW.GeneratePerSolving();
|
|
||||||
InvalidateGraphics();
|
|
||||||
SS.TW.Show();
|
|
||||||
}
|
|
||||||
|
|
||||||
Vector GraphicsWindow::VectorFromProjs(double right, double up, double fwd) {
|
Vector GraphicsWindow::VectorFromProjs(double right, double up, double fwd) {
|
||||||
Vector n = projRight.Cross(projUp);
|
Vector n = projRight.Cross(projUp);
|
||||||
Vector r = offset.ScaledBy(-1);
|
Vector r = offset.ScaledBy(-1);
|
||||||
@ -1185,9 +1175,7 @@ void GraphicsWindow::Paint(int w, int h) {
|
|||||||
int i, a;
|
int i, a;
|
||||||
// Draw the groups; this fills the polygons in a drawing group, and
|
// Draw the groups; this fills the polygons in a drawing group, and
|
||||||
// draws the solid mesh.
|
// draws the solid mesh.
|
||||||
if(showSolids) {
|
|
||||||
(SS.GetGroup(activeGroup))->Draw();
|
(SS.GetGroup(activeGroup))->Draw();
|
||||||
}
|
|
||||||
|
|
||||||
// First, draw the entire scene. We don't necessarily want to draw
|
// First, draw the entire scene. We don't necessarily want to draw
|
||||||
// things with normal z-buffering behaviour; e.g. we always want to
|
// things with normal z-buffering behaviour; e.g. we always want to
|
||||||
|
@ -544,11 +544,12 @@ void Group::Draw(void) {
|
|||||||
glMaterialfv(GL_BACK, GL_AMBIENT_AND_DIFFUSE, mpb);
|
glMaterialfv(GL_BACK, GL_AMBIENT_AND_DIFFUSE, mpb);
|
||||||
|
|
||||||
glEnable(GL_LIGHTING);
|
glEnable(GL_LIGHTING);
|
||||||
glxFillMesh(&mesh);
|
if(SS.GW.showShaded) glxFillMesh(&mesh);
|
||||||
glDisable(GL_LIGHTING);
|
glDisable(GL_LIGHTING);
|
||||||
|
|
||||||
glxDebugMesh(&mesh);
|
if(SS.GW.showMesh) glxDebugMesh(&mesh);
|
||||||
|
|
||||||
|
if(!SS.GW.showShaded) return;
|
||||||
if(polyError.yes) {
|
if(polyError.yes) {
|
||||||
glxColor4d(1, 0, 0, 0.2);
|
glxColor4d(1, 0, 0, 0.2);
|
||||||
glLineWidth(10);
|
glLineWidth(10);
|
||||||
|
23
textwin.cpp
23
textwin.cpp
@ -237,32 +237,23 @@ void TextWindow::ShowHeader(void) {
|
|||||||
cd);
|
cd);
|
||||||
}
|
}
|
||||||
|
|
||||||
int datumColor;
|
|
||||||
if(SS.GW.showWorkplanes && SS.GW.showNormals && SS.GW.showPoints) {
|
|
||||||
datumColor = 's'; // shown
|
|
||||||
} else if(!(SS.GW.showWorkplanes || SS.GW.showNormals || SS.GW.showPoints)){
|
|
||||||
datumColor = 'h'; // hidden
|
|
||||||
} else {
|
|
||||||
datumColor = 'm'; // mixed
|
|
||||||
}
|
|
||||||
|
|
||||||
#define hs(b) ((b) ? 's' : 'h')
|
#define hs(b) ((b) ? 's' : 'h')
|
||||||
Printf(false, "%Bt%Ftshow: "
|
Printf(false, "%Bt%Ftshow: "
|
||||||
"%Fp%Ll%D%fworkplanes%E "
|
"%Fp%Ll%D%fwrkpls%E "
|
||||||
"%Fp%Ll%D%fnormals%E "
|
"%Fp%Ll%D%fnormals%E "
|
||||||
"%Fp%Ll%D%fpoints%E "
|
"%Fp%Ll%D%fpoints%E "
|
||||||
"%Fp%Ll%fany-datum%E",
|
"%Fp%Ll%D%fconstraints%E ",
|
||||||
hs(SS.GW.showWorkplanes), (DWORD)&(SS.GW.showWorkplanes), &(SS.GW.ToggleBool),
|
hs(SS.GW.showWorkplanes), (DWORD)&(SS.GW.showWorkplanes), &(SS.GW.ToggleBool),
|
||||||
hs(SS.GW.showNormals), (DWORD)&(SS.GW.showNormals), &(SS.GW.ToggleBool),
|
hs(SS.GW.showNormals), (DWORD)&(SS.GW.showNormals), &(SS.GW.ToggleBool),
|
||||||
hs(SS.GW.showPoints), (DWORD)&(SS.GW.showPoints), &(SS.GW.ToggleBool),
|
hs(SS.GW.showPoints), (DWORD)&(SS.GW.showPoints), &(SS.GW.ToggleBool),
|
||||||
datumColor, &(SS.GW.ToggleAnyDatumShown)
|
hs(SS.GW.showConstraints), (DWORD)(&SS.GW.showConstraints), &(SS.GW.ToggleBool)
|
||||||
);
|
);
|
||||||
Printf(false, "%Bt%Ft "
|
Printf(false, "%Bt%Ft "
|
||||||
"%Fp%Ll%D%fconstraints%E "
|
"%Fp%Ll%D%fshaded%E "
|
||||||
"%Fp%Ll%D%fsolids%E "
|
"%Fp%Ll%D%fmesh%E "
|
||||||
"%Fp%Ll%D%fhidden-lines%E",
|
"%Fp%Ll%D%fhidden-lines%E",
|
||||||
hs(SS.GW.showConstraints), (DWORD)(&SS.GW.showConstraints), &(SS.GW.ToggleBool),
|
hs(SS.GW.showShaded), (DWORD)(&SS.GW.showShaded), &(SS.GW.ToggleBool),
|
||||||
hs(SS.GW.showSolids), (DWORD)(&SS.GW.showSolids), &(SS.GW.ToggleBool),
|
hs(SS.GW.showMesh), (DWORD)(&SS.GW.showMesh), &(SS.GW.ToggleBool),
|
||||||
hs(SS.GW.showHdnLines), (DWORD)(&SS.GW.showHdnLines), &(SS.GW.ToggleBool)
|
hs(SS.GW.showHdnLines), (DWORD)(&SS.GW.showHdnLines), &(SS.GW.ToggleBool)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
4
ui.h
4
ui.h
@ -285,10 +285,10 @@ public:
|
|||||||
bool showPoints;
|
bool showPoints;
|
||||||
bool showConstraints;
|
bool showConstraints;
|
||||||
bool showTextWindow;
|
bool showTextWindow;
|
||||||
bool showSolids;
|
bool showShaded;
|
||||||
|
bool showMesh;
|
||||||
bool showHdnLines;
|
bool showHdnLines;
|
||||||
static void ToggleBool(int link, DWORD v);
|
static void ToggleBool(int link, DWORD v);
|
||||||
static void ToggleAnyDatumShown(int link, DWORD v);
|
|
||||||
|
|
||||||
static const int DONT_SOLVE = 0;
|
static const int DONT_SOLVE = 0;
|
||||||
static const int SOLVE_ALWAYS = 1;
|
static const int SOLVE_ALWAYS = 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user